第7章c图形程序设计基础内容摘要:
h( , , , )。 ( myBrush, )。 } 24 如果创建应用程序后向设计窗体上拖放一些控件,可以看到运行后该图就是一个漂亮的背景了。 25 (5)使用 PathGradientBrush类实现彩色渐变 在 GDI+中 , 把一个或多个图形组成的形体称作路径。 可以 使用 GraphicsPath类定义路径 , 使用 PathGradientBrush类定 义路径内部的渐变色画笔。 渐变色从路径内部的中心点逐渐过 渡到路径的外边界边缘。 PathGradientBrush类有三种形式的构造函数 , 形式之一是: public PathGradientBrush( GraphicsPath path ) 其中 , GraphicsPath定义画笔填充的区域。 例 ,路径和路径画笔的使用 : using。 …… 26 private void Form1_Paint(object sender, e) { Graphics g =。 Point centerPoint = new Point(150,100)。 int R=60。 GraphicsPath path=new GraphicsPath()。 (,2*R,2*R)。 PathGradientBrush brush=new PathGradientBrush(path)。 //指定路径中心点 =centerPoint。 //指定路径中心点的颜色 =。 //Color类型的数组指定与路径上每个顶点对应的颜色 =new Color[]{ }。 27 (brush, 2*R,2*R)。 centerPoint=new Point(350,100)。 R=20。 path=new GraphicsPath()。 ( ,2*R,2*R)。 ( *R,*R, 4*R,4*R)。 (*R,*R, 6*R,6*R)。 brush=new PathGradientBrush(path)。 =centerPoint。 =。 =new Color[]{ , }。 (brush,path)。 } 28 在这个例子中,可以看到当使用 FillPath()方法填充路径的时候,如果多个图形互相重叠,则重叠部分的数目为偶数时不会被填充,因此右图中间部分仍为背景色而不是蓝色。 29 附 :平移、旋转与缩放 Graphics类提供了三种对图像进行几何变换的方法 , 它们 是 TranslateTransform()方法 、 RotateTransform()方法和 ScaleTransform()方法 , 分别用于图形图像的平移 、 旋转和 缩放 ( 以坐标系原点为中心 )。 TranslateTransform( )方法的形式为: public void TranslateTransform(float dx,float dy) 其中 , dx表示平移的 x分量 , dy表示平移的 y分量。 RotateTransform( )方法的形式为: public void RotateTransform(float angle) 其中 , angle表示旋转角度。 ScaleTransform( )方法的形式为: public void ScaleTransform(float sx,float sy) 其中, sx表示 x方向的缩放比例, sy表示 y方向的缩放比例。 30 例:三种变换方法示例。 private void Form1_Paint(object sender, e) { Graphics g =。 (new SolidBrush(( 80, )), 120,30,200,100)。 //椭圆透明度 80% ()。 //顺时针旋转 30度 (new SolidBrush((80,)), 120,30,200,100)。 //水平方向向右平移 200个像素,垂直方向向上平移 100个像素 (,)。 (new SolidBrush((50,)), 120,30,200,100)。 (,)。 //缩小到一半 (new SolidBrush((100, )), 120,30,200,100)。 } 31 32 基本图形的绘制 1. 画点 VC采用 Point结构和 SetPixel()方法完成画点的功能;其中Point用于图形设计, SetPixel()用于图像处理 Point原型: public struct Point。 使用: public Point p1 = new Point()。 每个点结构有 x和 y两个属性,表示横纵坐标,如: = 30。 = 100。 33 2. 画直线 1) DrawLine方法 public void DrawLine( Pen pen, int x1, int y1,int x2, int y2 )。 或 public void DrawLine( Pen pen, Point pt1, Point pt2 )。 如: Graphics g = ( )。 Pen p1 = new Pen( , 2 )。 Point pt1 = new Point( 40,50)。 Point pt2 = new Point( 220,150)。 ( p1, 10, 20, 40, 50 )。 ( p1, pt1, pt2 )。 2) DrawLines方法 public void DrawLines( Pen pen, Point[ ] pts )。 34 private void Form1_Paint(object sender, e) { Pen pen = new Pen(, 3)。 Point[] points = { new Point( 10, 10), new Point( 10, 100), new Point(200, 50), new Point(250, 120) }。第7章c图形程序设计基础
相关推荐
系统的执行。 在不同的状态下,通信双方处理的物理信道不同,不同状态之间的转移则是由于系统工作的某些条件发生了变化。 从空中接口的协议分层结构来看,对物理层的使用并不是由物理层标准所规定的,而是由物理层以上的高层来定义。 1.移动台状态 ( 1)移动台初始化状态 ( 2)移动台空闲状态 ( 3)系统接入状态 ( 4)移动台业务信道控制状 图 710 cdma2020
参数“ [number of bits].[]”设置的是整数部分的位宽 , 其中最高位为符号位;参数 “ [].[number of bits]”设置了小数部分的位宽。 假如把参数 “ [number of bits].[]”设置为 “ 2”, 那就意味着该小数的整数部分只能是 0、 2(分别对应 00、 0 10或 10), 而且整数部分要为 2, 必须是小数部分为全零。 第 7章
19 Renmin University of China Continued ( 1) 2 10年 2月 1日,预付建造发电车间工程款 借:预付账款 —— 建筑工程 —— 发电车间 3 000 000 贷:银行存款 3 000 000 ( 2) 2 10年 5月 1日,购入发电设备 借:工程物资 —— 发电设备 3 800 000 应交税费 —— 应交增值税 —— 进项税额 646 000 贷
面向数据流的软件设计方法 17 I D A C E F G H B J 输出流 输入流 变换流 划分流界例子 169。 Copyright Xinjun Mao 面向数据流的软件设计方法 18 步骤 5. 执行一级分解 任务 : 导出三个层次结构的软件结构 – 底层模块:用于输入、输出和计算等基本功能 – 中间层模块:协调、控制底层模块的工作 – 高层模块:用于协调和控制所有的从属模块
的比重,用 (1y) 表示无风险投资的比重 : ,300$ 000,210$ y ,300$000,90$1 y,300$ 400,113$: E ,300$600,96$: BINVESTMENTS | BODIE, KANE, MARCUS 614 无风险资产 • 只有政府可以发行无违约风险的债券。 –实际中无风险资产是一种指数化债券