usprecast 发表于 2022-7-5 22:12:12

用于插入块的Lisp

我得到了帮助,得到了这个命令。首先,我想插入一个块作为lisp命令。我想要的是能够键入FH并将我想要的块带到我想要的位置,并且我能够使用这个lisp命令:
 
 
(定义C:FH()
 
(命令“插入”“消火栓dyn”)
 
)
 
现在我要做的是将这个块缩放到1,因为右边是将其缩放到0,我还希望它位于我已经创建的层上。(我已经有了一个带有图层和块的模板,并试图简化将块插入不同位置的操作,因为有时我有一项很长的工作,需要走很多英里,我不想回到起点,沿路复制并粘贴5英里)

Tharwat 发表于 2022-7-5 22:32:45

欢迎来到CADTutor。
 
这里面有什么?
注意:在程序中更改图层名称,如下所示,以粉红色显示。
 
 

(defun c:test (/ p)
;; Tharwat 24.11.2014    ;;
(if (tblsearch "BLOCK" "fire hydrant-dyn")
   (while (setq
            p (getpoint
                "\n Specify point to locate block < fire hydrant-dyn >:"
            )
          )
   (entmake (list '(0 . "INSERT")
                  (cons 10 (trans p 1 0))
                  '(2 . "fire hydrant-dyn")
                  (cons 8 "Layername")
                  '(41 . 1.0)
                  '(42 . 1.0)
                  '(43 . 1.0)
            )
   )
   )
   (princ
   "\n Block name < fire hydrant-dyn > is not found in drawing !!"
   )
)
(princ)
)

BIGAL 发表于 2022-7-5 23:08:19

增强功能是有一个查找表,因此当您输入“fire hyrdrant dyn”时,它会自动进入“fire HYD”层
 
更好的方法是使用工具选项板并拾取消防栓,作为隐藏宏的一部分,它将放在正确的层上,或者像我们使用幻灯片库一样。

ttray33y 发表于 2022-7-5 23:25:58

工具选项板可以做到这一点,不需要lisp
页: [1]
查看完整版本: 用于插入块的Lisp