5.兵位(炮位)线 g.DrawLine(pen, new Point(30, 160), new Point(30, 170)); g.DrawLine(pen, new Point(30, 170), new Point(40, 170)); g.DrawLine(pen, new Point(30, 180), new Point(30, 190)); g.DrawLine(pen, new Point(30, 180), new Point(40, 180)); 引导: 请确定在平移坐标轴和旋转坐标轴后,点P1(10,30)和P1(10,-30)的大致位置。 至此棋盘线条就绘制成功了。 教师设疑并释疑: 【理论知识】 请试一下,坐标轴先平移后请按F1键,查一下MSDN上的Pen类、Graphics类和Point旋转与坐标轴先旋转后平移结构的信息,将Pen类中的构造方法、DrawLine方法和Point的效果一样吗?通过观察,的构造方法等的详细内容记下来。 能充分理解GDI+的坐标系统的空间关系。 struct 类型的概念和类与结构的差别 任务三 书写棋盘中间文字 【任务实施】 1.用DrawString方法写在棋盘中间写文字“楚河汉(漢)界”。 g.DrawString(\楚 河\, new Font(\黑体\, 25), Brushes.Black, new Point(50, 235)); g.DrawString(\漢 界\, new Font(\黑体\, 25), 师生互动 Brushes.Black, new Point(300, 235)); 2.如果要实现如图3-11所示的效果,可以将代码改为: g.TranslateTransform(300, 235); //平移坐标轴 g.RotateTransform(180); //进行180度旋转 g.DrawString(\漢界\, new Font(\黑体\, 25), Brushes.Black, new Point(-100, -35)); g.ResetTransform(); //坐标轴复位 至此棋盘中间文字书写完成。 【小结】 学习者从在Paint事件中绘制背景图和框图开始,了解到GDI+的坐标系统;然后绘制水平线、垂直线、斜线和兵位(炮位)线,提高了对Graphics类和GDI+的坐标系统的认识;最后,书写出棋盘中间文字。通过本项目,学生能学会用GDI+绘制中国象棋棋盘、五子棋子棋盘和国际象棋棋盘,从而掌握GDI+中的图形处理的基本原理,为后续的GDI+中的图像处理打下了基础。 【作业】 1.请学生按前面任务一中所学的原理完成图3-9所示的五子棋子棋盘。 图3-9五子棋子棋盘 提示:画圆形的方法可查阅MSDN中的Graphics类中的相关方法。 2.请学生按前面任务二中所学的原理完成图3-12所示的国际象棋棋盘。(素材在光盘的“素材3”目录中) 图3-12 国际象棋棋盘 提示:四周的数字如何准确定位呢? 3.请学生按前面任务三中所学的原理完成图3-13所示的围棋象棋棋盘和棋子。 图3-13 围棋象棋棋盘和棋子 提示:在Graphics类中,用什么方法给矩形填充颜色的?
相关推荐: