明经CAD社区

 找回密码
 注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 429|回复: 5

[讨论] 显示状态管理器!

[复制链接]
发表于 2018-1-8 14:08 | 显示全部楼层 |阅读模式
三维软件solidworks有一个很好的功能,这个功能就是一个display states manager,简单说就是一个隐藏显示状态管理器。

solidworks在制作非常复杂的装配图时(举例说有数千个零件)时,我们需要经常隐藏某些对象,只显示某些对象,在这个隐藏显示状态管理器(display states)的帮助下,我们可以随时把我们现阶段的显示状态存储起来。用一个命令给它命名。
当我们需要重新处理某些特定对象的时候,便可以用一个下拉菜单,把以前存储好的显示状态调出来,这节省了很多的步骤,大量的时间。

Autocad有一个原生的方法,是利用图层配置的方式,但这种方法老实说很不方便,它不但要求分层的时候要非常小心,要分很多层,而且在我们只需要显示隐藏一部分对象,而不是整个层对象的时候,非常不方便。

CAD能不能做到象SW哪样呢,按理说是可以的,结合在明经里得到的两个显示隐藏代码!
1、        隐藏对象(刷新即可显示所有对象)
2、        隐藏对象(需要特定的命令显示隐藏对象)(http://bbs.mjtd.com/thread-86616-1-1.html
利用第二种隐藏的方法这样的命令应该是能够写得出来的,即建立很多隐藏显示状态,在需要的时候即可以用下拉菜单调出来,就不用经历一次次选择对象,建立显示隐藏状态这样的过程。

在SW里还有一个反向显示隐藏对象的应用,即你正在使用一个显示状态工作,有很多对象是隐藏看不见的,这时你需要查看已经隐藏起来的对象,可以用这个命令把隐藏的对象反向显示出来,这样就可以选中需要显示的对象,把它添加到显示的集合中去,这样,可以很方便的在在显示状态中添加新的对象。

现在唯一不确定的是,有没有办法把这些存储好的显示隐藏状态存在文件里呢,显然,如果下一次再打开文件,这些状态就消失了,这个办法自然没有用了。
在很早以前的一个贴子(http://bbs.mjtd.com/thread-24923-1-1.html),
超极版主龙龙仔就发过一个“[LISP]超級隱藏/顯示工具”!
但似乎这仅仅是一个代码示例,并没有看到有明确的应用,因为我是代码白痴,自然也不知道怎么用了。
按惯例已经全网搜索了一个遍,并没有发现类似的应用,明经各位版主,大佬,你们工作中有没有这样的需要,能不能大家一起来摸索下呢!
发表于 2018-1-8 19:12 | 显示全部楼层
Autocad实现sw的这一功能有点难。即使可以实现也不如sw方便。
可以将选择对象的句柄保存在注册表中,下次打开还可用。
发表于 2018-1-8 20:16 | 显示全部楼层
自己写了一个类似的一直在用
记录状态按理说也可以实现,只不过可能会存的文件比较多
 楼主| 发表于 2018-1-8 20:19 | 显示全部楼层
  对的,按理说这个需要是很现实的,但为什么自动桌子公司都一直没有这样的功能,估计就是从这个软件的底层就给这样功能留了很多限制!要实现这样的东西很难弄。
  
发表于 2018-1-8 22:26 来自手机 | 显示全部楼层
这个应该不难,隐藏少量对象是可以的,保存这几个对象的ename就可以。但如果是只显示几个对象,大量的对象需要保存,隐藏,显示,就会比较慢
 楼主| 发表于 2018-1-9 08:39 | 显示全部楼层
@陨落
能不能分享下!进步都是一点点达成的。
龙龙仔和无痕不知道还在不在坛里,当年他们的贴子似乎也没有进一步的发展!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2018-7-18 03:36 , Processed in 0.150813 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2013 Comsenz Inc.

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