欢迎来到天天文库
浏览记录
ID:39505036
大小:122.00 KB
页数:5页
时间:2019-07-04
《计算机地图制图原理与方法实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Windows绘图一、实验目的:了解windows绘图的一般过程;增强对课本基本原理的理解;以vc++为主,学习高级语言图形编程技术二、实验过程:该实验采用visualbasic作为编程语言,首先根据VB的特性制定一下的整体思路:主要实现曲线、圆、点、直线等图形的绘制,利用鼠标的mousemove、mousedown、mouseup三个事件,分情况进行处理,以此实现对不同选项的响应。界面如下:主要代码:DimljsAsInteger'必须定义为全局变量DimdrawstateAsBoolean'定义画笔状态,左键按下为有效DimprexAsSingle'坐标初
2、始值,在左键按下后记录DimpreyAsSingle'坐标初始值,在左键按下后记录PrivateSubCombo1_Change()Picture1.DrawWidth=Val(Combo1)EndSubPrivateSubCommand1_Click()ljs=1Label4.Caption="温馨提示:请拖动鼠标左键绘制曲线,右键单击取消该操作"'lineEndSubPrivateSubCommand2_Click()ljs=2Label4.Caption="温馨提示:单击鼠标左键确定圆心,拖动直至松开鼠标左键,右键单击取消该操作"'circleEndSu
3、bPrivateSubCommand3_Click()ljs=3Label4.Caption="温馨提示,单击鼠标左键即可"'pointEndSubPrivateSubCommand4_Click()ljs=4'lineLabel4.Caption="温馨提示:按住鼠标左键,拖动直至松开鼠标左键"EndSubPrivateSubCommand5_Click()Form2.ShowForm1.Visible=TrueEndSubPrivateSubCommand6_Click()ljs=6Label4.Caption="注记,输入文字后,按鼠标左键确定位置"Ch
4、ar=InputBox("请输入注记文字","注记","surveying")EndSubPrivateSubForm_Load()Text1=""Text2=""Label4.Caption="欢迎使用本绘图程序,请根据提示进行操作"EndSub'以下为三个鼠标事件,针对前面的选项依次处理PrivateSubPicture1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)'分选项进行讨论Ifljs=1ThenIfButton=1ThenPicture1.DrawWidth=1draw
5、state=True'此处做一个标记prex=Xprey=YEndIfIfButton=2Thenljs=0'鼠标右键终止当前画笔EndIfEndIfIfljs=2ThenIfButton=1Thendrawstate=True'此处做一个标记prex=Xprey=YEndIfIfButton=2Thenljs=0'鼠标右键终止当前画笔EndIfEndIfIfljs=3ThenIfButton=1ThenPicture1.DrawWidth=5'drawwidth是全局属性Picture1.PSet(X,Y)EndIfIfButton=2Thenljs=0En
6、dIfEndIfIfljs=4ThenIfButton=1Thenprex=Xprey=YEndIfEndIfEndSubPrivateSubPicture1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Text1=XText2=Y'显示当前坐标Ifljs=1ThenIfdrawstate=TrueThenPicture1.DrawWidth=1Picture1.Line(prex,prey)-(X,Y)'指定在picture1中操作prex=Xprey=YEndIfEndIf:En
7、dSubPrivateSubPicture1_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Ifljs=1ThenIfButton=1Thendrawstate=FalseEndIfEndIfIfljs=2ThenPicture1.DrawWidth=1DimrAsSingleIfButton=1Thendrawstate=FalseEndIfr=Sqr((X-prex)*(X-prex)+(Y-prey)*(Y-prey))Picture1.Circle(prex,prey),rEndI
8、fIfljs=4ThenPicture
此文档下载收益归作者所有