网站大量收购独家精品文档,联系QQ:2885784924

GIS二次开发7.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
GIS二次开发7

GIS二次开发-使用MapObjects (L7) 2005.3.15 Chapter 4. 坐标系和投影对象 控件坐标和地理坐标 地理坐标和控件坐标的转换 投影变换 设置地图范围和对地图比例尺的操作 从地图上得到地理坐标 本章主要对象-投影对象: MapObjects2.GeoTransfomation 投影变换 MapObjects2.ProjCoordSys 投影坐标系 MapObjects2.Projection 投影 MapObject2.GeoCoordSys 地理坐标系 MapObjects2.Unit 地图单位 MapObjects2.Datum 基准面 MapObjects2.Spheroid 椭球体 MapObjects2.Meridian 中央经线 MapObjects2.Strings 投影相关常数 4.1 坐标系 4.1.1 控件坐标系统(Control Coordinate) 在Visual Basic窗体中左上角为原点,水平方向为X轴,竖直方向为Y轴。 Visual Basic以twips(缇)作为缺省的测量单位。你可以把窗体的单位改成点(pixels) ,字符长,英寸,毫米,厘米。或通过设置 Scale Mode属性来实现自定义单位设置。但在我们的讨论中我们应用twips,因为它是系统默认的缺省单位。 在窗体内的Map控件也有它自己的坐标系。其坐标单位与窗体坐标相同。我们将地图控件中的坐标称为控件坐标(Control Coordinate) 4.1.2 地图坐标(Map Coordinate) 图层数据采用地图坐标系。遵循笛卡尔坐标系原则。 不同于Visual Basic窗体的控件坐标系(左上角永远是0,0)地图控件内显示的地图坐标范围,时常在应用期间改变。 每次当你移动某一地图区时,Map控件内地图坐标范围就会变化。 控件坐标与地图坐标间的区别: 地图控件的控制坐标的左上角的一位置为(0,0)。地图坐标通常都有一个在地图控件区域很远以外的原点( origin )。应当记住,你的地图控件只是地图表面的一个小窗口。 控件坐标Y轴延向下递增,而地图坐标Y轴延向上递增。 控件坐标以twips为单位,并且与你的计算机屏幕显示的实际尺寸有关。地图坐标则用米,英尺等单位表示,并且与地表特征的测量有关 1 Twip=1/20 Point=1/1440 Inch=1/567 cm 地图数据中所用的坐标值通常很大,有的甚至是成百上千或数以百万计的。这些坐标值通常是以英尺或米为单位的。你地图资料的坐标,可以不同的坐标系为基础,如平面坐标系( SPCS:State Plane Coordinate System) 或麦卡脱坐标系( UTM:Universal Transverse Mercator)以及其它坐标系。如果你是从别人那里得到的资料,那么其提供者应已设置了适当的坐标系。 需要注意的一点是应用MapObjects 时要确认图层上的资料用统一坐标系。如果不是,那些用了不同坐标系的图层是无法在一起显示的 如果你的地图资料应用了不同坐标系,并且你想同时在MapObjects中使用它们,那么你可以用一些其它软件,如ArcView或ArcGIS 来把你的地图资料转换成合适的坐标系。该过程称为map projection(投影变换”)。 4.1.3地图坐标与控件坐标的转换 1) 方法Map.ToMapPoint(x,y) :Point x:Single y:Single 实现控件坐标到地图坐标的转换 Set pt1 = Map1.ToMapPoint(X, Y) 2) 方法Map.FromMapPoint(pt, x,y) 实现地图坐标到控件坐标的转换,将基于地图坐标的点pt的X,Y 坐标转换为控件坐标x,y Dim pt1 As MapObjects2.Point …. Set rect = Map1.TrackRectangle Set pt1 = rect.Center Map1.FromMapPoint pt1,x1,y1 3) 方法Map.FromMapDistance(distance:Double) :Single 将一段距离的单位由地图单位转换为控件的单位 4) 方法Map.ToMapDistance(distance:Single) :Double 将一段距离的控件的单位转换为地图单位 课堂练习? (10分钟) 课堂练习4 地图坐标与控件坐标,测量线段的长度 4.2 投影对象 4.2.1 球坐标系与平面坐标系 4.2.2 椭球体、基准面、地图投影 4.2.3 地理坐标系,投影坐标系 4.2.4 对象MapObjects2.Strings 4.2.1 球坐标系

您可能关注的文档

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档