cadamrao 发表于 2022-7-6 09:06:27

多边形命令

你好
任何人都可以使用3条边(内接在圆中)发出多边形命令(快捷方式)
提前感谢
amr公司

BlackBox 发表于 2022-7-6 09:20:11

尝试正常运行该命令,确保使用所需的操作,然后编写一个使用完全相同选项的LISP。完成测试后。
 
如果您有任何问题,请在此处发布代码。

Tharwat 发表于 2022-7-6 09:22:33


(if (setq p (getpoint "\n Specify center of Polygon :"))
(vl-cmdf "_.polygon" 3 p "" pause)
)

cadamrao 发表于 2022-7-6 09:34:10

需要lisp以节省时间并减少选取和类型的数量

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

 
ً带上你的密码,我们会帮你的。
 
我的帖子首先是一个lisp,但最后没有defun、name和princ,如果你需要它,你可以添加while。

BlackBox 发表于 2022-7-6 09:44:18

 
@塔尔瓦特-
 
三边多边形=三角形:眨眼:
 
此外,不要使用空字符串(“”)作为选项,而是考虑将所需选项明确指定为“内接”如果用户上次选择“关于圆的外接圆”,空字符串(“”)将不会返回OP中所需的“内接圆”。从技术上讲,“I”、“_I”或其他字符也会起作用。。。在阅读代码时,为了清晰起见,我更喜欢详细说明选项。我还看到命令中的字母选项在不同版本之间发生了变化。只是需要注意的事情。
 
显然,做最适合你的事。

alanjt 发表于 2022-7-6 09:54:30

(defun c:tri (/ point)
(if (setq point (getpoint "\nSpecify triangle center point: "))
   (command "_.polygon" 3 "_non" point "_inscribed")
)
(princ)
)

Lee Mac 发表于 2022-7-6 09:59:11

一个简单的宏:
 
^C^C_.polygon;3;\_I;\

troggarf 发表于 2022-7-6 10:10:19

不久前发现的。我不知道是从哪里弄来的。它将搜索整个图形,并将一个外接多边形添加到圆中。我现在没有时间尝试调整它。所以你可以试着这样做或寻求帮助。
; Searches for circles in a drawing and puts circumscribed polygons outside of these circles.
(defun c:polyincirc (/ ss i sset e)
(if (setq ss (ssget "_x" '((0 . "CIRCLE"))))
   (repeat
   (setq i (sslength ss))
   (setq sset (ssname ss (setq i (1- i))))
   (setq e (entget sset))
   (command "_.polygon" 3 "_non" (cdr (assoc 10 e)) "_c" (cdr (assoc 40 e)))
   )
   (princ "\n No Circle(s) found")
   )
(princ)
)
页: [1]
查看完整版本: 多边形命令