理论教育 数字测图技术:基于VS.NET的图形绘制方法

数字测图技术:基于VS.NET的图形绘制方法

时间:2023-10-09 理论教育 版权反馈
【摘要】:Visual Studio.NET是当前最流行的、基于.NET框架的Windows系统平台应用程序的集成开发环境,它包括Visual Basic.NET、Visual C++.NET、Visual C#.NET、Visual J#.NET等组件,全都采用相同的集成开发环境。本节介绍基于Visual C#.NET的图形绘制的基本概念与过程。1)基本概念利用Visual C#.NET绘制图形,先要了解画布(画板)、画笔、画刷、颜色等基本概念。“退出”按钮执行退出绘图状态,将Form1的TEXT属性设置为“基本图形绘制”。

数字测图技术:基于VS.NET的图形绘制方法

Visual Studio.NET是当前最流行的、基于.NET框架的Windows系统平台应用程序的集成开发环境,它包括Visual Basic.NET、Visual C++.NET、Visual C#.NET、Visual J#.NET等组件,全都采用相同的集成开发环境。在Visual C#.NET中,提供了对GDI+基本图形功能的访问,使用GDI+处理二维(2D)的图形和图像,使用Direct X处理三维(3D)的图形图像,图形图像处理用到的主要命名空间是System.Drawing,主要有Graphics类、Bitmap类、从Brush类继承的类、Font类、Icon类、Image类、Pen类、Color类等。本节介绍基于Visual C#.NET的图形绘制的基本概念与过程。

1)基本概念

利用Visual C#.NET绘制图形,先要了解画布(画板)、画笔、画刷、颜色等基本概念。

(1)画布创建

在GDI+中,绘图表面(画布)可以是窗体、控件、打印机、预览或图像,实际编程时,C#中画布可以通过Graphics这个类来创建,其方法有如下三种:

①在窗体或控件的Paint事件中直接引用Graphics对象,其代码如下:

该方法是假设当前过程是绘制窗体的onPaint方法,则可以直接从该方法的参数e中获得Graphics对象。

②利用窗体或某个控件的CreateGraphics方法,其代码如下:

该方法是假设当前过程是绘制窗体是pictureBox1控件,通过调用CreateGraphics方法来创建Graphics对象。

③从继承自图像的任何对象创建Graphics对象,其代码如下:

该方法在需要更改已存在的图像(如D:\MY.bmp)时十分有用。

(2)画笔创建

在C#中采用pen类定义画笔,例如,创建一个pen对象,其颜色为蓝色,宽度为3的画笔,其代码如下:

所有的pen对象都有一个DashStyle属性,其决定该画笔画出的线条的式样。

(3)画刷创建

画刷的创建与画笔类似,它描述的是填充方式,例如定义一个红色的纯色的画刷代码为:

(4)系统颜色

在创建画笔时,可以自定义颜色,也可以定义成系统颜色。系统颜色由Windows定义,如SystemColors.Desktop、SystemColors.Menu、SystemColors.ButtonFace等,编程人员可以按照一般习惯选用,以达到最佳的视觉效果。(www.daowen.com)

2)Visual C#.NET编程绘图步骤

本节以Visual Studio 2010平台为开发环境,介绍Visual C#.NET编程开发一个简单绘图模块的过程,其具体步骤如下:

①新建项目

启动Visual Studio 2010平台,点击新建项目,进入新建项目对话框,如图2-27所示,在左侧选择Visual C#选项,在中间栏的程序类型选择Windows窗体应用程序,在对话框下面填写项目名称、位置及解决方案名称,然后点击“确定”按钮

图2-27 新建项目对话框

②绘图界面设计

如图2-28所示,在窗体上添加一个pictureBox1图片框和两个命令按钮。pictureBox1图片框绘制图形,“确定”按钮执行绘图命令。“退出”按钮执行退出绘图状态,将Form1的TEXT属性设置为“基本图形绘制”。

③程序界面设计完成后,点击Form1,在Form1类的代码框架中添加以下代码:

图2-28 界面设计

图2-29 基本图形生成

④调试运行

程序代码编辑完成后,按F5或点击调试菜单进行调试,直至消除所有错误,最后生成解决方案(即生成EXE可执行文件)。

⑤图形生成

执行生成的EXE文件,即可生成图形,如图2-29所示,该模块绘制出矩形、圆、椭圆及其填充图形,绘制出GPS控制点符号及注记,能绘制实线、虚线、点线三种基本线型。

本节只介绍了图形生成的基本方法,但还有很多高级绘图技术问题没有涉及,如图形编辑、数据结构、图形保存等,这些问题都要在专业绘图软件中解决。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈