sanju2323 发表于 2022-7-5 20:28:57

我想让lisp在第

我希望lisp在立面标签的每个多段线的开始和结束处

标记样本。图纸

SLW210 发表于 2022-7-5 20:36:52

我将你的帖子转移到AutoLISP、Visual LISP和DCL论坛。
 
请在与您的问题最密切相关的适当论坛上发布。

BIGAL 发表于 2022-7-5 20:44:18

首先,你可以尝试使用vl编写lisp,你可以得到PLINE的co ORD及其提升
 
<p>(vl-load-com)</p><p>(setq obj1 (vlax-ename->vla-object (car (entsel "\npick pline"))))</p><p>(setq coords (vlax-safearray->list (vlax-variant-value(vla-get-coordinates obj1)))) ; 1st 2 variables are start last 2 are end pt</p><p>(setq ht (vla-get-elevation obj1)) ; height of pline</p><p></p>

sanju2323 发表于 2022-7-5 20:47:43

我已经得到了它的lisp文件,但在这个lisp文件很少出错。此文件仅生成起始边缘。我需要用多段线生成两边的边。
 
(定义C:MCL()
(setq ss(ssget’((0。“LWPOLYLINE”)))
(setq sslngth(sslength ss))
(Setq idx 0)
(重复sslngth
(setq ename(ssname ss(setq sslngth(1-sslngth)))
(setq edata(entget ename))
(setq xy(cdr(Assoc 38 edata)))
(setq xy1(cdr(Assoc 10 edata)))
(setq xx(rtos xy 2 3))
(命令“text”xy1 2 30 xx“”)
)
)

hanhphuc 发表于 2022-7-5 20:56:38

 
尝试

(defun c:test (/ ss i ed p sz)
(initget 6)
(if (not(setq sz (getdist "\nText size : ")))
(setq sz (getvar "textsize")))
(prompt "\nSelect Contour.. ")
(if (setq ss (ssget ":L" '((0 . "LWPOLYLINE"))))
   (repeat (setq i (sslength ss))
   (setq ed (entget (ssname ss (setq i (1- i)))))
   (foreach x (list (car (setq p (vl-remove-if ''((x) (/= (car x) 10)) ed))) (last p))
(entmakex (list        '(0 . "TEXT")'(8 . "CONTOUR LABEL")
                (cons 1 (rtos (cdr (assoc 38 ed)) 2 3))
                (cons 40 sz)
                x
                ) ;_ end of list
          ) ;_ end of entmakex
) ;_ end of foreach
   ) ;_ end of repeat
   ) ;_ end of if
(princ)
) ;_ end of defun

我希望比格尔现在能理解即时消息,帮助OP

sanju2323 发表于 2022-7-5 21:00:10

谢谢你,先生,这是我的工作

hanhphuc 发表于 2022-7-5 21:10:31

不客气,请阅读这篇关于新手代码标签的文章
http://www.cadtutor.net/forum/showthread.php?9184-代码发布指南

sanju2323 发表于 2022-7-5 21:14:57

你能在LISP中进行更改吗。例如,设置文字高度“2”,然后选择多段线或样条线

hanhphuc 发表于 2022-7-5 21:21:08

#5更新(红色)
 
您可以设置默认值,
命令:textsize

sanju2323 发表于 2022-7-5 21:25:37

先生,您能给我lisp文件中上次的更改吗?我想在最近的多段线上生成一次。
页: [1] 2
查看完整版本: 我想让lisp在第