wimal 发表于 2022-7-6 08:29:40

选择所有具有

请你帮我写一个lisp代码;立即选择选择窗口内具有相同名称(点)的所有块。
然后我需要改变那个块的比例因子。

Tharwat 发表于 2022-7-6 08:35:49


 

(defun c:TesT (/ sc ss i sn)
;;; Tharwat 13. Dec. 2011 ;;;
(if (and (setq sc (getdist "\n Specify Scale factor :"))
          (setq ss (ssget "_:L" '((0 . "INSERT") (2 . "dot"))))
   )
   (progn (repeat (setq i (sslength ss))
            (setq sn (ssname ss (setq i (1- i))))
            (command "_.scale" sn "" (cdr (assoc 10 (entget sn))) sc)
          )
          (sssetfirst nil ss)
   )
   (princ)
)
(princ)
)

Lee Mac 发表于 2022-7-6 08:38:54

q选择块,然后选择属性>比例

Lee Mac 发表于 2022-7-6 08:39:23

另外,通过修改DXF组码:
 
(defun c:scaleblocks ( / ent inc sel )
   (if
       (and
         (setq sel (ssget "_:L" '((0 . "INSERT") (2 . "dot"))))
         (setq *scale*
               (cond
                   (   (getdist
                           (strcat "\nSpecify Scale <"
                               (rtos (setq *scale* (cond (*scale*) (1.0)))) ">: "
                           )
                     )
                   )
                   (   *scale*   )
               )
         )
       )
       (repeat (setq inc (sslength sel))
         (setq ent (entget (ssname sel (setq inc (1- inc)))))
         (foreach x '(41 42 43) (setq ent (subst (cons x *scale*) (assoc x ent) ent)))
         (entmod ent)
       )
   )
   (princ)
)

wimal 发表于 2022-7-6 08:45:18

谢谢。
两个文件都工作正常。但方式不同。
 
请您再编写一个代码来选择高度为100的单行文本并更改高度。如果你这样做,这对我的cad工作非常方便。

Lee Mac 发表于 2022-7-6 08:46:08

再次:QSELECT>PROPERTIES

alanjt 发表于 2022-7-6 08:48:48

再次:QSELECT>PROPERTIES

Tharwat 发表于 2022-7-6 08:54:27

 
大多数用户会忘记使用Lisp在Cad中附加的基本命令,尽管如此
我建议使用它们。
 

(defun c:TesT (/ sc ss i sn)
;;; Tharwat 13. Dec. 2011 ;;;
(if (and (setq sc (getdist "\n Specify new height :"))
          (setq ss (ssget "_:L" '((0 . "TEXT,MTEXT") (40 . 100))))
   )
   (repeat (setq i (sslength ss))
            (setq sn (ssname ss (setq i (1- i))))
            (entmod (subst (cons 40 sc) (assoc 40 (entget sn))(entget sn)))
   )
   (princ)
)
(princ)
)

alanjt 发表于 2022-7-6 08:58:10

因为人们不断发布错误的代码,而不仅仅是通知他们现有的命令。

Tharwat 发表于 2022-7-6 09:00:38

希望你不要谈论注释性文本。
页: [1] 2
查看完整版本: 选择所有具有