GIS暑期实习报告.doc

GIS暑期实习报告.doc

ID:51844716

大小:565.00 KB

页数:20页

时间:2020-03-16

GIS暑期实习报告.doc_第1页
GIS暑期实习报告.doc_第2页
GIS暑期实习报告.doc_第3页
GIS暑期实习报告.doc_第4页
GIS暑期实习报告.doc_第5页
资源描述:

《GIS暑期实习报告.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、GIS暑期实习报告班号:064081—28姓名:任远完成日期:2011-07-14提交日期:2011-07-14目录第一部分1程序设计思路:1程序实现过程:11.定义图形类:12.读取Shape文件并存储在图形类中23.文件的显示44.图形的放大、缩小和漫游65.缓冲区的创建76.视图的重绘11程序运行结果:111.图形的显示:122.缓冲区分析:12第二部分12程序实现过程:121.建立VB工程122.通过代码加载数据133.图层操作134.显示图层要素类型145.地图属性的查询156.地图信息可视化16程序运行结果:171.

2、加载图层172.图形的放大、缩小、漫游173.显示图层要素信息184.地图属性的查询185.地图信息可视化18第一部分程序设计思路:首先定义图形类,在图形类的定义中编写图形绘制方法和缓冲区创建方法,将缩放倍数与平移坐标作为这些方法的传入参数以适应后面所要实现的种各功能。然后编写函数将shape文件中的数据读入图形类中,采用图形类基类的指针的结点以链表方式存储。接下来在视图类中通过调用图形绘制方法来显示图形,改变缩放倍数与平移坐标等传入参数可以实现图形的放大缩小与漫游。当需要进行缓冲区分析时,则在视图类中调用缓冲区创建方法进行缓冲

3、区的创建。程序实现过程:1.定义图形类:首先定义图形类基类CShape,然后定义派生图形类CSPoint(点类)、CPolyLine(线类)、CPolygon(多边形类):1)定义图形类基类CShapeclassCShape:publicCObject{public:CShape(){};//构造函数intShapeType;//图形几何类型virtualvoidDraw(CDC*pDC,doubleXmin,doubleYmin,doubleYmax,doublemX,doublemY,doublen);//图形绘制方法vir

4、tualvoidCreateBuffer(CDC*pDC,doubleXmin,doubleYmin,doubleYmax,doublemX,doublemY,doublen,doubleBufferRadius,COLORREFColor);//创建缓冲区方法~CShape(){};//析构函数};2)定义派生图形类CSPointclassCSPoint:virtualpublicCShape{public:CSPoint(){};public:doublex;//点坐标doubley;virtualvoidDraw(CDC*

5、pDC,doubleXmin,doubleYmin,doubleYmax,doublemX,doublemY,doublen);//点绘制方法virtualvoidCreateBuffer(CDC*pDC,doubleXmin,doubleYmin,doubleYmax,doublemX,doublemY,doublen,doubleBufferRadius,COLORREFColor);//点缓冲区创建方法~CSPoint(){};};183)定义派生图形类CPolyLineclassCPolyLine:virtualpubl

6、icCShape{public:CPolyLine(){};public:doubleBox[4];//坐标范围intNumParts;//子线段个数intNumPoints;//坐标点数int*Parts;//子线段起始位置数组double*PointsX;//线上各点X坐标数组double*PointsY;//线上各点Y坐标数组virtualvoidDraw(CDC*pDC,doubleXmin,doubleYmin,doubleYmax,doublemX,doublemY,doublen);//线绘制方法virtualvo

7、idCreateBuffer(CDC*pDC,doubleXmin,doubleYmin,doubleYmax,doublemX,doublemY,doublen,doubleBufferRadius,COLORREFColor);//线缓冲区创建方法~CPolyLine(){};};4)定义派生图形类CPolygonclassCPolygon:virtualpublicCPolyLine{public:CPolygon(){};virtualvoidDraw(CDC*pDC,doubleXmin,doubleYmin,doub

8、leYmax,doublemX,doublemY,doublen);//多边形绘制方法virtualvoidCreateBuffer(CDC*pDC,doubleXmin,doubleYmin,doubleYmax,doublemX,doublemY,doubl

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。