请帮忙修改一下,设置就出错原因(已解决)
本帖最后由 kwok 于 2013-3-2 16:54 编辑下面的为什么在输入S设置就出错,提示; 错误: 参数类型错误: 二维/三维点: "S"
请指帮修正一下,谢谢!
不知为什么
(defun c:ttt ();;;;;;;;;;;定2点画矩形
(setq p1 (getpoint "\n起点: "))
(if (null rdh)
(setq rdh 50))
(initget "S ")
(if (= (setq p2 (getpoint p1 (strcat "\n终点,或[设置(S)]:<高度" (rtos rdh) ">")))
"S"
)
(if (setq s (getdist (strcat "\n设置高度:<" (rtos rdh) ">")))
(setq rdh s)
)
)
(setq p3 (polar p2 (+ (angle p2 p1) (* 0.5 pi)) rdh)
p4 (polar p1 (+ (angle p2 p1) (* 0.5 pi)) rdh)
)
(apply 'vl-cmdf (list "_pline" p1 p2 p3 p4 "c"))
(princ)
)
本帖最后由 Andyhon 于 2013-3-1 14:43 编辑
当 P2 = "S"
(polar p2 (+ (angle p2 p1) (* 0.5 pi)) rdh)
Andyhon 发表于 2013-3-1 14:42 static/image/common/back.gif
当 P2 = "S"
(polar p2 (+ (angle p2 p1) (* 0.5 pi)) rdh)
我是想需要修改高度时可以改(只需改一次),改完可以记忆,下次就可以直接用,这样每次就用已有的高度
直接画出矩形.
但就是在修改时出错,请问要这样效果可以怎么改? ...可以记忆...
建议参考 UReal 自定义函数...
老帖有...... 能力有限搞不定,
期待出手帮忙. ;;; 定2点画矩形
(defun c:ttt ()
(setq p1 (getpoint "\n起点: ")
rdh (Ureal 0 "" "\n设置高度: " (cond (*RDH*) (50)))
p2 (getpoint p1 "\n终点: ")
p3 (polar p2 (+ (angle p2 p1) (* 0.5 pi)) rdh)
p4 (polar p1 (+ (angle p2 p1) (* 0.5 pi)) rdh)
*RDH*rdh
)
(vl-cmdf"_pline" p1 p2 p3 p4 "c")
(princ)
)
本帖最后由 kwok 于 2013-3-1 19:25 编辑
Andyhon 发表于 2013-3-1 18:57 static/image/common/back.gif
;;; 定2点画矩形
(defun c:ttt ()
(setq p1 (getpoint "\n起点: ")
不是我想的效果,
我想的是指定2点就画出矩形,但需要修改高度时,通过输入s来设置修改高度,
(而且设定高度时可以输入也可以直接在图上指定2当距离)
如果不输入s,指定第二点就直接已已有高度画出矩形,
在1楼的码能修改到吗?谢谢!
具体操作是:
1, 指定第一点,然后提示可以通过输入S设定高度和显示已有默认高度50(如果设定过高度就显示新的高度)
2,如果输入S,重设高度(设高度可以输入或直接在图上量取)(修改过的高度能记忆,方便下次调用)
3,如果不输入S,直接指定第二点,画出矩形.
本帖最后由 ljpnb 于 2013-3-2 10:20 编辑
(defun c:ttt ()
;;;;;;;;;;;定2点画矩形
(setq p1 (getpoint "\n起点: "))
(setq key T)
(if (null rdh)
(setq rdh 50)
)
(initget "S ")
(while (and key
(= (setq p2
(getpoint p1
(strcat "\n终点,或[设置(S)]:<高度" (rtos rdh) ">")
)
)
"S"
)
)
(if p2
(setq key nil)
)
(if (setq s (getdist (strcat "\n设置高度:<" (rtos rdh) ">")))
(setq rdh s
key T
)
)
(initget "S ")
)
(setq p3 (polar p2 (+ (angle p2 p1) (* 0.5 pi)) rdh)
p4 (polar p1 (+ (angle p2 p1) (* 0.5 pi)) rdh)
)
(apply 'vl-cmdf (list "_pline" p1 p2 p3 p4 "c"))
(princ)
)
页:
[1]