[求助]怎样求圆弧的中点
我在学一个程序,其中要用导圆弧的中点,但不知道怎样求出来,还望高手们指点一下,谢谢 check here:<br/><a href="http://discussion.autodesk.com/forums/thread.jspa?threadID=363118&tstart=17850">http://discussion.autodesk.com/forums/thread.jspa?threadID=363118&tstart=17850</a> <p>这样求出来的好像是终点,不是中点</p><p>(defun midPtarc (arc / arcList radius ctrPt startPt endPt midChrd mid)<br/>(setq arcList (entget arc)<br/>radius (cdr (assoc 40 arcList))<br/>ctrPt (cdr (assoc 10 arcList))<br/>startPt (polar ctrPt (cdr (assoc 50 arcList)) radius)<br/>endPt (polar ctrPt (cdr (assoc 51 arcList)) radius)<br/>midChrd (mapcar '* (mapcar '+ startpt endpt) '(0.5 0.5 0.5))<br/>mid (polar ctrPt (angle ctrPt midChrd) radius)<br/>)<br/>)</p> (defun c:test()(vl-load-com)
(setq ent(car(entsel)))
(setq ent_obj(vlax-ename->vla-object ent))
(setq mid_point;|中点坐标|;(vlax-curve-getpointatdist ent_obj (/ (vlax-curve-getdistatparam ent_obj(vlax-curve-getendparam ent_obj))2)))
(command "line" mid_point (mapcar '+ mid_point '(0 10)) "");测试
(princ)
)
谢谢啦 (defun tt4 ()
(setq en (car (entsel)))
(setq pt_end (vlax-curve-getEndPoint en))
(setq d_end (vlax-curve-getDistAtPoint en pt_end))
(setq pt_mid (vlax-curve-getpointatdist
en
(/ d_end 2)
)
)
)
页:
[1]