明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2261|回复: 13

[求助]如何判断一个点是否在一个点集里面?

  [复制链接]
发表于 2004-3-28 10:30:00 | 显示全部楼层 |阅读模式
我用(if (member pt1 ptlist)(princ ""))怎么不可以的?怎样才能判断呢?
发表于 2004-3-28 10:45:00 | 显示全部楼层
完全可以
 楼主| 发表于 2004-3-28 12:38:00 | 显示全部楼层
但是下面这句话,却被认为是语法错误,
(setq pt1 (getpoint))
(if (pt1)) 然后我换成(if (not (pt1)))还是不行啊
发表于 2004-3-28 13:12:00 | 显示全部楼层
(if pt1 ....)
发表于 2004-3-28 13:21:00 | 显示全部楼层
这样一来没问题 (setq pt1 (getpoint))
(if pt1 (princ)) 至于(member pt1 ptlist),可能这里的pt1是经过其它的方式得到,也许是精度问题,并不能得到正确的结果.可以用vl-princ-to-string把它们都转化成字符串再比较
 楼主| 发表于 2004-3-28 14:19:00 | 显示全部楼层
(PrinC "\nX方向是否有约束?(没有直接回车!)")
(InitGet 7 "Yes No")
(setq key (GetKWord "[Yes/No]<No>: "))
(if (= key "Yes")
(setq z1 (list 1)
v (getreal "\输入X方向预定位移单位cm)")
z2 (list v)
)
(setq z1 (list 0))
z2 (list 0))
)
) 麻烦斑竹帮我看看,为什么说 “错误: 参数太多: ”
发表于 2004-3-28 15:39:00 | 显示全部楼层
你的括号不匹配。右括号多两个。
发表于 2004-3-28 15:46:00 | 显示全部楼层
没啊,括号多了,你是不是没贴完?
发表于 2004-3-28 19:36:00 | 显示全部楼层
(setq z1 (list 0))后怎么还跟 z2 (list 0))这句话,这样的话,对IF语句参数是太多了,我想应为(setq z1 (list 0) z2 (list 0)) 总而言之,好象setq语句结束了但后面还拖类似setq的定义,括号是多了。 编程时文本格式应尽量格式化,这样可读性好,查错更容易。全文应为: (PrinC "\nX方向是否有约束?(没有直接回车!)")
(InitGet 7 "Yes No")
(setq key (GetKWord "[Yes/No]<No>: "))
(if (= key "Yes")
(setq z1 (list 1)
v (getreal "\输入X方向预定位移单位cm)")
z2 (list v)
)
(setq z1 (list 0);这儿多了一个括号
z2 (list 0))
)
)

[glow=255,red,2]文字
发表于 2004-3-29 11:43:00 | 显示全部楼层

  1. (defun ptisIN (pt pts)

  2.         (member 'T (mapcar '(lambda (x) (equal x pt 1e-5)) pts))

  3. )
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-10-1 15:43 , Processed in 0.187120 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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