给出三个点怎么写程序可以画出一个三维弧线
--------------------------------------------------
CAD的做图元的命令,好多只支持二维,所以在三维空间时,就不灵了。
我知道,line 和poine可以支持三维空间的。也就是说可以直接在三维空间画。如果能在程序中,转换了坐标系,这个问题就变得简单多了。
我想了三天三夜,问题终于想出来了,写了个程序。结果很简单。
 - ;;;三个点 可以画出一个三维弧线
- ;;; 直接回车,可以测试三个点(2000 1800 0.0) (4993.39 473.385 3000.0) (3496.69 -853.23 1500.0)
- (defun C:tt( / pt1 pt2 pt3 )
- (setq pt1 (getpoint "\n请输入一个点"))
- (setq pt2 (getpoint "\n请输入二个点"))
- (setq pt3 (getpoint "\n请输入三个点"))
- (if (null pt1 )(setq pt1 '(2000 1800 0.0)))
- (if (null pt2 )(setq pt2 '(4993.39 473.385 3000.0)))
- (if (null pt3 )(setq pt3 '(3496.69 -853.23 1500.0)))
- (command "ucs" "3P" pt1 Pt2 Pt3)
- (command "arc" (trans pt1 0 1) (trans pt2 0 1) (trans pt3 0 1))
- (command "ucs" "")
- (princ)
- )
|