道路の測点を打ったり、幅員描くLISPを書き直そうとしてたら、いいもの見つけた。
導関数
そういえば、微分習ってた時に、接線とかなんとか先生が言ってた気が。
もっと早く気づけばよかったよ。
;;ポリライン上の任意の点においての接線と接線の垂直線を描くVLISP (vl-load-com) (defun c:test( / e_name e_obj pt param pt2 pt3 ) (setq e_name (car (entsel))) (setq e_obj (vlax-ename->vla-object e_name)) (setq pt (getpoint)) (setq param (vlax-curve-getParamAtPoint e_obj pt)) (setq pt2 (vlax-curve-getFirstDeriv e_obj param)) (setq pt3 (vlax-curve-getSecondDeriv e_obj param)) (command "xline" pt (mapcar '+ pt pt2) (mapcar '+ pt pt3) "") )