3S基础知识:MapX应用教程—对象编辑

本文介绍了MapX中对象编辑的基本操作,包括如何编辑对象属性,移动地图对象以及更新对象样式。通过示例代码展示了如何修改图层字段值,实现地图元素的移动以及设置自定义样式。
摘要由CSDN通过智能技术生成

  对象编辑

  (1)、对属性的编辑

  主要使用Fields对象。示例:

  Dim Flds AS MapXlIB.Fields

  ‘修改当前图层的每一个字段

  For J=1 to Flds.Count

  Lyr.KeyField= Flds.Item(j).Name ‘使当前图层指向J字段

  ‘更新当前图元的J字段值

  Ftr.KeyValue=NewValueStr(J)

  Ftr.Update True ‘并未写入硬盘

  Next

  Lyr.Refresh ‘保存修改到硬盘

  (2)、移动地图

  首先创建一个移动工具句柄

  MainMap.CreateCustomTool MoveFeature, miToolTypeLine, miPanCursor

  在Map对象的ToolUsed事件的ToolNum参数为当前所激活的工具

  捕捉MoveFeature工具句柄

  ‘传过来的参数:X1,Y1,X2,Y2

  Select case ToolNum

  ……..

  Case MoveFeature

  Dim Lyr AS MapXlib.Layer

  Dim Ftr AS MapXlib.Feature

  Dim Ftrs AS MapXlib.Features

  Dim Xe,Ye AS Double ‘坐标偏移量

  Xe=X2-X1

  Ye=Y2-Y1

  Set Lyr=Mainmap.Layers.Item(LayerName)

  Set Ftrs=Lyr.Selection.Clone ‘将当前图层中选定的集合复制到Ftrs变量中

  MainMap.AutoRedraw=False

  Lyr.Editable=True

  For J=1 to Ftrs.Count

  Set Ftr=Ftrs.Item(J)

  Ftr.Offset Xe,Ye

  Ftr.Update True

  Next

  Lyr.Refresh

  Lyr.Editable=False

  MainMap.AutoRedraw=True

  SET lyr=Nothing

  SET Ftr=Nothing

  End Select

  (3)、样式更新

  Dim NewStyle AS MapXLib.Style

  ‘初始赋值

  Set Lyr=MainMap.Layers.Item(LayerName)

  Set Ftrs=Lyr.AllFeatures

  Set NewStyle=Ftrs.Item(1).Style

  ‘设置样式

  With NewStyle

  .SymbolType = miSymbolTypeBitmap

  .SymbolBitmapSize = 24

  .SymbolBitmapTransparent = False

  .SymbolBitmapName = "YIEL2-32.BMP"

  End With

  ‘更新

  MainMap.AutoRedraw=False

  Lyr.Editable=True

  SET Ftr.Style=NewStyle

  Ftr.Update True

  Lyr.Refresh

  Lyr.Editable=False

  MainMap.AutoRedraw=True

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值