MAPX增加一个图层,在上面再加个图元

来源:互联网 发布:centos桌面没有图标 编辑:程序博客网 时间:2024/04/29 14:15
 

增加一个图层,在上面再加个图元。但我在这里是创建一个永久的层,你可以试着改成先创建一个临时层 , 再在上面加个图元


Dim mylyr As MapXLib.Layer
Dim i, j, fldnum, rowcnt As Integer

'下面程序创建一个新的层(tab文件)
Dim LayerInfoObject As New LayerInfo
Dim flds As New MapXLib.Fields
Dim feafac As MapXLib.FeatureFactory
Dim ftr As MapXLib.Feature
Dim pnt As New MapXLib.Point
Dim lyr As MapXLib.Layer
Dim newstyle As New Style

 


'设置点对象样式

With newstyle

.SymbolType = miSymbolTypeBitmap

.SymbolBitmapSize = 24

.SymbolBitmapTransparent = False

.SymbolBitmapName = "YIEL2-32.BMP"

End With

 

flds.AddStringField "name", 20
flds.AddNumericField "xcor", 13, 6
flds.AddNumericField "ycor", 13, 6

LayerInfoObject.Type = miLayerInfoTypeNewTable
LayerInfoObject.AddParameter "FileSpec", App.Path & "/maptable/tmp.tab"
LayerInfoObject.AddParameter "Name", "tmp"
LayerInfoObject.AddParameter "Fields", flds
LayerInfoObject.AddParameter "OverwriteFile", "1"
' LayerInfoObject.AddParameter "AutoCreateDataset", 1 '创建数据集

Map1.Layers.Add LayerInfoObject

Set lyr = Map1.Layers(1) '取得第一层,即新建层
Set feafac = Map1.FeatureFactory '取得地图所有对象集

Map1.AutoRedraw = False
lyr.Editable = True


'创建一个点

pnt.Set Map1.CenterX, Map1.CenterY
Set ftr = feafac.CreateSymbol(pnt, newstyle)

lyr.AddFeature ftr '增加一个点对象
lyr.Refresh

原创粉丝点击