找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1041|回复: 4

[编程申请]:需要一个“只显示”命令

[复制链接]

已领礼包: 30个

财富等级: 恭喜发财

发表于 2007-9-15 20:04:07 | 显示全部楼层 |阅读模式

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

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

×
我工作时需要处理的图形很复杂,非常需要一个“只显示”命令。

在处理很麻烦的图形时,如果能将当前需要处理的对象只显示在屏幕上,而没有关系的对象让它隐藏起来,是非常有好处的,很最普遍的例子便是抓点时便不会抓到无关对象的点,填充时可以让一些对象隐藏起来,容易计算。

但是AUTOCAD没有这样的命令,尽管AUTOCAD提供了层这样的工具,但前提条件是必须建新层,并且将对象分门别类的放进去,这还是很麻烦,不象三维软件在处理装配时,可以很轻松的选定几个对象,用“只显示”命令就可以将其它对象隐藏掉。

我的同事写了下面的一段小代码,可以用点选的方式选中一个对象,将它隐藏掉,redrawr 的时候又再次显示,据他说这是AUTOCAD中一个函数的功能。但我象,如果在这个函数的基础上,进行加工,也许能实现“只显示”功能。即选中一个或几个对象,使用“只显示”命令,图面上便只有选中的对象,剩下的对象便全部隐藏起来。

非常渴望得到这样的命令,各位大大请帮帮我。


(defun c:d()
  (setq hiog(entsel "\n选择要隐藏的物体:"))
  (setq hisname(cdr (car (entget (car hiog)))))
  (redraw hisname 2)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 11283个

财富等级: 富甲天下

发表于 2007-9-18 18:05:41 | 显示全部楼层
[php]
;xdcad  zxq0220
(DEFUN C:D ()
(SETVAR "CMDECHO" 0)
(IF (AND (PRINC  "\n选择要保留显示的物体:") (SETQ SS (SSGET))) (PROGN
  (COMMAND "SELECT" "ALL" "R" SS "")
  (SETQ SS (SSGET "P"))
  (SETQ I -1)
  (REPEAT (SSLENGTH SS)
   (REDRAW (SSNAME SS (SETQ I (1+ I))) 2)
  )
))
(SETVAR "CMDECHO" 1)
(PRINC)
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

发表于 2007-9-18 19:42:36 | 显示全部楼层
  1. (defun c:vvs (/ ss)
  2.   (vl-load-com)
  3.   (setvar "cmdecho" 0)
  4.   (princ "\n选择要保留显示的物体:")
  5.   (if (setq ss (ssget))
  6.     (progn
  7.       (command "select" "all" "r" ss "")
  8.       (setq ss (ssget "p"))
  9.       (vla-eval
  10.         (vlax-get-acad-object)
  11.         "For Each obj In Thisdrawing.ActiveSelectionSet:obj.Visible = FALSE:Next Obj"
  12.       )
  13.     )
  14.   )
  15.   (princ)
  16. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-9-18 22:20:30 | 显示全部楼层
这个功能很有意义。谢谢提出问题的作者,谢谢解答问题的二位高手!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 30个

财富等级: 恭喜发财

 楼主| 发表于 2007-9-22 14:13:51 | 显示全部楼层
非常激动!
谢谢青铜长老ZXQ0220 !
谢谢斑主EACHY,
也谢谢GYSYJ,

这段程序对我非常重要,事实上对于任何一个每天的工作都是在画图的人来说,都是非常的重要。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-20 17:56 , Processed in 0.180167 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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