我有一份挑战性的工作要做
各位专家好,我有一项挑战性的工作要做,请帮帮我。
我想画一个尺寸为米的圆+另一个直径为1/2的圆+直径为1/4的圆+直径为1/3的圆+直径为1/6的圆,所有其他圆都是根据第一个圆的尺寸,第一个圆应该是米。
例如:
圆直径为-60 m。
第1个以上的圆应为直径60m的圆的偏移量,计算同一圆直径的1/2,并且应具有不同的颜色或类似的层,所有其他圆应具有相同的偏移量 这里有一些快速而肮脏的东西,图层或颜色的变化取决于你。
仅在Bricscad中测试
你可以从绘制第一个圆开始,然后选择它。。。
;;GET DATA
( setq el (entget (car (entsel)))
r (cdr (assoc 40 el))
half (/ r 2.0)
third (/ r 3.0)
quarter (/ r 4.0)
sixth (/ r 6.0)
midpt (cdr (assoc 10 el))
)
;;DRAW CIRCLES
(command "_.CIRCLE" midpt half)
(command "_.CIRCLE" midpt third)
(command "_.CIRCLE" midpt quarter)
(command "_.CIRCLE" midpt sixth) 我正在使用autocad如何在cad中使用此代码 在再次阅读你的帖子后,我才意识到:
第一个圆的同心圆是向外还是向内?
向内使用上述代码
相反,向外发展是这样的:
half (+ r (/ r 2.0)) third (+ r (/ r 3.0)) quarter (+ r (/ r 4.0)) sixth (+ r (/ r 6.0))
这就是我正在寻找的方法,这只是主油箱1/2dia的示例。 我现在明白你的意思了。我发布的所有代码都是针对命令行的。您正在寻找要加载和运行的内容。将代码保存到外部文件并将其加载到图形中。绘制坦克圆圈,并在命令行中键入命令测试。它会提示您选择一个实体(在本例中,是代表水箱的圆)。
(defun c:test ()
;;GET DATA
( setq el (entget (car (entsel)))
r (cdr (assoc 40 el))
half (+ r (/ r 2.0))
third (+ r (/ r 3.0))
quarter (+ r (/ r 4.0))
sixth (+ r (/ r 6.0))
midpt (cdr (assoc 10 el))
)
;;DRAW CIRCLES
(command "_.CIRCLE" midpt half)
(command "_.CIRCLE" midpt third)
(command "_.CIRCLE" midpt quarter)
(command "_.CIRCLE" midpt sixth)
) 在AutoCAD lisp中,可以至少以两种或三种方式加载例程。一种选择是使用APPLOAD。
在测试时,我通常将lisp文件拖放到图形中。 41012
这就是我正在寻找的方法,这只是主油箱1/2dia的示例。
LibertyOne请查看我17号帖子的图片 这对于测试来说很好,但是加载lisp例程时要做什么?你使用创业套件吗?Acad。lsp?阿卡多克。lsp?
页:
[1]
2