 - ;三角内切圆,面积
- ;试编的,在2012上运行成功
- (defun getlen(ent)
- (command "lengthen" ent "")
- (getvar "perimeter")
- )
-
- (defun area3(a b c)
- (setq s (* (+ a b c) 0.5))
- (sqrt (* s (- s a) (- s b) (- s c)))
- )
- (defun get3()
- (setq en1(entsel"\n指定第一边"))
- (setq en2(entsel"\n指定第二边"))
- (setq en3(entsel"\n指定第三边"))
- )
- (defun inc3()
- (setq pa (cadr en1))
- (setq pb (cadr en2))
- (setq pc (cadr en3))
- (command "circle" "3P" "tan" pa "tan" pb "tan" pc)
- )
- (defun c:tri_inc_area()
- (get3)
- (inc3)
- (setq a (getlen (car en1)))
- (setq b (getlen (car en2)))
- (setq c (getlen (car en3)))
- (setq ss (area3 a b c))
- (alert (strcat "三角形的面积=" (rtos ss)))
- (prin1)
- )
- (princ "c:tri_inc_area")
|