通过直线连接点以形成
你好我有很多测量点,我必须与一个公共点连接
然后我必须用一条弧连续连接这些点,形成一个圆。
是否有任何lisp或代码来简化工作。
请参阅随附的样本图纸。
课程-2。图纸 这应该让你开始。。。
(defun c:Test (/ ss pt)
(princ "\nSelect points: ")
(if (and (setq ss (ssget '((0 . "POINT"))))
(setq pt (getpoint "\nSpecify center point to connect points: "))
)
((lambda (i p)
(while (setq e (ssname ss (setq i (1+ i))))
(entmake (list '(0 . "LINE")
'(100 . "AcDbEntity")
'(100 . "AcDbLine")
(assoc 10 (entget e))
(cons 11 p)
)
)
)
)
-1
(trans pt 1 0)
)
)
(princ)
) 谢谢
您的代码可以很好地满足我需求的第一部分。也希望我的第二部分有所收获。我使用命令PLINE并选择第一个点,然后对于下一个点选项,我通过键入A使用子命令弧,然后通过键入S使用第二个选项,并选择另一个点作为终点,然后键入S,依此类推。
这是粘贴的命令历史记录中的文本。
指定起点:
当前线宽为0.0000
指定下一点或[弧(Arc)/半宽(Halfwidth)/长度(Length)/撤消(Undo)/宽度(Width)]:a
指定圆弧的端点或
[角度/中心/方向/半宽度/直线/半径/秒pt/Undo/Width]:s
指定圆弧上的第二个点:
指定圆弧终点:
指定圆弧的端点或
[角度/中心/闭合/方向/半宽度/直线/半径/秒pt/Undo/Width]:s
指定圆弧上的第二个点:
指定圆弧终点:
指定圆弧的端点或
[角度/中心/闭合/方向/半宽度/直线/半径/秒pt/Undo/Width]:s
指定圆弧上的第二个点:
指定圆弧终点:
指定圆弧的端点或
[角度/中心/闭合/方向/半宽度/直线/半径/秒pt/Undo/Width]:
谢谢
我理解你的第二个要求,正如我所说,这应该让你开始。你自己试过吗? 在你的多条帖子的另一个分支中(看看混淆和分解思路是多么容易),我对你的方法的几何有效性感到不安。
按照这种方式,您可以创建16个不相切的单独圆弧(当您正确执行时)。这就是权力想要的吗?
图片显示了效果(夸张)
页:
[1]