2017八一女篮队员名单:WPF几何绘图之概述

来源:百度文库 编辑:中财网 时间:2024/05/08 16:43:16
WPF几何绘图之概述
2009-02-25 17:19 1433人阅读评论(0)举报
首先,我们为什么要使用WPF绘图
WPF 提供高级绘图和动画功能,以前只能从专用库(具体来说,就是 Microsoft Windows 图形设备接口 (GDI) 和 Microsoft Windows GDI+)使用这些功能。现在,WPF 提供对多媒体、向量图形、动画和内容撰写的集成支持,使得开发人员可以轻松地生成悦目的用户界面和内容。使用 Microsoft Visual Studio .NET 或者甚至文本编辑器(如 Microsoft Visual Studio .NET),可以创建矢量图形或复杂的动画并将媒体集成到应用程序中。
WPF几何绘图主要使用的是geometry。
msdn上的定义为:从此抽象基类派生的类定义几何形状。Geometry 对象可用于剪裁和呈现二维图形数据以及对其进行点击测试。
命名空间:  System.Windows.Media
程序集:  PresentationCore(在 PresentationCore.dll 中)
正如定义上所说geometry是基类,抽象基类,我们绘图时一般使用它的派生类。例如: EllipseGeometry、PathGeometry 和 CombinedGeometry
关于理论我们就了解这么多吧,如果有兴趣可以查看msdn:Geometry 概述。
现在我们来了解它的功能,使用geometry我们可以绘制 直线,椭圆,矩形。
分别使用 LineGeometry、EllipseGeometry 和RectangleGeometry 直接创建。
后面的文章中我会一一使用为大家带来实例。
当然大家可能发现了,还有几种类型是不包括的:弧线,贝塞尔曲线等等。这就需要使用到segment进行绘制。他们没有实现了geometry的类定义。
segment是包含在PathGeometry中的,PathGeometry派生自geometry,所以我们可以通过绘制PathGeometry 来绘制上述图形。
msdn有如下定义:
PathGeometry 类及其轻型等效项 StreamGeometry 类提供了描绘由弧线、曲线和直线组成的多个复杂图形的方法。
PathGeometry 的核心是 PathFigure 对象的集合;这些对象之所以这样命名是因为每个图形都描绘 PathGeometry 中的一个离散形状。每个 PathFigure 自身又由一个或多个 PathSegment 对象组成,每个这样的对象均描绘图形的一条线段。
线段有多种类型。
线段类型
说明
示例
ArcSegment
在两个点之间创建一条椭圆弧线。
如何:创建椭圆弧。
BezierSegment
在两个点之间创建一条三次方贝塞尔曲线。
如何:创建三次方贝塞尔曲线。
LineSegment
在两个点之间创建一条直线。
如何:在 PathGeometry 中创建 LineSegment
PolyBezierSegment
创建一系列三次方贝塞尔曲线。
请参见PolyBezierSegment 类型页。
PolyLineSegment
创建一系列直线。
请参见PolyLineSegment 类型页。
PolyQuadraticBezierSegment
创建一系列二次贝塞尔曲线。
请参见PolyQuadraticBezierSegment 页。
QuadraticBezierSegment
创建一条二次贝塞尔曲线。
如何:创建二次贝塞尔曲线 .
PathFigure 中的线段将合并为一个几何形状,该形状将每一条线段的终点作为下一条线段的起点。PathFigure 的 StartPoint 属性指定绘制第一条线段的起始点。后面的每条线段都以上一条线段的终点作为起点。例如,通过将 StartPoint 属性设置为 10,50 并创建 Point 属性设置为 10,150 的 LineSegment,可定义一条从 10,50 到 10,150 的竖线。
个人感觉微软大可不必这么麻烦,可以像framework2.0 中GDI+一样封装成类来使用,当然这也可能与vista,WPF的技术还不太成熟有关。
后面的相关学习实例希望我有时间将它完成。: