坐标加数字的问题(新手)
本帖最后由 流_星 于 2013-4-14 06:35 编辑ptt是坐标,pt1也是个坐标,想让纵坐标增加0.93,高手们我修改咱改
(setq ptt (list (car pt1) (+(cadr pt1) 0.93)))
这样写说参数类型错误 numberp :nil
你每次给的都是片段,有时很难看出错误,就本例而言,看不出什么错误,错误应该不在这个地方。
与点相关的错误可能会有2D点与3D点的错误,CAD很多时候对2D点和3D点是敏感的,不过错误提示不是这样。
还有一种可能,就是此时点PT1没有赋值或赋值类型不对。
建议初学者使用acad自身的编辑器Vlisp来书写、调试Lisp程序,Vlisp编辑器可以设置断点进行追踪,也可以对变量进行观察。 (mapcar '(lambda (x) (mapcar '+ x '(0 0 0.93))) (list ptt pt1...ptn))
返回纵坐标加了0.93的点表(ptt pt1....ptn) 那样写不行吗? 本帖最后由 流_星 于 2013-4-14 11:42 编辑
我没有说清楚
pt1是老坐标
让横坐标不变,纵坐标增加0.93
新坐标给ptt 阿霸jun 发表于 2013-4-14 00:21 static/image/common/back.gif
(mapcar '(lambda (x) (mapcar '+ x '(0 0 0.93))) (list ptt pt1...ptn))
返回纵坐标加了0.93的点表(ptt...
哈哈没有看懂能解释一下吗 本帖最后由 yoyoho 于 2013-4-14 07:30 编辑
指令: (setq pt1 (getpoint))
(-885.5 -148.0 0.0)
指令: (setq ptt (list (car pt1) (+(cadr pt1) 0.93) 0))
(-885.5 -147.07 0)
好,我试试 yoyoho 发表于 2013-4-14 07:27 static/image/common/back.gif
指令: (setq pt1 (getpoint))
(-885.5 -148.0 0.0)
指令: (setq ptt (list (car pt1) (+(c ...
(setq ptt (getpoint))
(153148.0 134656.0 0.0)
_$ (setq pt1 (mapcar '+ ptt '(0 0 0.93)))
(153148.0 134656.0 0.93) 新手学习了
页:
[1]