乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 59|回复: 3

【求教】检测两个图形的形状是否一致如何实现,十万火急!!

[复制链接]

1

主题

1

帖子

1

银币

初来乍到

Rank: 1

铜币
5
发表于 2010-5-8 14:25:00 | 显示全部楼层 |阅读模式
正在做的一个课题是不同期矢量地图的变化检测,已经解决了投影变换问题,但是地物的变化至今没有头绪,听说乐筑天下的高手多,特来求教,希望高手能够帮助我解决这个问题
回复

使用道具 举报

7

主题

14

帖子

2

银币

初来乍到

Rank: 1

铜币
42
发表于 2010-5-18 16:09:00 | 显示全部楼层
可以获得图形的点的坐标序列,判断是否相等。
回复

使用道具 举报

3

主题

9

帖子

3

银币

初来乍到

Rank: 1

铜币
21
发表于 2010-6-5 14:43:00 | 显示全部楼层
Sub Test()
    Dim Pt As Variant
    Dim i As Integer
    Dim Objlw1 As AcadLWPolyline
    Dim Objlw2 As AcadLWPolyline
    ThisDrawing.Utility.GetEntity Objlw1, Pt, "选择多段线"
    ThisDrawing.Utility.GetEntity Objlw2, Pt, "选择多段线"
    Dim Cor1 As Variant
    Dim Cor2 As Variant
    Cor1 = Objlw1.Coordinates
    Cor2 = Objlw2.Coordinates
    If UBound(Cor1)  UBound(Cor2) Then
        MsgBox "形状不同,顶点数不一致,第一条多线段顶点为" & (UBound(Cor1) + 1) / 2 & "第二条多线段顶点数为:" & (UBound(Cor2) + 1) / 2
        Exit Sub
    End If
    For i = 2 To UBound(Cor1)
        If Cor1(i) - Cor1(i - 2)  Cor2(i) - Cor2(i - 2) Then
            MsgBox "形状不同,不同的顶点为:" & (CInt(i / 2) - 1)
            Debug.Print i
            Exit Sub
        End If
    Next
    MsgBox "形状相同"
End Sub
回复

使用道具 举报

1

主题

9

帖子

2

银币

初来乍到

Rank: 1

铜币
13
发表于 2010-6-6 11:24:00 | 显示全部楼层
读dxf 可判断 坐标,图层,线形等是否一致
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-1 15:16 , Processed in 0.244002 second(s), 60 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表