文件名称:VC下的MAPX实现
- 所属分类:
- 多媒体编程
- 资源属性:
- [C/C++] [源码]
- 上传时间:
- 2009-06-18
- 文件大小:
- 64.42kb
- 下载次数:
- 1次
- 提 供 者:
- xin1888@163.com
- 相关连接:
- 无
- 下载说明:
- 别用迅雷下载,失败请重下,重下不扣分!
介绍说明--下载内容均来自于网络,请自行研究使用
文实验环境为 .NET 1.1,MAPX4.5。
为了让鹰眼图脱离主View单独浮动,决定使用CJLibrary控件来放置鹰眼图,该控件可由网址[2]下载。
鹰眼图上面有一个红色矩形框,表示主图的当前可视范围。要求点击鼠标左键来移动此框时能够引起主图的联动。
主图上有放大、缩小、移动三个工具按钮,要求主图变化的时候,能够引起鹰眼图矩形框的联动。
实现的易错点在CMapXEagleBar::OnMouseUpInMap函数, 鹰眼图中矩形框的移动要经过如下几步:
a) 得到矩形框四个顶点移动前的屏幕坐标,
b) 计算出中心点坐标,
c) 通过消息传入的参数得到移动后的中心点屏幕坐标
d) 计算前后中心点的偏移(以屏幕坐标作为参考)
e) 计算移动后的矩形框的四个顶点的屏幕坐标
f) 将四个顶点的屏幕坐标转换成地理坐标
g) 显示新的矩形框
为了让鹰眼图脱离主View单独浮动,决定使用CJLibrary控件来放置鹰眼图,该控件可由网址[2]下载。
鹰眼图上面有一个红色矩形框,表示主图的当前可视范围。要求点击鼠标左键来移动此框时能够引起主图的联动。
主图上有放大、缩小、移动三个工具按钮,要求主图变化的时候,能够引起鹰眼图矩形框的联动。
实现的易错点在CMapXEagleBar::OnMouseUpInMap函数, 鹰眼图中矩形框的移动要经过如下几步:
a) 得到矩形框四个顶点移动前的屏幕坐标,
b) 计算出中心点坐标,
c) 通过消息传入的参数得到移动后的中心点屏幕坐标
d) 计算前后中心点的偏移(以屏幕坐标作为参考)
e) 计算移动后的矩形框的四个顶点的屏幕坐标
f) 将四个顶点的屏幕坐标转换成地理坐标
g) 显示新的矩形框
(系统自动生成,下载前可以参看下载内容)
下载文件列表
压缩包 : MapXSampleMDI.rar 列表 res res/MapXSampleMDI.ico res/MapXSampleMDI.manifest res/MapXSampleMDI.rc2 res/MapXSampleMDIDoc.ico res/Toolbar.bmp res/toolbar2.bmp OXTabClientWnd OXTabClientWnd/OXTabClientWnd.cpp OXTabClientWnd/OXTabClientWnd.h OXTabClientWnd/vssver.scc ChildFrm.cpp ChildFrm.h CommonDef.h MainFrm.cpp MainFrm.h MapXEagleBar.cpp MapXEagleBar.h MapXSampleMDI.aps MapXSampleMDI.cpp MapXSampleMDI.h MapXSampleMDI.rc MapXSampleMDI.vcproj MapXSampleMDIDoc.cpp MapXSampleMDIDoc.h MapXSampleMDIView.cpp MapXSampleMDIView.h ReadMe.txt resource.h stdafx.cpp stdafx.h