乐筑天下

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

[编程交流] 完成NCOPY Co的LISP代码

[复制链接]

95

主题

477

帖子

383

银币

后起之秀

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

铜币
475
发表于 2022-7-5 18:51:54 | 显示全部楼层
ncopy的行为是否与其他命令不同?我已经试着将选择传递给它,但我无法让它正常工作。
  1. (defun c:ncopy2 (/ *error* whilestop ent oldecho)
  2. (defun *error* (msg)
  3.    (if oldecho
  4.      (setvar 'cmdecho oldecho)
  5.    )
  6.    (if (not
  7.          (member msg '("Function cancelled" "quit / exit abort"))
  8.        )
  9.      (princ (strcat "\nError: " msg))
  10.    )
  11.    (princ)
  12. )
  13. (setq oldecho (getvar 'cmdecho))
  14. (setvar 'cmdecho 0)
  15. (setq whilestop t)
  16. (while whilestop
  17.    (setvar 'errno 0)
  18.    (setq ent (entsel "\nSelect nested objects to copy: "))
  19.    (cond
  20.      ((= 52 (getvar 'errno))
  21.       (setq whilestop nil)
  22.      )
  23.      ((null ent)
  24.       (princ "\nYou missed. Try again.")
  25.      )
  26.      ((not (wcmatch (setq typ (cdr (assoc 0 (entget (car ent)))))
  27.                     "INSERT"
  28.            )
  29.       )
  30.       (princ "\nNot a valid object, try again.")
  31.      )
  32.      ;| ((/= (vla-get-IsXref (vlax-ename->vla-object (car ent))))
  33.       (princ "\nNot a valid object, try again.")
  34.      )|;
  35.      (t
  36.       (command "_.ncopy" ent "" "_non" '(0 0) "_non" '(0 0))
  37.       (princ)
  38.      )
  39.    )
  40. )
  41. (setvar 'cmdecho oldecho)
  42. (princ)
  43. )
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 18:55:19 | 显示全部楼层
是的,NCOPY使用嵌套选择,类似于使用nentsel/nentselp获得的选择。
回复

使用道具 举报

20

主题

338

帖子

323

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
100
发表于 2022-7-5 18:58:55 | 显示全部楼层
我最近研究了一些代码,这些代码的工作方式类似于NCOPY,但会获取与使用objectDBX和外部参照的临时副本选择的嵌套对象相同层上的所有对象。我花了很多时间编写代码和测试。我成功地做到了这一点,尽管在继续测试、尝试覆盖所有可能的场景时,我得出了这样的结论:对于那些不了解代码在做什么的人来说,代码是危险的。尤其是涉及Civil 3D对象时,它可以复制从属对象和选定对象。我终于意识到最好还是放弃这个想法。我也不喜欢NCOPY的工作方式,想要一个更好的解决方案。我知道这可能对你的努力没有帮助,但请相信我,这可能是一个复杂的过程,结果可能不是最初想要的。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-13 00:07 , Processed in 0.648506 second(s), 56 queries .

© 2020-2025 乐筑天下

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