Q1241274614 发表于 2014-8-8 09:48:17

请求空间点位计算系列

1.空间三点角平分线

Gu_xl 发表于 2014-8-8 10:46:03

原理:等腰三角形对边中点即为平分线上点!
(defun pfx (p1 p2 p3)
(setq v1 (mapcar '- p1 p2)
      d1 (distance '(0 0 0) v1)
      v2 (mapcar '- p3 p2)
      d2 (distance '(0 0 0) v2)
      s (/ d1 d2)
      v1 (mapcar '/ v1 (list s s s))
      p1 (mapcar '+ p2 v1)
      )
(mapcar '* '(0.5 0.5 0.5) (mapcar '+ p1 p3)) ;_ 对边中点
)
(defun c:tt()
(if (and
      (setq p1 (getpoint "\n第一点:"))
      (setq p2 (getpoint "\n第二点:"))
      (setq p3 (getpoint "\n第三点:"))
      )
    (progn
      (command "line" "_non" p1 "_non" p2 "_non" p3 "")
      (setq p4 (pfx p1 p2 p3))
      (command "line" "_non" p2 "_non" p4"")
   )
    )
(princ)
)

Q1241274614 发表于 2014-8-8 11:19:56

谢谢,G老大!
页: [1]
查看完整版本: 请求空间点位计算系列