阅读:4558回复:11
一个合并图层的例子
<P> 要合并的图层类型必须相同
最好字段也都相同 ,不能把同一层合并到同一层 对字段名相同的保持原来的值 Dim frec As MapObjects2.Recordset Dim srec As MapObjects2.Recordset Dim fFld As Object Dim sFld As Object Dim mstr As New MapObjects2.Strings Dim mobj As Object If map1(0)shapeType <> map1(1).shapeType Then MsgBox "图层类型不匹配!请重新选择" Exit Sub End If On Error GoTo errhandle</P> <P> Set flyr = map1(0) Set slyr = map1(1) Set frec = flyr.Records Set srec = slyr.Records If srec.Updatable = True Then '判断该层是否可编辑 For Each fFld In frec.Fields For Each sFld In srec.Fields If fFld.Name = sFld.Name Then If fFld.Name <> "FeatureId" And fFld.Name <> "Shape" Then mstr.Add fFld.Name End If End If Next Next frec.MoveFirst Do While Not frec.EOF With srec .AddNew .AutoFlush = False Set mobj = frec.Fields("Shape").value Set .Fields("Shape").value = mobj If mstr.Count > 0 Then For Each sFld In srec.Fields If mstr.Find(sFld.Name) > -1 Then .Fields(sFld.Name).value = frec(sFld.Name).value End If Next End If .Update End With frec.MoveNext Loop srec.AutoFlush = True srec.StopEditing map1.Refresh Else MsgBox cmbslyr.text ; "层是只读的,请修改属性", vbOKOnly \ vbCritical End If</P> |
|
1楼#
发布于:2004-08-23 12:38
<img src="images/post/smile/dvbbs/em01.gif" />
|
|
|
2楼#
发布于:2004-11-08 18:04
<img src="images/post/smile/dvbbs/em05.gif" />
|
|
3楼#
发布于:2004-11-10 15:39
<img src="http://www.gisempire.com/bbs/Skins/Default/emot/em06.gif">
|
|
4楼#
发布于:2004-11-13 10:13
顶<img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em02.gif" />
|
|
5楼#
发布于:2004-11-15 21:24
如果两个图的字段不同,如何解决这个问题呢?
|
|
6楼#
发布于:2004-11-16 09:04
<img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" />
|
|
|
7楼#
发布于:2004-11-22 10:59
支持!有没有高手知道如何在mo中用VB实现图层的叠加分析功能呢?请大家支持
|
|
8楼#
发布于:2004-11-23 07:51
<img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em02.gif" /> |
|
9楼#
发布于:2005-01-05 14:56
赞一个,日期正需要。<img src="images/post/smile/dvbbs/em02.gif" />
|
|
上一页
下一页