找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1891|回复: 14

[求助] 问一个很菜的问题o(╯□╰)o

[复制链接]
发表于 2014-3-26 11:51:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
本意是画一条水平直线,在屏幕点取一个点,然后输入第二点与第一点的水平距离,画线。
(defun C:li()
  (SETQ P1(GETPOINT "点:"));起始点
  (SETQ x(GETREAL "距离:"))
  (SETQ P2(list(car p1)(+(cdr p1)x)))
  (COMMAND "line" P1 P2)
  )
虽然知道这问题简单,但作为一个新手o(╯□╰)o,不会啊,自己mark的运行不了,不知道哪里问题。求助。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-26 14:42:46 来自手机 | 显示全部楼层
(setq p2 (list (+ (car p1) x) (cadr p1) 0.))
你这对点没概念!

点评

再请教一下,那个 car p1不是一个表吗?为什么 +(car p1)x可以运算的?一个变量加一个表可以的吗?  详情 回复 发表于 2014-3-26 15:10
刚开始学,而且没编程基础,才看几天书,大神轻拍  详情 回复 发表于 2014-3-26 14:50
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 1 反对 0

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

发表于 2014-3-26 12:02:49 | 显示全部楼层
C:li,你定义的命令是li,你输入这个命令就可以了

点评

运行不了,有错误  详情 回复 发表于 2014-3-26 14:33
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-26 12:04:59 来自手机 | 显示全部楼层
cdr p1是表,非数

点评

请问要如何修改呢  详情 回复 发表于 2014-3-26 14:33
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 7071个

财富等级: 富甲天下

发表于 2014-3-26 12:28:39 | 显示全部楼层
cdr /= Cadr
----------------
(+(cdr p1)x)
==>
(+ (cadr p1) x)

点评

按你的方法改了,画出来的是竖直线了  详情 回复 发表于 2014-3-26 14:36
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-26 14:33:09 | 显示全部楼层

请问要如何修改呢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-26 14:33:43 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2014-3-26 12:02
C:li,你定义的命令是li,你输入这个命令就可以了

运行不了,有错误
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-26 14:36:21 | 显示全部楼层
Underway 发表于 2014-3-26 12:28
cdr /= Cadr
----------------
(+(cdr p1)x)

按你的方法改了,画出来的是竖直线了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-26 14:50:00 | 显示全部楼层
st788796 发表于 2014-3-26 14:42
(setq p2 (list (+ (car p1) x) (cadr p1) 0.))
你这对点没概念!

{:soso_e101:}刚开始学,而且没编程基础,才看几天书,大神轻拍
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-26 15:10:21 | 显示全部楼层
st788796 发表于 2014-3-26 14:42
(setq p2 (list (+ (car p1) x) (cadr p1) 0.))
你这对点没概念!

再请教一下,那个  car p1不是一个表吗?为什么 +(car p1)x可以运算的?一个变量加一个表可以的吗?

点评

另外推荐你去看一下我发的贴 很多小白的问题。。。。 http://bbs.xdcad.net/thread-668190-1-1.html  详情 回复 发表于 2014-3-26 15:22
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 685个

财富等级: 财运亨通

发表于 2014-3-26 15:20:54 | 显示全部楼层
本帖最后由 ysq101 于 2014-3-26 15:22 编辑
  1. ;直接帮你改好。。。新手问题只有新手来答了。。
  2. (defun C:li()
  3.   (SETQ P1(GETPOINT "点:"));起始点
  4.   (SETQ x(GETREAL "距离:"))
  5.   (SETQ P2(list(+ (car p1)x)(cadr p1))) ;这里。。因为你要画水平线,所以需要加X的数是CAR P1 点表中的第一个
  6.   (COMMAND "line" P1 P2 "");这里加个回车  让LINE结束
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 685个

财富等级: 财运亨通

发表于 2014-3-26 15:22:25 | 显示全部楼层
camyi 发表于 2014-3-26 15:10
再请教一下,那个  car p1不是一个表吗?为什么 +(car p1)x可以运算的?一个变量加一个表可以的吗?

...

另外推荐你去看一下我发的贴

很多小白的问题。。。。
http://bbs.xdcad.net/thread-668190-1-1.html

点评

好的,谢谢推荐  详情 回复 发表于 2014-3-26 16:13
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2014-3-26 15:25:47 | 显示全部楼层
(car p1) 是表的第一个元素,(cdr p1)是除第一元素外所有元素组成的表,(cadr p1)是表的第二个元素,相当于(car (cdr p1))。
你想画的是水平线,应该是x坐标有变化,并且是坐标增加,所以应该这样写:
(setq p2 (list (+ (car p1) x) (cadr p1)))

点评

明白了,谢谢  详情 回复 发表于 2014-3-26 16:11
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-26 16:11:35 | 显示全部楼层
lijiao 发表于 2014-3-26 15:25
(car p1) 是表的第一个元素,(cdr p1)是除第一元素外所有元素组成的表,(cadr p1)是表的第二个元素,相 ...

明白了,谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-26 16:13:10 | 显示全部楼层
ysq101 发表于 2014-3-26 15:22
另外推荐你去看一下我发的贴

很多小白的问题。。。。

好的,谢谢推荐
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-25 00:37 , Processed in 0.222347 second(s), 57 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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