内容摘要 | |||||
很多线划图数据进ArcSDE库中都会有些对象转换不进去。这些对象有很大一部分是由于数据本身有自相交的情况。如果这些线划图数据只是用来做底图,而不需要做对象分析。则可以采用数据简单化操作后再转换入ArcSDE中。具体操作如下例子: | |||||
过程描述 | |||||
Private Sub SimplifyPolyLine(pPolyline As esriGeometry.Polyline) '通过QI取得线对象的拓扑操作接口 Dim pTopologicalOperator As esriGeometry.ITopologicalOperator Set pTopologicalOperator = pPolyline '执行简单化操作 pTopologicalOperator.Simplify '简单化操作完了的数据可以转换入ArcSDE中了 '下面代码用来展示简单化后的线数据的每个部分 Dim pGeometryCollection As esriGeometry.IGeometryCollection Set pGeometryCollection = pPolyline Dim i As Long For i = 0 To pGeometryCollection.GeometryCount - 1 Dim TempPolyline As esriGeometry.IGeometryCollection Dim TempPath As esriGeometry.IPath Set TempPolyline = New esriGeometry.Polyline Set TempPath = pGeometryCollection.Geometry(i) TempPolyline.AddGeometry TempPath MapControl1.FlashShape TempPolyline Set TempPath = Nothing Set TempPolyline = Nothing Next i End Sub 备注:点、线、面都可以执行简单化操作。可以根据不同的业务需求来使用这些功能。 |