文档详情

GDI+编程.ppt

发布:2016-12-17约字共34页下载文档
文本预览下载声明
右手坐标系系统 WPF 采用右手坐标系系统。也就是说,如果你伸出你的手指如下图所示,各手指指示的是三条坐标轴的正向。 3D场景中的元素 1.Viewport3D ??????? 这个viewport是建立连接2D和3D世界大门的一个控件。 2.Camera ?????? 每一个3D场景都有一个摄像机。摄像机定义了Position,LookDirection和UpDirection属性。WPF支持正交(orthographical )和透视(perspective )摄像机。 3.3D Models ??????? 一个3D模型定义了场景中的一个物体。它包含一个Geometry对象 ,这个对象是一个网格,和一个材质(Material )对象,材质具有漫反射(diffuse),镜面(specular )或放射(emmisive )几种类型。材质本身具有一个画刷。 4.Lights ??????? 没有光源你将什么也看不到。因此我们需要在我们的场景当中至少放置一个光源来照亮我们的模型。WPF支持各种不同的光源,比如: AmbientLight (自然光) DirectionalLight (方向光) PointLight (点光源) SpotLight (聚光源) 实例 如何用8个顶点连成12个三角形建立网格来形成立方体的形状 第11讲 GDI+编程 GDI+:Graphics Device Interface Plus也就是图形设备接口,提供了各种丰富的图形图像处理功能;在C#.NET中,使用GDI+处理二维(2D)的图形和图像,使用DirectX处理三维(3D)的图形图像,图形图像处理用到的主要命名空间是System . Drawing:提供了对GDI+基本图形功能的访问,主要有Graphics类、Bitmap类、从Brush类继承的类、Font类、Icon类、Image类、Pen类、Color类等。 第11讲 GDI+编程 GDI+ 已完全替代 GDI,以图形图像作为对象,可在 Windows 窗体应用程序中以编程方式绘制或操作图形图像。虽然无法对 Web 窗体直接使用 GDI+,但可以通过 Web 服务器的“图像”(Image) 控件显示图形图像。 处理图像图形包括创建 Graphics 对象,使用 Graphics 对象绘制线条和形状、呈现文本或显示与操作图像。 绘图首先要准备一个画板,创建一个画板主要有3种方式:   A: 在窗体或控件的Paint事件中直接引用Graphics对象   B:利用窗体或某个控件的CreateGraphics方法   C: 从继承自图像的任何对象创建Graphics对象 其次,定义画笔 然后,绘画 11.1 创建 Graphics 对象 Graphics类是使用GDI+的基础,它代表了所有输出显示的绘图环境,用户可以通过编程操作Graphics 对象,在屏幕上绘制图形、呈现文本或操作图像。 创建Graphics 对象的三种方法。 (1) 在为窗体编制 Paint 事件处理程序时,图形对象作为一个 PaintEventArgs 提供。下面的代码引用 Paint 事件的 PaintEventArgs 中的 Graphics 对象: private void Form1_Paint(object sender, System.Windows.Forms.PaintEvent Args pe) { // 声明图形对象并把它设置为PaintEventArgs事件提供的图形对象 Graphics g = pe.Graphics; // 在这插入绘制窗体的代码 } 11.1 创建 Graphics 对象 (2) 使用控件或窗体的 CreateGraphics方法来获取对 Graphics 对象的引用,该对象表示这个控件或窗体的绘图表面。例如: Graphics g; // 把g设为一个图形对象,来表示控件或窗体的绘图平面 g = this.CreateGraphics(); (3) 从由 Image 类派生的任何对象创建图形对象,方法是调用 Graphics.FromImage 方法。例如: Bitmap myBitmap = new Bitmap(@C:\myPic.bmp); Graphics g = Graphics.FromImage(myBitmap); 11.2 笔 在 GDI+ 中,可使用笔对象和画笔对象来呈现图形、文本和图像。笔是 Pen 类的实例,可用于绘制线条和空心形状。画笔是从 MustInherit(抽象)Brush 类派生的任何类的实例,可用于填充形状或绘
显示全部
相似文档