lisp求垂直点,圆弧、线上最近点

  • A+
所属分类:CAD二次开发

在lsp里面怎么求垂直点了?已知一条线断或者圆弧,已知一点,求这一点在直线上的最近点,最近点肯的是垂直距离已知点才近了。

以下代码求求垂直距离。不是线段的已知端点哦。

(defun C:ddd(/ pt ss pt1 )

(vl-load-com)
(setq pt (getpoint"\n选择点:"))
(setq ss(entsel"\伙计百科选择对象"))
(if(/= ss nil);如果有对象
(progn
(setq ss(car ss));如<图元名: 6eeff240>

(setq ss (vlax-ename->vla-object ss));;转换对象
(setq pt1 (vlax-curve-getclosestpointto ss pt));;求出对象垂直距离点
)
)
(princ pt1)
(command "LINE" pt1 pt "");连线验证
)

复制

 

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: