乐筑天下

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

[编程交流] 块att的插入位置

[复制链接]

171

主题

447

帖子

276

银币

中流砥柱

Rank: 25

铜币
860
发表于 2022-7-5 20:22:04 | 显示全部楼层 |阅读模式
有些组始终包含一个名为dot1的块
通过选择组(不直接在特定块上拾取)
我可以找出名为dot1的块的插入位置吗。
回复

使用道具 举报

1

主题

475

帖子

481

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 20:39:11 | 显示全部楼层
如果PICKSTYLE=1,ssget函数将选择所有组对象,然后处理sset,测试名称为“dot1”的“INSERT”(assoc 0和2),如果存在,则获取插入点(assoc 10)
 
希望有帮助
亨里克
回复

使用道具 举报

171

主题

447

帖子

276

银币

中流砥柱

Rank: 25

铜币
860
发表于 2022-7-5 20:43:53 | 显示全部楼层
谢谢,我相信你给了我正确的道路。
我使用了以下代码。
  1. (setq itemset (ssget))

 
回复

使用道具 举报

1

主题

475

帖子

481

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 21:00:29 | 显示全部楼层
作为演示:
  1. (defun c:demo ( / ent i pick pt ss)
  2. (setq pick (getvar 'PICKSTYLE))
  3. (setvar 'PICKSTYLE 1)
  4. (if (and (princ "\nSelect an object from a group: ")
  5.    (setq ss (ssget))
  6.      )
  7.    (repeat (setq i (sslength ss))
  8.      (setq ent (entget (ssname ss (setq i (1- i)))))
  9.      (if (and (= (cdr (assoc 0 ent)) "INSERT")
  10.        (= (cdr (assoc 2 ent)) "dot1")
  11.   )
  12. (progn
  13.   (setq pt (cdr (assoc 10 ent)))
  14.   (princ "The insertion point from dot1 is: ")
  15.   (princ pt)
  16. )
  17.      )
  18.    )
  19. )
  20. (setvar  'PICKSTYLE pick)
  21. (princ)
  22. )

 
亨里克
回复

使用道具 举报

171

主题

447

帖子

276

银币

中流砥柱

Rank: 25

铜币
860
发表于 2022-7-5 21:03:05 | 显示全部楼层
谢谢。
你已经给了我完整的代码。
我记得你以前也帮过我。
再次感谢。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-5 21:14:31 | 显示全部楼层
为什么不只是这个过滤器?
 
  1. (setq ss (ssget '((0 . "INSERT") (2 . "dot1"))))
回复

使用道具 举报

1

主题

475

帖子

481

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 21:25:56 | 显示全部楼层
不客气,维马尔
很高兴我能帮忙
 
 
很好,我的朋友。
干杯
亨里克
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-11 08:56 , Processed in 1.052204 second(s), 66 queries .

© 2020-2025 乐筑天下

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