showshong 发表于 2016-4-18 13:01:49

为何Visual LISP提取顶点数据与CAD中读取的不同

大家好,

小弟学习Visual LISP时间不长,在提取多段线顶点坐标时吸取了版上各位大家的经验,但是发现一个问题,在提取我的一张图形时,发现Visual LISP提取的数据与CAD提取的数据不一致,差别非常大。并且当把图形复制到一个新的CAD文件中,则不会出现该问题,所以想请问大家有没有遇到这个问题,应该怎么解决,谢谢!

CAD在附件中,由于CAD文件查过了1M,所以压缩了一下,请多包涵,谢谢大家了。


CAD中读取的顶点坐标,第一个顶点坐标。


Visual LISP中视图->浏览图形数据库->浏览选择集,选择该曲线,读取的顶点数据,第一个顶点坐标和CAD中读取的数据差别太大。其他数据也类似,都差别挺大的。

ll_j 发表于 2016-4-18 14:49:45

你这个附件版本太高,打不开,也就不看了,你检查一下当前UCS是不是世界坐标,问题可能出在这里。
建议你看看trans函数的说明,多段线坐标涉及世界坐标、当前坐标和对象坐标,要搞懂还是蛮复杂的,不过说到简单点就是,实体组码坐标数据基本都是对应于世界坐标的。

showshong 发表于 2016-4-18 18:27:16

ll_j 发表于 2016-4-18 14:49 static/image/common/back.gif
你这个附件版本太高,打不开,也就不看了,你检查一下当前UCS是不是世界坐标,问题可能出在这里。
建议你看 ...

非常感谢,我先看看世界坐标问题,如果不行,在换成低点版本的再想您请教。

showshong 发表于 2016-4-18 18:38:04

ll_j 发表于 2016-4-18 14:49 static/image/common/back.gif
你这个附件版本太高,打不开,也就不看了,你检查一下当前UCS是不是世界坐标,问题可能出在这里。
建议你看 ...

非常感谢,发现的确是世界坐标的问题,通过UCS W就变回世界坐标了。

另外附上判断是否为世界坐标的判断,

XY轴原点处有一个小的方框即为世界坐标,无方框是自定义坐标。
页: [1]
查看完整版本: 为何Visual LISP提取顶点数据与CAD中读取的不同