|
发表于 2004-4-13 08:01:00
|
显示全部楼层
根据你的已知条件应该是求不出三角形的,不过按你的程序意思倒是可以了,这个样子就很简单了,你为什么会做的那么复杂?数学不够扎实啊...
三角形的三边是有限制的,你最好在程序里做个判断:
(defun c:text1( / J1 A B C cosA sinA s a)
(> s b)
(> s c)
)
(progn
(setq J3x (* B (/ (- (+ (* B B) (* A A)) (* C C)) (* 2.0 A B))))
(setq J3y (sqrt (- (* B B) (* j3x j3x))))
(setq j3 (list (+ (car j1) j3x) (+ (cadr j1) j3y)))
(command "pline" J1 J2 J3 "c")
)
(princ "\n数据有误,程序退出!")
)
(princ)
) |
|