pvsvprasad 发表于 2022-7-5 17:46:21

尊敬的先生:,
这里我附上一个样本完整的图纸。请通过合适的lisp程序查找并帮助我。
 
谢谢你,
顺致敬意,
完整图纸样本。图纸

BIGAL 发表于 2022-7-5 17:48:19

如果项目的坐标不相关,则只需抓取所有对象并拾取近似中心,保持正交并镜像。蓝色圆圈是否与其他物体有某种关联?就像这句话,在我看来,我们被要求做一些如此简单,不需要Lisp程序的事情。

pvsvprasad 发表于 2022-7-5 17:51:37

 
尊敬的先生:,
我有很多画要修改成镜子。我需要快速镜像lisp例程。请帮帮我。
 
谢谢你,
顺致敬意,

BIGAL 发表于 2022-7-5 17:55:52

你在第一篇文章中改变了规则,你没有提到很多画。有多少100? 如果它是手动执行的。一个快速而肮脏的lisp是关闭蓝色圆圈层,然后获取extmax extmin并进行镜像,再打开蓝色圆圈并保存。将dwg名称列表添加到脚本并快速完成。这是你想要的吗?

ReMark 发表于 2022-7-5 18:00:52

我认为OP想要BIGAL的是一个充分开发的lisp例程来处理他自己以外的人编写的任务。

pvsvprasad 发表于 2022-7-5 18:03:24

尊敬的先生:,
谢谢你的提问。
 
我需要后文#4中提到的镜像程序。i、 e,手动绘制一条线,并在该线的中点应用镜像。
 
我需要通过lisp例程执行相同的上述任务,而不需要为选定对象绘制线和手动选择中点。
 
 
谢谢你,
顺致敬意,

BIGAL 发表于 2022-7-5 18:06:02

我们只需要一些规则就可以做一些事情,而不必不断更改代码。
 
哪些层要关闭,而不是包含在镜像中。
用于设置镜像线“max Y”“min Y”的对象只是点吗?见帖子#4
 
它可以通过脚本自动生成任意多个dwg。
 

open dwg1 (load "mymirror") close Y
open dwg2 (load "mymirror") close Y
open dwg3 (load "mymirror") close Y

 

(setq ss (ssget "x" '((0 . "point")(410 . "model"))))
(setq ymin 1000000.0)
(setq ymax 0.0)
(repeat (setq x (sslength ss))
(setq pt (assoc 10 (entget (ssname ss (setq x (- x 1))))))
(if (< (caddr pt) ymin)
(setq ymin (caddr pt))
)
(if (> (caddr pt) ymax)
(setq ymax (caddr pt))
)
)

(alert (strcat "Ymax " (rtos ymax 2 3) "Ymin " (rtos ymin 2 3)))
; draw line and mirror ran out of time

pvsvprasad 发表于 2022-7-5 18:10:48

 
尊敬的先生:,
谢谢你的帮助。请描述如何使用你的代码,我知道层开/关。您的代码只能由选定的对象运行。
 
是的,你的概念是正确的。i、 e从选定对象中取Y的最小值和最大值,找出中点,然后启动镜像。
 
谢谢你,
顺致敬意,
页: 1 [2]
查看完整版本: 镜像选定对象的Lisp