如何循环此例程
我想知道如何让这个程序循环。我希望能够插入属性块,然后当所有属性都被填充后,它会循环回到开始。(定义C:bom()
(SETVAR“attdia”0)
(SETVAR“cmddia”0)
(setq a(getpoint“插入点:”))
(命令“_insert”“bom.dwg”a“”)
(普林斯)
) (DEFUN C:bom (/ a)
(SETVAR "attdia" 0)
(SETVAR "cmddia" 0)
(while (setq a (getpoint "\nInsertion Point: "))
(COMMAND "_.insert" "bom.dwg" "_non" a "" "" "")
)
(PRINC)
) 它只是不断循环插入点,并在不要求属性的情况下插入块 啊,我不知道这是一个属性块。
你可能不得不走另一条路。试试看。。。
(DEFUN C:bom (/ a)
(SETVAR "attdia" 0)
(SETVAR "cmddia" 0)
(while (setq a (getpoint "\nInsertion Point: "))
(COMMAND "_.insert" "bom.dwg" "_non" a)
(while (> (getvar 'cmdactive) 0) (command ""))
(initdia)
(command "_.attedit" "_L")
)
(PRINC)
) 这是可行的。非常感谢。我想我将对此进行更多调整,使其提示“是/否”以继续下一行或停止,如果是,则使其自动将下一个块插入到上一个插入点正下方的1/4”,而不是让其拉出对话框,以便所有条目都是命令提示基。 不客气。
你可能想看看极函数。 我会的,谢谢你。 好吧,因为我几乎不知道如何用极性函数来表示我想要的东西。我需要帮助。 (polar '(0 0 0) (* pi 1.5) 5.)
上述示例将返回点5。点0,0,0的向南英尺(*pi 1.5)(或3pi/2)。 那么是这样吗?
(定义C:bom(/a)
(SETVAR“attdia”0)
(SETVAR“cmddia”0)
(while(setq a(getpoint“\n插入点:”))
(极坐标'(0.0)(*pi 1.5)5。)
(命令“LAYER”S“BORDER01”)
(命令“_insert”“bom.dwg”a“”)
(while(>(getvar'cmdactive)0)(命令“”)
(初始直径)
(命令“_.attedit”“\u L”)
(普林斯)
)
)
页:
[1]
2