谢谢李!因此,如果我理解正确,我会这样做:- (defun c:test ()
- (setq ss1 (LM:ssget "\nSelect 1st Polyline: " '("_+.:E:S" ((0 . "POLYLINE")))))
- (setq ss2 (LM:ssget "\nSelect 2nd Polyline: " '("_+.:E:S" ((0 . "POLYLINE")))))
- (if (and ss1 ss2)
- (progn
- (setq ent1 (vlax-ename->vla-object (ssname ss 0))
- ent2 (vlax-ename->vla-object (ssname ss 0))
- delta 0
- maxdist 0
- pt1 (vlax-curve-getPointAtDist ent1 delta)
- pt2 (vlax-curve-getPointAtDist ent2 delta))
- (Repeat (vla-get-Length ss1)
- (setq maxdist1 (vlax-curve-getdistatpoint pt1 pt2))
- (setq delta (+ delta 0.01))
- (setq pt1 (vlax-curve-getPointAtDist ent1 delta)
- pt2 (vlax-curve-getPointAtDist ent2 delta))
- (if (< maxdist maxdist1)
- (setq maxdist maxdist1)
- ))
- )
- )
- (if (> maxdist 0)
- (strcat "The maximum distance between the entities is:\n\n"
- (rtos maxdist 2 2)
- )
- )
-
- )
我的问题是,我似乎无法让它正常工作。我是否误解了如何使用vlax曲线函数? |