null. 发表于 2024-8-13 14:15:03

        (apply '(lambda (m v) (mapcar '(lambda (p) (mapcar '+ (mxv m p) v)) lst))(refgeom (vlax-vla-object->ename blk)))
        ;Lst (基于这个块定义位置的点集)
        ;(refgeom (vlax-vla-object->ename blk))(取得OBJ块图元在模形空间的矩阵数据)
        ;(apply '(lambda (m v) (mapcar '(lambda (p) (mapcar '+ (mxv m p) v)) lst))(refgeom (vlax-vla-object->ename blk)))(通过矩阵数据,取得点集在模型空间的实际位置)

qazxswk 发表于 2024-8-13 23:07:06

我抄一下作业先:lol

nyistjz 发表于 2024-8-19 20:20:47

飞雪神光 发表于 2024-8-5 16:12


我试了一下,你的这个程序,对大部分图块都是对的,但对附件中的这个图,是失败的。

代码可能需要再优化的

飞雪神光 发表于 2024-8-20 01:11:20

nyistjz 发表于 2024-8-19 20:20
我试了一下,你的这个程序,对大部分图块都是对的,但对附件中的这个图,是失败的。

代码可能需要再优 ...


代码没问题 图的问题



nyistjz 发表于 2024-8-20 21:45:05

飞雪神光 发表于 2024-8-5 16:12


如附件,这个可以找到角点,但这个角点,无法用下面的办法画矩形。


(command-s "rectang" minpt maxpt)

这个角点,有问题!

飞雪神光 发表于 2024-8-21 00:55:17

nyistjz 发表于 2024-8-20 21:45
如附件,这个可以找到角点,但这个角点,无法用下面的办法画矩形。




你要是查看角点值就会发现他非常大 有10的19次方那么大所以不是无法画矩形 是画出来大到你看不见 根本原因就是 图纸内有一堆看不见的填充 解决方法就是同样过滤掉填充
页: 1 [2]
查看完整版本: 怎样获取这种图块的最小点与最大点