代码已更新 pBe,
感谢您的修改,非常感谢您的帮助,最重要的不仅仅是艺术作品本身,而是为了帮助他人而早起的努力,这是令人钦佩的。
致以最诚挚的问候, pBe,
它做得很好,首先,它在N方面做得向后。减去400.00而不是210.50,E。210.0也是一样,但我做了相应的编辑,它工作了。
只是想知道那是用LSP、Diesel或其他语言写的?你能告诉我哪里是有用的开始,或者可以找到某种资源来学习基础知识吗。回到过去,我记得宏非常整洁,带有括号和((命令:))重复,但您的宏非常简短,但功能强大。无论如何,这对我和任何感兴趣的人来说都是鼓舞人心的。
再次感谢,
和平
哎呀。。我的错误
我们的会员网站LeeMac
我在那里开始AFRALisp
另一个JefferyPSanders pBe,
谢谢你的信息,这是一个很好的开始,我很感兴趣。
直到下一次
同一个世界,同一个爱,同一个和平 pBe,
您是否可以修改Lisp,使其只执行与手动选取的文本相同的功能,这些文本在值(xxxxx.xxx)之前没有字母N,也没有字母E。只有文本,如12345.678表示图表中的坐标。
所以Lisp应该可以选择减法400.00,210.50和3.700,然后我们选择文本(xxxxx.xxx)。
仅供参考,北距始终以2xxxx开始。xxx,东距从3xxx开始。xxx。不知道这有没有帮助。
再次感谢你。
另外,我附上了图纸的PDF,该图纸在图表中是要编辑的坐标。对不起,我不能,超出限制 制作另一个或合并“注释或图表”选项?
EL呢。价值观 pBe,
对不起,我忘了,海拔都是从35x开始的。xxx,需要减去3.700。
谢谢 如果我能看看你的图表是什么样子的,那会有帮助的。
Anyhoo试试这个:
(defun c:SuBVal (/ ss i en prf v clr)
(if (not opt) (setq opt "A"))
(initget "A C")
(setq opt
(cond ( (getkword
(strcat "\nChoose <" opt ">: ")
)
)
( opt )
)
)
(if (setq ss (ssget ":L" (list '(0 . "TEXT")
(cons 1 (if (eq opt "A") "E. #*,EL. #*,N. #*" "#*")))))
(repeat (setq i (sslength ss))
(setq en (ssname ss (setq i (1- i))))
(if (and(setq prf (substr (setq str (cdr (assoc 1 (entget en)))) 1 3))
(setq v(cond ((eq prf "E. ")400.00 )
((eq prf "N. ")210.50)
((eq prf "EL.") (setq str (substr str 2)
prf (strcat prf " ")) 3.70 )
((wcmatch prf "35*")3.70 )
((wcmatch prf "3*")400.00 )
((wcmatch prf "2*")210.50 )
)
)
)
(progn
(vla-put-textstring (setq en (vlax-ename->vla-object en))
(if (eq opt "A")
(strcat prf (rtos (- (distof (substr str 3)2) v) 2 3))
(rtos (- (distof str 2) v) 2 3)
)
)
(vla-put-color en 1))
)
)
)
(princ)
)
pBe,
希望图表上有这个。以前无法加载它。
谢谢
074-2300-110-270-010 03.图纸
页:
1
[2]