工业软件产品分析——模型结构树
上一篇,笔者介绍了工业软件中的三维模型浏览功能。本篇,笔者将分析工业软件中另一个重要基础共性功能——模型结构树(以下简称模型树,也有软件叫设计树、导航器、选择树、特征树、大纲等等,功能都类似)
模型树出现在几乎每一个工业软件中,无论CAD、CAE、BIM还是其它林林总总的工业软件,都在以这种清晰的树状结构来组织和管理数据并记录操作过程。
本文以三款常用的CAD软件(Solidworks、Creo、Fusion360)为例,从他们的模型树设计及演化中,分析工业软件中的模型树的常见设计方式。
一、模型树的基本组成及作用
CAD软件中,有两种建模方式,一种叫参数化建模,另一种叫直接建模。
- 参数化建模:在参数化建模中,设计师使用参数来定义和控制设计模型的形状、尺寸和特征。设计中的各个几何元素和特征都与参数相关联,改变参数的值可以直接影响整个模型的几何形状。这使得设计师能够快速灵活地修改和调整设计,实现快速的设计迭代。
- 直接建模:在直接建模中,设计师可以直接编辑和调整几何体的形状,而不需要依赖于参数和特征。直接建模更加自由和直观,适用于快速创建简单的几何形状或进行快速的修正和调整。
两种建模方法一般都会用到模型树,不过在参数化建模中,由于需要记录特征创建历史,模型树发挥了更大的效用。
1985年,来自苏联的émigré 和列宁格勒大学的前教授Samuel Geisberg在美国创建了参数技术公司(PTC),以开发革命性的MCAD(机械计算机辅助设计软件)市场的Pro/Engineer系统。Samuel Geisberg在Pro/Engineer中使用的参数特征形成了一个根据设计历史自动构建的树。后来,几乎所有的MCAD系统都复制了这种方法,这就是模型树的雏形。
1. 模型树的基本组成和层次结构
模型树通常以树状结构呈现,其中树的根节点代表整个模型,而子节点代表模型中的各个部分、组件或特征。通过展开或折叠节点,用户可以查看或隐藏特定的模型元素,以便更好地理解和编辑模型。通常来说模型树会有以下几部分组成:
- 根节点:模型结构树的最顶层节点,代表整个设计模型或装配体。根节点是模型结构树的起点,所有其他的节点都直接或间接地与根节点相关联。
- 子节点:根节点下方的节点,代表设计模型中的各个部分、组件或特征。每个子节点都与父节点直接相连,并通过层次结构进行组织。
- 分支:连接父节点和子节点的线条或连接线,代表节点之间的关联关系。分支将父节点与其相连的子节点连接起来,形成一个层次结构,为了视觉效果更清爽, 目前大部分CAD软件都不再使用连接线连接节点,而是采用缩进对齐来表现层次。
- 叶节点:模型结构树中的最底层节点,不再有其他子节点与其关联。叶节点代表设计模型的最小组成单元,通常是基本的几何体、特征或零部件。
- 层次关系:模型结构树中的节点按照层次关系进行组织,形成从根节点到叶节点的逐级嵌套结构。通过展开或折叠节点,设计师可以在不同层次间导航和管理模型的各个部分。
2. 模型树的作用
在CAD软件中,模型树展示了设计模型的层次关系和组成部分,提供了一种便捷的方式来查看和编辑模型的不同元素。起到以下几个关键作用:
- 组织和管理数据:图形窗口中的零部件模型不直接体现装配关系,除了能看到的模型外,还有许多设计过程数据无法在图形窗口直观展示,比如材质、创建者、选择集、过滤器等数据。通过使用模型树,多种模态类型的数据都统一为文字和符号的表达,设计师能够以清晰的方式组织和管理设计过程中的各类数据,可以在树的不同层次上创建和调整模型元素,轻松地掌握模型的结构和组成。
- 可视化导航:有的软件把模型树叫做“导航”,正是因为模型树为设计师提供了一种脱离图形窗口的快速导航工具,使其能够快速定位和选择特定的模型元素。选择功能那篇说过,在二维屏幕中查看三维模型,会由于模型间的遮挡而导致部分模型难以选择。此时设计师可以通过在模型树中展开和折叠节点,或是通过搜索栏过滤,轻松定位到关注部分,提高了设计的效率。
- 修改和编辑:模型树使设计师能够方便地对模型进行修改和编辑。通过选择特定的节点,设计师可以更改其属性、尺寸、位置等,对模型进行调整和优化,以满足设计要求。
- 历史记录与版本控制:由于模型树记录了设计模型的历史和演变,设计师可以轻松地回溯到先前的版本,并在需要时进行修改和更新。这对于设计迭代、比较不同版本以及进行变更管理非常有用。
- 可视化状态指示:模型结构树可以用于显示模型元素的状态指示。例如,可以使用图标、颜色或其他可视化方式来指示模型元素的选中状态、隐藏状态、错误状态等,以便设计师能够更好地理解和管理模型的状态。
二、不同CAD软件模型树之异同
1. Solidworks模型树
SW是我产品分析文章中的常客,并非我多么擅长使用它,而是因为在CAD软件中它一直以易学易用著称。在SW中,模型树被称为“设计树”,放在了FeatureManager窗口的一个TAB页下。可以通过快捷键隐藏或展开。模型树中的每个节点都有表示类型的图标、名称、以及表示状态的符号。
1)Solidworks模型树布局
由下图可见,SW的模型树界面从上到下依次是搜索栏、根节点、文件夹工具、参考/基准、设计特征、退回控制棒。
在搜索栏,通过输入文本,模型树中的所有相关对象,无论是特征、草图还是文件夹,都可以在此处过滤。
点击显示窗格的展开图标,可以展开如下图的显示窗格,统一查看和管理零部件的显隐状态、显示模式、外观、透明度等属性。
位于树结构最下方的退回控制棒,可以通过鼠标拖拽,将模型退回到设计历程中的任一状态。这种设计在诸多参数化建模的CAD软件中都有使用,由于设计历史通常比较长,且后创建特征依赖于先创建特征,因此通过CtrlZ撤回通常是不可行的。使用退回控制棒,可以在退回的状态下插入新的特征或修改以前的特征,从而弥补设计师因前期考虑不周而带来的失误。
2)SW模型树的节点有哪些
在系统选项中,可以看到模型树中所有能够显示的节点。可以看到,在SW中,除了上面提到的基本模型树结构外,还提供了许多文件夹工具节点,用于组织和管理数据,用户可以设置其显隐状态。
其中:
- Favorites 文件夹(收藏夹):添加特征、草图、配合和参考几何体。通过使用收藏文件夹,可以轻松访问带有极长特征树的零件或装配体中的项目。还可以使用收藏夹来高亮显示特征,以便在协作期间供其他团队成员查看。
- Sensors 文件夹(传感器):添加传感器以监视选定的属性。传感器监视零件和装配体的所选属性,并在数值超出指定阈值时发出警告。用户可以用传感器检测物体的尺寸、质量等数据,也可以进行两个物体之间的间距的监测。
- 方程式文件夹:可以添加新的方程式、编辑或删除方程式。当您将第一个方程式添加到零件或装配体时,将出现方程式文件夹。使用全局变量和数学函数定义尺寸,并生成零件和装配体中两个或更多尺寸之间的数学关系。
- Annotations 文件夹:来控制尺寸和注解的显示。
- Design Binder 文件夹:保留设计日志,添加附件
- 自定义文件夹:将特征拖入文件夹中,以减小 FeatureManager 设计树的长度。
其它文件夹工具就不一一介绍了,文件夹不算设计特征,通过使用各种功能的文件夹,可以在不破坏特征关系和设计历史的情况下对各类设计数据进行分类管理,提高设计效率。
设计特征部分节点的层次结构与前文提到的基本组成无异,都是按照特征的父子级关系进行链接,针对不同类型的特征,提供不同的图标来展示。
SW的特征名称后带着一大串说明文字,这种表现形式使得模型树显得沉重和混乱,说明内容可以在右键菜单中取消显示,从而使得模型树更清爽。但是如果用户既需要看这些说明,又不想看这些长篇累牍的括号和字符呢?在这个版本中,SW似乎没有提供其他的查看方式。
3)弹出式的模型树
当SW的用户在属性窗口中操作时,由于属性窗口和模型书窗口同属FeatureManager窗口的Tab页,导致二者无法并列查看,而在实际操作中又有同时查看二者的需要,因此SW提供了在右侧弹出模型树的功能,这种模型树类似于Catia中那种底色透明的模型树,尽可能减少对于图形窗口的空间占用。
2. 浅谈下Catia的模型树
我第一次看到Catia时,它那没有背景板的模型树给我留下了深刻的印象,不过Catia的模型树也饱受诟病,因为它和别的软件不同,模型树并不是个独立窗口,更像一个三维场景中的模型对象,可以拖拽、放大缩小,用户经常不小心激活模型树,导致场景中的其他物体无法编辑,或者不小心把它拖到屏幕外,找不回来了。
3. Creo模型树
Creo的前身是Pro/E,可谓参数化设计的鼻祖,如前文所提到,正是PTC的创始人发明了基于特征创建历史的特征树,影响了几乎所有CAD软件。
在本节,笔者先对Creo 5.0版本进行分析,发现了Creo与SW的一些差异。而后,笔者又将Creo5.0与Creo9.0纵向对比,发现Creo模型树窗口的诸多变化,从中可以看出Creo模型树窗口的设计趋势。
1)Creo模型树的界面布局
Creo的模型树窗口整体布局与SW差异不大,在右上角提供3个下拉菜单列表,可以设置模型树的节点类型、显示模式等。相比于SW需要在繁杂的右键菜单中和藏于角落的系统选项中寻找节点过滤器等功能,Creo把这些功能放在手边,对于用户更友好一些。
SW中的退回控制棒,在Creo中成为了一个绿色的箭头,功能是一样的,都可以拖拽退回到原始状态并进行编辑。
SW的右键菜单里内容非常多,字数长短不一,对于新手用户可能不易找到需要的功能。
Creo的右键菜单相对简洁许多,字数短,也没有超过2层的菜单。
在节点信息的管理上,Creo提供了树列功能,可以横向扩展模型树的信息列,以列表形式将物体的质量、体积、创建者等多种属性参数在模型树中统一查看管理,想要显示的属性可以在下图所示的模型树列窗口中进行筛选。这种展示方式目测是优于SW中在名称后直接加说明内容的。
开启树列后,模型树右侧就会出现一个表格,用户可以手动调节其宽度。
2)Creo模型树的节点有哪些
Creo5.0中,模型树节点以特征为主,此外还可以显示材料和注释,但是并没有发现SW中的各类文件夹工具节点。
在Creo5.0中,SW文件夹工具中的收藏夹、历史记录等功能,都分布在各个选项卡的功能按钮里,模型树中没有统一管理工具。
Creo5.0也没有提供选择集等功能,在设计时难以对设计数据进行分类管理,在这一点上,SW胜。
除了表示特征类型的图标外,Creo还以下图这种图示符的形式来表达零部件的状态。图示符普遍比较小,至于图标右侧,可以表达元件隐含、冻结、未完全约束等状态。不过这种状态提示符太抽象了,没有经验的用户估计看不懂。
3)Creo9.0中对模型树做的改进
相比于Creo5.0,Creo9.0的模型树窗口有了较大改动。可以看到前面提到的一些问题已经在Creo9.0中完善了。
第一 ,在用户界面方面,Creo9.0 将原来下拉列表中的功能铺开,让用户可以一次点击就选中功能。底部的退回控制棒,Creo与SW类似,从插入箭头改成了一条绿线。此外,Creo9.0中有很多种树结构,除模型树外,还有层树、设计树、机构树等,可以并列显示。如下图中由上到下就分别显示了模型树、层数、机构树。在Creo5.0中,模型树和层树还是只能切换显示的,无法并列显示。
第二,Creo9.0相比于Creo5.0,在模型树中新增了顶级节点——设计项,设计项之下包括面组、主体、以及各类文件夹等子节点,设计项中的节点与模型树中记录的特征创建历史相互独立,但也相互关联,比如在设计项中删除了某个特征,在模型树中对应的特征也会被删除。这弥补了上文提到的Creo5.0中缺少文件夹工具来管理数据的问题。
设计项可以在模型树窗口中与特征串行显示,也可以独立出一个“设计树”窗口,与”模型树”窗口并列显示。当然这样也不可避免地占用了宝贵的横向空间。
第三,Creo9.0也对模型树过滤器等窗口界面进行改进,进一步对模型树的节点进行了分类,使得过滤项结构更加清晰,便于用户选择。
从Creo的演化路径来看,其模型树借鉴了SW等软件的模型树的优点,也保留了自己的一些特色。
4. Fusion360模型树
Fusion360作为Autodesk家的当红炸子鸡,同时具备直接建模和基于特征建模两种建模方式,其模型树功能与前面两个不太一样,被拆分成圈4所示的“浏览器”和圈9所示的“时间轴”。
- 浏览器:列出部件中的对象(零部件、实体、草图、原点、联接、构造几何图元等),并且可让您控制对象的可见性。
- 时间轴:列出在设计中执行的操作。在时间轴中的操作上单击鼠标右键可进行更改。拖动操作可更改操作的计算顺序(仅限参数化建模模式)
1)Fusion360模型树界面布局
Fusion360的“浏览器”在靠左侧放置时,底色是透明的,为图形窗口留出尽可能多的空间。由于记录特征创建历史的重任给了时间轴,浏览器承载的信息量少了许多,也没有提供太多设置选项,因此比较简洁,用的最频繁的显示/隐藏按钮放在每一个节点前。表示节点类型的图标放在名称前,表示状态的符号放在名称后。
Fusion360中的“时间轴”承担了记录特征创建历史的功能,并横向排布设计特征,这与其他软件从上到下的逻辑很不同,最左侧的播放工具的设计契合了“时间轴”的称呼,很符合用户的心理模型,将创建过程以动画的形式进行播放,随时回滚状态和编辑。
这种时间轴的设计,看起来确实简洁优雅,但是也存在一些问题,例如,只有一行的情况下,特征间的父子关系如何表达?属性信息如何表达?如果模型复杂,可能会很快把屏幕横向宽度占满,此时用户需要横向滚动才能找到某一特征,窗口的横向滚动通常在体验感上不如纵向滚动。在缺少文字描述的情况下,在大量图标中定位关注部分也是比较麻烦的事情。
如果将建模模式切换到直接建模,那么时间轴会消失,这些特征会回到浏览器上,但特征间并没有时序关系。
2)Fusion360中有哪些节点
Fusion360浏览器中的节点除基准、草图和零部件等设计对象外,还包括文档设置、命名视图、分析等节点,创建的选择集也会在浏览器中出现,总体来说没有提供太多额外的工具。时间轴中就是常见的特征,如拉伸、草图、镜像、孔等。
总体而言,Fusion360比较轻量化,由于它把设计、制造、仿真等阶段的功能放到了不同的工作空间里,在一个空间里的信息量就少了许多,比如设计空间的模型树就不用考虑仿真、制造相关的节点了。浏览器窗口也没有搜索栏、退回控制棒、切换显示模式等功能,很简约,但这样又可能无法满足有复杂需求的用户。所以有的人说Fusion360适合创客和小团队,不适合大型复杂装备的设计。
三、总结与展望
可以看到,模型树作为CAD软件中的重要组成部分,具有许多优点,比如提高设计效率、组织和管理设计元素、支持版本控制等,同时也存在一些局限性,这些局限性正是产品经理们可以改进的方向。以下是模型树的一些局限性:
- 复杂性可视化难题:对于大型和复杂的模型,模型结构树可能变得非常复杂和混乱,使设计师难以快速理解和操作模型的结构和关系。
- 性能和稳定性:当模型结构树中包含大量元素或复杂的设计关系时,CAD软件的性能和稳定性可能会受到影响,导致运行速度变慢或出现崩溃的情况。
- 学习和适应成本:对于初学者来说,理解和使用模型结构树可能需要一定的学习和适应成本。设计师需要熟悉软件的特定操作和术语,以充分利用模型结构树的功能。
- 缺乏灵活性:在某些情况下,模型结构树可能缺乏灵活性,特别是当设计需要灵活调整和重新组织模型时。某些软件中,更改模型结构树的组织可能需要进行复杂的操作或重新创建模型。这也是许多软件在支持参数化建模的同时推出直接建模模式的原因。
可以看到无论达索、PTC还是欧特克,均在对模型树不断地迭代优化,现有的模型树也不一定是一种范式,比如Fusion360就把建模历史放到了窗口底部时间轴中展示。
未来的模型树又会变成什么样呢?
如今AI技术发展迅速,在工业软件中的广泛应用只是早晚的问题,在AI加持下,未来设计仿真等工作或许大部分都将是自动化的,彼时模型树是否还存在都难说。可能只是用户在检查AI设计的结果时需要调出来看一下零件间的关系。而当用户选中某个零部件时,AI技术可以帮助自动识别和组织设计模型的不同部分和组件,自动分析和提取设计元素,按需生成更加轻量化的结构树,减轻设计师的操作负担。
目前CAD软件也在利用VR、AR等技术突破二维平面的限制,在三维虚拟世界进行设计,已经有软件可以在VR空间中进行创作了,这也将成为未来的一个趋势。突破了维度限制,模型树的所承担的责任可能以其他形式所分担,或许用三维模型代替抽象的符号和文字,就像下图3DE平台中这样。又或许像知识图谱那样变成网状关系。
新的交互环境必然为交互设计带来新的挑战。
作者:石寒B端产品经理,关注智能制造与前沿技术。 公众号:工业软件产品分析
版权声明
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!