MAPX增加一个图层,在上面再加个图元
2008-11-26 10:28
393 查看
增加一个图层,在上面再加个图元。但我在这里是创建一个永久的层,你可以试着改成先创建一个临时层 , 再在上面加个图元
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
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
相关文章推荐
- 重写FeatureStyleModifier实现更新一个图层中指定的几个图元的样式
- VC对话框+MapX 增加图层,画点 疑难
- VC环境中MapX一次删除图层所有图元
- arcgis server 9.2代码阅读笔记一:在图层中增加一个点
- arcgis server 9.2代码阅读笔记一:在图层中增加一个点
- MapX中使用动态图层AnimationLayer,移动图元时标注和图元分离问题解决办法。
- delphi mapx 获得一个图层的字段
- MapX图层中只显示部分图元
- arcgis server 9.2代码阅读笔记一:在图层中增加一个点
- 为MapX的某个图层添加一个矩形
- VC环境中MapX一次删除图层所有图元
- 用delphi 在Word上面增加一个按钮
- 写一个函数只要调用一次就可以将参数的值增加1
- 编写一个多线程函数实现对数组排序,要求: 1.至少用两个线程 2.数组的元素值可以事先定义好,或者可以从键盘输入(增加一个线程)。 3.用一个线程对数组排序,用另一个线程输出排序结果。 4.保证先排好序,再输出。
- SQL语句笔记,增加一个字段,统计该表内的数据信息
- notepad++ 给所有行首都增加一个空格
- ecshop给文章页增加一个浏览次数
- ObjectARX 获取指定一个图层中的所有实体
- 有关ArrayList增加Map引发的一个BUG
- Mysql-某一列元素同时增加一个值