插入块并缩放
你好我需要帮助,我想在我现在所在的地方扩大我的障碍
(defun c:MyBlock (/ pt)
(setq pt1 (getpoint "\nPick Insertion point."))
(setq pt2 (getpoint "\nPick Insertion point."))
(setq d (command "dist" pt1 pt2))
(command "-insert" "1" "_non" pt1 (nth 0 d) "" "") ////y scale depends on user input the rotation can wait
(princ)
)
不行,我想明天用
非常感谢。 用您发布的代码快速重写:
一些改动,sysvar的改动会很好地解决这个问题。 你是否认为X与Y的比值,其中X为1,Y取决于拾取点?
我不确定你的意图,但我想这样做:
(defun c:MyBlock (/ pt)
(setq pt1 (getpoint "\nPick Insertion point."))
(setq pt2 (getpoint pt1 "\nPick Insertion point."))
(command "-insert" "1" "_non" pt1 1 (1+ (/ 1 (distance pt1 pt2))) "")
(princ)
)
编辑:ooops。。 再加上更多保险
(tblsearch "BLOCK" "1")
啊!良好的ol预防措施。是 啊为什么不呢,你永远不能太确定 如果块驻留在SFSP中,则不需要这样做。
你好
这个SFSP是什么? SFSP=支持文件搜索路径
我说不需要TBLSEARCH,因为块要么通过引用插入(TBLSEARCH=Non-nil),要么通过“find”(FINDFILE)插入。第一次插入后,引用将用于后续插入。 这是正确的,
但所有已经给出的例程都表明,该块是从当前图形插入的,而不是外部的。
谢谢 我不确定您试图在规模方面实现什么,但这可能是构建代码的一种方法:
(defun c:test ( / block p1 p2 )
(setq block "1")
(if
(or
(tblsearch "BLOCK" block)
(setq block (findfile (strcat block ".dwg")))
)
(if
(and
(setq p1 (getpoint "\nSpecify Insertion Point: "))
(setq p2 (getpoint "\nNext Point: "))
)
(command "_.-insert" block "_S" (distance p1 p2) "_R" 0.0 "_non" p1)
)
(princ "\nBlock not found.")
)
(princ)
)
页:
[1]
2