编辑具有共中心顶点的长折线
首先,如果我重新发明轮子,感到自由**** Hidden Message ***** 对不起,我不明白你对这个问题的解释 我希望能够以类似抓地力的方式编辑 lwpolyline。当顶点彼此重叠时,autocad 希望拉伸两个顶点。我一次只想要一个。
到目前为止,我有这个:
(defun c:polygrip (/)
(setq x (entsel "\nPick polyline to edit near vertex: ")
pt (osnap (cadr x) "nea")
ent (entget (car x))
pt_lst nil
)
(foreach z ent
(if (= (car z) 10)
(setq pt_lst (append pt_lst (list (cdr z))))
)
)
(setq cnt 0)
(repeat (- (length pt_lst) 1)
(setq a (nth cnt pt_lst)
b (nth (+ 1 cnt) pt_lst)
)
(if (= (+ (distance a pt) (distance pt b)) (distance a b))
(setq seg (append seg (list a b cnt)))
)
(setq cnt (+ 1 cnt))
)
(if (> (distance (car seg) pt) (distance (cadr seg) pt))
(setq vert (cadr seg))
(setq vert (car seg))
);; old vertex
(setq vurt (getpoint "\n Pick new vertex. ")
vurt (list (car vurt)(cadr vurt))) ;; new vertex
(setq ent (subst (cons (cons 10 vurt) (cdr (member (cons 10 vert) ent))) (member (cons 10 vert) ent) ent))
(entmod ent)
(entupd (cdr (assoc -1 ent)))
)
,我认为我的subst命令失败了。
但现在是午餐时间,罗伊饿了。
我知道代码很丑,但是在我运行它之后,我可以让它变得更漂亮。
谢谢 在属性窗口中单击顶点停靠栏后,点击到达那里所需的箭头,然后键入不同于所看到的X或Y坐标。那将使它变得容易控制/容易接近。通过选择下面的一个坐标,点击鼠标箭头,然后你可以在屏幕上选择一个新的点..
页:
[1]