- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MapX的图元与图层
西北大学城市与资源学系 4.1 MapX图元与图元集合 图元(Map Feature)是指地图中存在的地理对象,例如点、线、区域等。在一副地图中,会包含多种不同的地理对象。在MapX中,地图图元用图元对象(Feature Object)来表示。例如在一副中国电子地图中,一个类型为区域的图元对象用来表示河北省,一个类型为线的图元对象用来表示黄河,一个类型为点的图元对象用来表示北京市。 1、图元的属性(书上62页) 2、图元的操作: (书上63页) 4.1 MapX图元与图元集合 图元集合:在MapX中,组成地图的不同图层中的每个图层通常具有相同类型的图元。例如,“中国省份”图层使用区域表示每个省,“中国河流”图层使用线图元表示中国的主要河流。“中国主要城市”图层使用点图元表示中国的大城市。在MapX中,地图图层中的所有图元及其所有子集表示为图元集合(Features Collection)。 1、图元集合的属性(书上64页) 2、图元集合的操作 (书上64页) 4.2 创建地图图元 两种方法创建新的地图图元: 1、通过分配新Feature对象创建图元; 2、使用Map对象的FeatureFactory方法对现有图元执行操作(例如缓冲区)来创建图元。 通过上述方法创建的图元称为独立图元(stand-alone feature)。独立图元受到一些限制:独立图元不能被添加到任何集合中,而且只有用于定义图元的方法和属性可以被使用,而不能使用其他的属性方法,例如不能使用独立图元的Area属性,独立图元也没有用于Feature.Layer属性的值。 4.2 创建地图图元 图层的图元不是独立图元,所有的属性和方法都可以在图层图元上使用。创建新的独立图元对象后,必须将该图元对象附加到地图上才能引用对象的所有方法和属性。把图元附加到地图时,地图的坐标系与图元相关联。 4.2.1 通过分配新图元对象创建图元 以下为VB示例如何创建独立的Text图元: Dim ftr as new mapxlib.feature ‘新的独立图元对象 Dim ftradded as mapxlib.feature ‘附加文字图元到图层1 Ftr.attach map1 Ftr.type=mifeaturetypetext Ftr.style=map1.defaultstyle Ftr.point.set map1.centerx,map1.centery Ftr.caption=“北京” Set ftradded = map1.layer(1).addfeature(ftr) 4.2.2 使用FeatureFactory方法创建图元 FeatureFactory对象的方法可以创建新的地图图元,也可以通过对现有图元执行操作(如缓冲区)来创建图元。 FeatureFactory对象的方法(书上66页) 由FeatureFactory方法创建返回的独立图元对象已经自动附加到地图上,已经具有相关坐标系,不需要再使用Attach方法。 要取得FeatureFactory对象,用map. FeatureFactory Dim ftr as mapxlib.feature Dim pt as new mapxlib.point Pt.set map1.centerx,map1.centery ‘创建文字图元并将其加入图层1 Set ftr = map1.layer(1).addfeature(map1.featurefactory.createtext(pt,”北京”)) 4.3 图元的选取 用户可以选择地图的一个或者多个图元,MapX自动高亮显示被选中的图元。 使用Selection集合来获取用户所选的图元。Selection集合也是Feature对象的集合,表示当前已选中的Feature对象。每个图层对象都有自己的Selection集合(Layer.selection) Selection集合提供了不同的方法以实现在程序代码中图元的选取。(SelectByRadius可以选取以某城市为中心的一定半径范围内的所有图元) Selection集合也支持集合的添加和删除图元的方法。 Selection集合的方法(书上67) 4.3 图元的选取 Selection集合的3种选择类型: miSelectionNew 替换selection集合的内容为当前选择 miSelectionAppend 添加当前选择到Selection集合 miSelectionRemove 从Selection集合中删除当前选择 当使用图元选择工具或使用Layer对象的某一selection方法更改
文档评论(0)