乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 38|回复: 7

[编程交流] 带有列表和cons const的Ssget

[复制链接]

95

主题

477

帖子

383

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
475
发表于 2022-7-5 17:46:42 | 显示全部楼层 |阅读模式
当我使用list和cons时,我有一个关于如何正确格式化ssget的问题(我正在使用Lee的特殊LM:ssget函数,这样我就可以添加文本)。我已经看过afralisp的教程,并尝试应用它,但它不能正常工作。我的代码是
  1. (setq ss
  2.                  (LM:ssget "\nSelect destination object(s): "
  3.                            '(((list (cons 0 ent0))))
  4.                  )
  5.           )
其中ent0为:
  1. (setq ent0 (assoc 0 (entget (car ent))))
回复

使用道具 举报

95

主题

477

帖子

383

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
475
发表于 2022-7-5 17:59:13 | 显示全部楼层
李的函数可以在这里找到:http://www.cadtutor.net/forum/showthread.php?94586-ssget函数的包装器。
回复

使用道具 举报

0

主题

301

帖子

301

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-5 18:11:38 | 显示全部楼层
野马队,
 
耳鼻喉的价值是什么?
 
如果是ENAME,则应使用:
 
  1. (setq ent0 (assoc 0 (entget ent)))

 
根据上述公式,ent0的值将为:(0。“typeofentity”)
意味着你不需要做一个错误
 
因此,使用包装器:
 
  1. (setq ss  (LM:ssget "\nSelect destination object(s): "  (list (list ent0))))
回复

使用道具 举报

95

主题

477

帖子

383

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
475
发表于 2022-7-5 18:16:52 | 显示全部楼层
啊,这很有道理。谢谢,我现在可以选择的东西,现在它只是调试其余的代码哈哈。
回复

使用道具 举报

0

主题

301

帖子

301

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-5 18:24:06 | 显示全部楼层
Broncos15,
 
不客气!!
 
我建议您保留像ent0或ent这样的变量名来表示ENAME。
在您的情况下,filter或flt可能是更好的名称选择。
 
ymg公司
回复

使用道具 举报

95

主题

477

帖子

383

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
475
发表于 2022-7-5 18:35:57 | 显示全部楼层
谢谢ymg3,我将开始将这种编码实践融入我的LISPs。我有一个快速的问题,为什么我必须使用2个不同的列表函数。我理解为什么我需要使用第一个,但我不明白为什么我需要第二个。
回复

使用道具 举报

0

主题

301

帖子

301

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-5 18:43:52 | 显示全部楼层
野马队,
 
对于您的问题,您需要它,因为报价列表中没有任何内容得到评估
例如:
 
  1. '((list ent0)) will return  ((LIST ENT0))

 
因此,用您得到的列表替换报价:
 
  1. (list (list ent0))    --->   (((0 . "ELLIPSE")))

 
包装函数需要一个列表列表作为参数。
该列表中的第一项可以是搜索范围,例如“_X”
然后是筛选子句。但过滤器必须是列表的列表。
 
所以你最终会得到这样的结果:
 
  1. (lm:ssget "\n Your message: " (list "_X" (list ent0)))

ymg公司
回复

使用道具 举报

95

主题

477

帖子

383

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
475
发表于 2022-7-5 18:52:43 | 显示全部楼层
谢谢ymg!这非常有用。我一直在努力学习更多关于LISP编程的知识,所以我真的很感谢你的解释。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-12 23:54 , Processed in 0.361687 second(s), 68 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表