【求教】检测两个图形的形状是否一致如何实现,十万火急!!
正在做的一个课题是不同期矢量地图的变化检测,已经解决了投影变换问题,但是地物的变化至今没有头绪,听说明经通道的高手多,特来求教,希望高手能够帮助我解决这个问题 <p>可以获得图形的点的坐标序列,判断是否相等。</p> <font face="Verdana">Sub Test()<br/> Dim Pt As Variant<br/> Dim i As Integer<br/> Dim Objlw1 As AcadLWPolyline<br/> Dim Objlw2 As AcadLWPolyline<br/> ThisDrawing.Utility.GetEntity Objlw1, Pt, "选择多段线"<br/> ThisDrawing.Utility.GetEntity Objlw2, Pt, "选择多段线"<br/> Dim Cor1 As Variant<br/> Dim Cor2 As Variant<br/> Cor1 = Objlw1.Coordinates<br/> Cor2 = Objlw2.Coordinates<br/> If UBound(Cor1) <> UBound(Cor2) Then<br/> MsgBox "形状不同,顶点数不一致,第一条多线段顶点为" & (UBound(Cor1) + 1) / 2 & "第二条多线段顶点数为:" & (UBound(Cor2) + 1) / 2<br/> Exit Sub<br/> End If<br/> For i = 2 To UBound(Cor1)<br/> If Cor1(i) - Cor1(i - 2) <> Cor2(i) - Cor2(i - 2) Then<br/> MsgBox "形状不同,不同的顶点为:" & (CInt(i / 2) - 1)<br/> Debug.Print i<br/> Exit Sub<br/> End If<br/> Next<br/> MsgBox "形状相同"<br/>End Sub</font> 读dxf 可判断 坐标,图层,线形等是否一致
页:
[1]