明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3543|回复: 10

[基础] 坐标加数字的问题(新手)

[复制链接]
发表于 2013-4-13 23:02 | 显示全部楼层 |阅读模式
本帖最后由 流_星 于 2013-4-14 06:35 编辑

ptt是坐标,pt1也是个坐标,想让纵坐标增加0.93,高手们我修改咱改
(setq ptt (list (car pt1) (+(cadr pt1)   0.93)))
这样写说参数类型错误 numberp :nil

发表于 2013-4-14 07:36 | 显示全部楼层
你每次给的都是片段,有时很难看出错误,就本例而言,看不出什么错误,错误应该不在这个地方。
与点相关的错误可能会有2D点与3D点的错误,CAD很多时候对2D点和3D点是敏感的,不过错误提示不是这样。
还有一种可能,就是此时点PT1没有赋值或赋值类型不对。
建议初学者使用acad自身的编辑器Vlisp来书写、调试Lisp程序,Vlisp编辑器可以设置断点进行追踪,也可以对变量进行观察。
回复 支持 1 反对 0

使用道具 举报

发表于 2013-4-14 00:21 | 显示全部楼层
(mapcar '(lambda (x) (mapcar '+ x '(0 0 0.93))) (list ptt pt1...ptn))
返回纵坐标加了0.93的点表(ptt pt1....ptn)
发表于 2013-4-14 00:22 | 显示全部楼层
那样写不行吗?
 楼主| 发表于 2013-4-14 06:25 | 显示全部楼层
本帖最后由 流_星 于 2013-4-14 11:42 编辑

我没有说清楚
pt1是老坐标
让横坐标不变,纵坐标增加0.93
新坐标给ptt
 楼主| 发表于 2013-4-14 06:57 | 显示全部楼层
阿霸jun 发表于 2013-4-14 00:21
(mapcar '(lambda (x) (mapcar '+ x '(0 0 0.93))) (list ptt pt1...ptn))
返回纵坐标加了0.93的点表(ptt  ...

哈哈没有看懂能解释一下吗
发表于 2013-4-14 07:27 | 显示全部楼层
本帖最后由 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)                                         
 楼主| 发表于 2013-4-14 11:44 | 显示全部楼层
好,我试试
发表于 2013-4-14 19:54 | 显示全部楼层
yoyoho 发表于 2013-4-14 07:27
指令: (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)
发表于 2016-5-6 15:55 | 显示全部楼层
新手学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-20 17:54 , Processed in 0.204664 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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