海贼凌源 发表于 2015-8-23 12:27:48

做一条线段,上面有一条垂线段,在距线段端点的20cm处

本帖最后由 海贼凌源 于 2015-8-23 12:29 编辑

做一条线段,上面有一条垂线段,在距线段端点的20cm处,但我写出的代码并没有达到我的预期,请问大神这个错误存在于哪里?

(defun c:ad1 ()
(setq p1 (getpoint "\n选取第一个点:"))
(setq p2 (getpoint p1 "\n选取第二个点:"))
(command "line" p1 p2 "")                                  ;做出线段
(setq ang (angle p1 p2))
(setq p3 (polar p1 (- 0 ang) 200))                     ;找出在线段线距p1点20cm
(setq p4 (polar p3 (+ ang (/ pi 2)) 1000))         ;p4在由p3点引出的垂线段上100cm处
(command "line" p1 p3 "")
(command "line" p3 p4 "")
prin1
)

edata 发表于 2015-8-23 12:35:15

(- 0 ang)是不正确
(defun c:ad1 ()
(setq p1 (getpoint "\n选取第一个点:"))
(setq p2 (getpoint p1 "\n选取第二个点:"))
(command "line" p1 p2 "")                                  ;做出线段
(setq ang (angle p1 p2))
(setq p3 (polar p1 ang 200))                     ;找出在线段线距p1点20cm
(setq p4 (polar p3 (+ ang (/ pi 2)) 1000))          ;p4在由p3点引出的垂线段上100cm处
(command "line" "non" p1 "non" p3 "")
(command "line" "non" p3 "non" p4 "")
prin1
)

海贼凌源 发表于 2015-8-23 13:00:27

edata 发表于 2015-8-23 12:35 static/image/common/back.gif
(- 0 ang)是不正确

请问
(command "line" "non" p1 "non" p3 "")
这里为什么要加"non"

edata 发表于 2015-8-23 13:04:23

海贼凌源 发表于 2015-8-23 13:00 static/image/common/back.gif
请问
(command "line" "non" p1 "non" p3 "")
这里为什么要加"non"

临时设置捕捉为 无 none
避免因为捕捉而导致绘图出错,这样可以不用去关闭捕捉。
反之,也可以设置临时捕捉,"end" "mid"之类的。

海贼凌源 发表于 2015-8-23 13:09:29

edata 发表于 2015-8-23 13:04 static/image/common/back.gif
临时设置捕捉为 无 none
避免因为捕捉而导致绘图出错,这样可以不用去关闭捕捉。
反之,也可以设置临时 ...

哦,谢谢

xyp1964 发表于 2015-8-23 14:20:34

(defun c:tt ()
(if (and (setq p1 (getpoint "\n选取第一个点: "))
         (setq p2 (getpoint p1 "\n选取第二个点: "))
      )
    (progn
      (command "line" "NON" p1 "NON" p2 "")
      (setq ang (angle p1 p2)
            p3 (polar p1 ang 200)
            p4 (polar p3 (+ ang (/ pi 2)) 1000)
      )
      (command "line" "NON" p3 "NON" p4 "")
    )
)
(princ)
)

海贼凌源 发表于 2015-8-25 13:53:20

xyp1964 发表于 2015-8-23 14:20 static/image/common/back.gif


谢谢回答
页: [1]
查看完整版本: 做一条线段,上面有一条垂线段,在距线段端点的20cm处