明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2933|回复: 14

[源码] 给出三个点,可以画出一个三维弧线的程序

[复制链接]
发表于 2014-4-16 11:36 | 显示全部楼层 |阅读模式
给出三个点怎么写程序可以画出一个三维弧线
--------------------------------------------------
CAD的做图元的命令,好多只支持二维,所以在三维空间时,就不灵了。
我知道,line 和poine可以支持三维空间的。也就是说可以直接在三维空间画。如果能在程序中,转换了坐标系,这个问题就变得简单多了。


我想了三天三夜,问题终于想出来了,写了个程序。结果很简单。



  1. ;;;三个点 可以画出一个三维弧线
  2. ;;; 直接回车,可以测试三个点(2000 1800 0.0) (4993.39 473.385 3000.0) (3496.69 -853.23 1500.0)

  3. (defun C:tt( /  pt1 pt2 pt3 )
  4. (setq pt1 (getpoint "\n请输入一个点"))
  5. (setq pt2 (getpoint "\n请输入二个点"))
  6. (setq pt3 (getpoint "\n请输入三个点"))
  7. (if (null pt1 )(setq pt1 '(2000 1800 0.0)))
  8. (if (null pt2 )(setq pt2 '(4993.39 473.385 3000.0)))
  9. (if (null pt3 )(setq pt3 '(3496.69 -853.23 1500.0)))
  10. (command "ucs" "3P" pt1 Pt2 Pt3)
  11. (command "arc" (trans pt1 0 1) (trans pt2 0 1) (trans pt3 0 1))
  12. (command "ucs" "")
  13. (princ)
  14. )




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

评分

参与人数 2明经币 +2 收起 理由
434939575 + 1
ll_j + 1 学Lisp就应该有这种精神

查看全部评分

发表于 2014-4-16 12:02 | 显示全部楼层
不容易啊,三天三夜,三更半夜,DA DA DA.
发表于 2014-4-16 14:59 | 显示全部楼层
三天三夜就能写出这么好的程序
精神面貌
佩服
发表于 2014-4-16 15:02 | 显示全部楼层
P服P服
发表于 2014-4-16 15:48 | 显示全部楼层
本帖最后由 q3_2006 于 2014-4-16 15:52 编辑
  1. (defun c:tt ( / p1 p2 p3)
  2. (setvar "osmode" 3)
  3. (vl-cmdf "ucs" "3p"
  4.   (setq p1 (getpoint "\n第一点:"))
  5.   (setq p2 (getpoint "\n第二点:"))
  6.   (setq p3 (getpoint "\n第三点:"))
  7.   )
  8.   (vl-cmdf "arc" (trans p1 0 1) (trans p2 0 1) (trans p3 0 1))
  9.   (vl-cmdf "ucs" "w")
  10. )

点评

CTC
命令: TT 第一点: 第二点: 第三点:应用程序错误: 命令输入时发送的类型无效  发表于 2015-5-15 23:35
发表于 2014-4-16 16:14 | 显示全部楼层
赞一个~为我们学习提供了宝贵的方法~
发表于 2014-6-6 21:05 | 显示全部楼层
高手顶一个
发表于 2014-7-19 23:24 | 显示全部楼层
路过学习一下。
发表于 2014-7-24 23:39 | 显示全部楼层
向楼主学习,一直坚持学习
发表于 2015-5-15 22:40 | 显示全部楼层
谢谢分享!这个确实不容易。对TRANS和ucs配合还不理解。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-27 12:54 , Processed in 0.298439 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表