中华人民共合国国旗
原厂授权中国总代理
微信号: aconcheng
购买

逆向工程軟件/插件

作者: Acon Cheng 郑丰远 - 贝特三维
★贝特三维原创文章,严禁任何未经授权的转载和搬运,我们保留所有相关权利。

为什么我们需要专用的逆向工程软件/插件来执行相关工作? 我们要如何评价一款逆向工程软件/插件的优劣? 您可以点选有兴趣的標题来跳至相关內容。

逆向工程为什么需要特别的软件/插件? 它和一般的 3D CAD 建模不一样吗?

完整重现参考网格外形是关键

实际上,操作逆向工程软件就是一个 3D CAD 建模流程,这些流程包括工业软件中常见的 2D 草图绘制、约束条件、拉伸、旋转、放样、扫掠、剪裁、倒圆角、布尔运算、镜向复制、阵列等等。与一般 3D CAD 制图的差异在于,你的空间座标中已经放置了一个有着明确外形的多边形网格,你所要做的就是以之为参考,反推设计思路 (design intent),进行 "依样画葫芦" 的工作。

也许您会问,为什么我不能将 STL 参考网格导入我常用的工业软件 (如 SolidWorks® 及 Rhino®) 来进行相同的操作呢? 答案如下:

  1. 常见的工业软件对多边形网格的支持并不友好,只要导入面数较高的网格就会产生卡顿。而逆向软件是为处理多边形网格而生,执行效率较一般工业软件为佳,且高阶的逆向软件如 QUICKSURFACE 还具有多边形削减 (polygon decimation) 的功能,能在不影响工件外形的前提下,大幅缩减多边形数量,进一步提高操作效能。

  2. 工业软件一般为正向工程而设计,并没有逆向工程建模时需要的特性,比如在制图时曲线、曲面能跟随并吸附在网格表面上,以达到精准还原的目的。这一特性在建构不规则曲面时特别重要; 少了吸附功能,建构的曲面就无法与原始的外形相符。

    更重要的是,工件外形往往不是完美的,针对工件不可必免的形变 (多数是在制造或使用时发生) 与三维扫描仪产生的精度偏差,逆向工件在吸附网格的同时,也能同时指定约束条件,达到一种折衷结果,进而把这些不完美 (如倾斜或左右不完全对称) 给校正回来。这类操作所需要的指令,并不存在于一般的工业软件中。

  3. 工业软件无法智能辨识多边形网格上的几何特征,而逆向软件配有相关演算法,能辨识并抽取出平面、圆柱体、球体、圆锥体等特征。

  4. 如果逆向的对象并不是工业产品,而是极度不规则的艺术工件,那一般的工业软件更是施不上力了。具有一键智能铺面功能的逆向软件,则可以毫不费力地将整个网格外形转换为 3D CAD 格式。

  5. 逆向软件在制图中或制图后,可以透过偏差分析 (deviation analysis) 功能,以热图型式确认 3D CAD 模型和底下多边形网格的差异,借以检查模型的质量及还原度。这一特有功能也是一般工业软件所不具备的。

有了逆向工程软件,我还需要一般的 3D CAD 软件吗?

答案是肯定的。逆向工程软件执行的虽然也是 3D CAD 建模流程,但并不能取代传统的工业 3D CAD 软件。原因如下:

  1. 逆向软件是为了忠实复刻参考网格的外形而生,并不擅长凭空设计出不存在的结构。

  2. 基于同样的原因,逆向软件的造型指令相较一般工业软件而言比较有限,而不具备其灵活性。

  3. 工业软件中常有针对特定行业类别的模块比如板金、模具、电极、加工、图形渲染等等,能够服务的对象更广,而逆向软件仅针对逆向工程此一需求而存在。

因此,逆向软件/插件是为了补足工业软件的短板而生,而不是用来取代之; 经由逆向软件重建的 3D CAD 模型,还是需要导入工业软件中,进行后续的设计或加工。两者互相配合,才能相辅相成。

逆向工程插件 vs 独立逆向工程软件

逆向工程插件

逆向工程插件安装后,需要在宿主软件环境中才能运行,不能独自运作。

逆向插件的价值在于让您不再需要离开熟悉的工业软件环境,就能直接进行逆向工程。在逆向插件中您可以执行逆向工程的所有相关指令,但有关 CAD 编辑 (如剪裁、倒圆角、阵列等) 则需仰頼宿主软件本身的 CAD 指令来进行。

了解更多:
Mesh2Surface 插件 SolidWorks®
Mesh2Surface 插件 Rhino®

(两者为不同产品,不可混用)。

逆向工程软件

独立运行的逆向工程软件,本身即拥有 3D CAD 建模能力,而不需仰頼额外的工业软件来建模。以 QUICKSURFACE 软件为例,安装后就能够直接进行 2D 草图绘制、约束条件、拉伸、旋转、放样、扫掠、倒圆角、剪裁、布尔运算、镜向复制、阵列等等操作。

如果希望在重建的 3D CAD 模型上进一步完善产品设计,软件则必须有导出 STEP 或 IGES 格式的能力,或如QUICKSURFACE 软件那样,可以透过 QSConnect 来导出所有历史步骤及特征到 SolidWorks® 中继续编辑。

了解更多: QUICKSURFACE 逆向工程软件

如何判断一款逆向工程软件/插件的优劣?

对点云/多边形网格的支持及处理能力

逆向工程必须基于多边形网格来开展工作,因此好的逆向软件/插件要能支持不同的网格档案,包括最常见的 STL、OBJ、PLY 网格。有些扫描仪只能导出点云资料如 PTX 和 E57 格式,软件/插件如果能支持这些就更好了。

网格或点云的分辨率愈高,对工件外形的描述也就愈完整,但过高的分辨也会造成网格档案过于肥大,对计算机及软件效率造成负面影响。这时候如果软件/插件有多边形削减 (polygon decimation) 的功能,就能在不影响工件外形的前提下,大幅降低多边形数量 (有时甚至能削减 90% 后仍保留极佳的外观),增进逆向工程效率。

QUICKSURFACE 逆向工程软件的多边形缩减 (polygon decimation) 功能演示画面,显示其透过设置减少的多边形数量或百分比,可在不影响工件外形的前提下,大幅缩减多边形网格尺寸,进而提高计算机及软件效能
QUICKSURFACE 逆向工程软件的多边形缩减 (polygon decimation) 功能,透过设置减少的多边形数量或百分比,
可在不影响工件外形的前提下,大幅缩减多边形网格尺寸,进而提高软件效能 (图片来源: 贝特三维 - 版权所有)

三维扫描过程不可避免会遇到工件存在扫描死角,许多时候又必须事先贴上大量定位贴纸,因此扫描网格经常存在破洞或小孔。如果逆向工程软件/插件存在补孔或网格修复功能,亦是一个加分项。

表面拟合技术是否到位? 是否有拟合度检测工具?

一款逆向工程软件/插件的核心价值在于其网格拟合技术。如果你不能将选中的多边形区域正确拟合上几何特征,或不能让绘制的曲线、曲面实时贴合在网格表面,那么用它来建模将变得毫无任何意义,使用一般的工业软件说不定还更快些。

不同逆向工程软件/插件中的演算法可能不同,吸附与拟合的精度会直接影响重构的 3D CAD 模型质量。合格的逆向软件/插件应该在各个模块 (2D 草图,自由曲面,实体模型等) 都配有偏差分析 (deviation analysis) 工具,以不同颜色的热图 (heat map) 配合偏差值来随时检测逆向建模的还原度,如此才能确保模型质量。

QUICKSURFACE 逆向工程软件的 2D 草图偏差分析演示画面,显示透过线段不同颜色来分析其与网格点资料的贴合程度的功能
QUICKSURFACE 的 2D 草图偏差分析功能,透过不同颜色来分析线段与网格截面点资料的贴合程度 (图片来源: 贝特三维 - 版权所有)
QUICKSURFACE 逆向工程软件的自由曲面偏差分析演示画面 (缩图),显示透过热图 (heat map) 来分析自由曲面与网格表面贴合程度的功能
QUICKSURFACE 的自由曲面偏差分析功能,透过热图 (heat map) 来分析自由曲面与网格表面的贴合程度 (图片来源: 贝特三维 - 版权所有)
QUICKSURFACE 逆向工程软件的全体偏差分析演示画面,显示透过热图 (heat map) 来分析整个 3D CAD 模型与网格表面贴合程度的功能
QUICKSURFACE 的全局偏差分析功能,透过热图 (heat map) 来分析整个 3D CAD 模型与网格表面的贴合程度 (图片来源: 贝特三维 - 版权所有)

网格对齐能力靠不靠谱?

逆向工程开始前最重要的一步,就是将多边形网格进行正确的对齐。

扫描仪导出的多边形网格通常都被随意放置在三维空间座标系中,而呈现偏移和倾斜的状态,我们需要手动将其摆放在合适的位置上 (通常是原点),没有摆好的多边形网格不可能产生优质的 3D CAD 模型。

我们通常需要判断网格何处是底面,何处朝前,何处又朝上? 要完成这一过程,多数情况下我们会选定一些几何特征 (通常是平面或圆柱体) 作为对齐依据,然后将该特征与特定座标轴 (X/Y/Z) 或座标平面 (XY, XZ, YZ) 对齐,进而定位整个网格。如果工件是左右对称造型,我们就要找出正确的对称平面,并将该平面与座标平面对齐,这样才不会造成建模的偏差。

QUICKSURFACE 逆向工程软件的对齐功能演示画面 (缩图),显示透过选中的几何特征,以之与世界座标对齐的过程
QUICKSURFACE 的座标系对齐功能,可透过选中的几何特征与世界座标对齐 (图片来源: 贝特三维 - 版权所有)

整对齐过程中的每一步,都需要软件相应的指令来进行,一款好的逆向工程软件/插件,应该提供直觉但严谨的对齐工具,让建模能有个好的开始。

工件形变能否校正回来?

上面说到拟合功能的重要性,但在实际操作中,逆向软件/插件的拟合功能必须具备一定的灵活性,用来处理工件的形变 (几乎百分之百会发生),并将之校正回来。相关功能包括:

  • 拟合的同时指定约束条件。举例来说,您选中了网格下方一个看似底面的区域,创建一个 CAD 平面与之拟合,但由于种种原因,该网格区域可能不是很平整,进而导致 CAD 平面也有歪斜的情况。这时候您就可以对该平面加上一个 "与 XY 平面平行" 的约束条件,让其在与选中区域尽量拟合的同时,亦保证与 XY 平面平行,这样最终模型的底面才是完美的状态。
QUICKSURFACE 逆向工程软件的约束式拟合功能演示画面,可以在确保特征被约束的同时,最大程度与选中的多边形拟合
QUICKSURFACE 约束式拟合功能,可以在确保特征被约束的同时,
最大程度与选中的多边形拟合 (图片来源: 贝特三维 - 版权所有)
  • 在必要时能选择取消拟合,让模型偏离参考网格表面。当我们处理本应左右对称、却因形变而不完美的工件时,这个功能就显得很重要了。想像您正在对一款汽车前保杆进行逆向工程,本应是左右对称的保杆却因长期使用而变形了,这时候我们可能会需要判断网格左右两侧表面的质量,取较好的部位与 CAD 曲面拟合,而放开拟合以贴近另一侧表面。
QUICKSURFACE 逆向工程软件的互动式对齐功能演示画面,透过镜向网格的显示,让用户能将左右对称的工件,以手动方式微调其位置,以提高最终模型的质量
QUICKSURFACE 的互动式对齐功能,透过镜向网格的显示,让用户能将左右对称的工件,
以手动方式微调其位置,以提高最终模型的质量 (图片来源: 贝特三维 - 版权所有)

是否具有好的 2D 草图模块?

就像一般工业软件的建模流程,逆向工程也需要使用 2D 草图来绘制造型蓝图,以便生成后续的立体造型。逆向软件/插件必须要能灵活地定义所需的网格截面,并把针对该截面的点资料进行 2D 草图的绘制。

好的逆向软件/插件能智能辨识这些截面点资料,快速从中抽取出直线、弧线,参考线等,并透过即时偏差分析来验证这些线段的质量。另外我们也需要常见的圆角,镜向,阵列等功能。

另外最重要的一点是 2D 草图应该要有常见的约束功能 (constraints),比如相交、平行、垂直、同心,相切等等,这样才能确保草图重现了原始设计思路。

QUICKSURFACE 逆向工程软件的 2D 草图功能演示画面,显示其众多草图绘制工具及丰富的约束条件,以及独家的直线 / 弧线 / 曲线自动抽取功能
QUICKSURFACE 的 2D 草图功能,包括众多草图绘制工具及丰富的约束条件,
以及独家的直线 / 弧线 / 曲线自动抽取功能 (图片来源: 贝特三维 - 版权所有)

是否具有可靠的偏差分析 (deviation analysis) 功能?

上面说过,合格的逆向软件/插件应该在建模的每个阶段 (2D 草图,自由曲面,实体模型等) 都配有偏差分析 (deviation analysis) 工具,以不同颜色的热图 (heat map) 来检测逆向建模的还原度,如此方能确保模型质量。

这个功能在建模收尾时特别重要,可以用来检验 3D CAD 模型是否基本准确还原了参考网格的外形,如果软件能允许用户获得特定点位的偏差距离,那就更能进一步修正模型,达到尽善尽美。

是否对几何特征及不规则曲面都能进行逆向建模 (混合建模)?

从肉眼可辨识的网格形状 (平面、圆柱、球体、圆锥体等) 创建几何特征是一回事,但针对工件不规则的曲面部位建模又是另一回事了。基于审美需求与人体工学,现代工业设计使用了大量的不规则曲面 (NURBS surface),而这些曲面并无法用简单的几何特征来描述。因此好的逆向软件/插件应该要具备自由曲面建模的功能,能在吸附网格的前提下,重绘出这些不规则的曲面。

更重要的是,几何特征、实体、自由曲面之间是否能交叉编辑、剪裁,合并,以达到全面的建模能力? 这将是对逆向软件/插件的一大考验。

QUICKSURFACE 逆向工程软件的自由曲面功能演示画面,显示透过软件独家的吸附功能,快速在不规则工件外型的表面重构 3D CAD 曲面的过程
QUICKSURFACE 逆向工程软件的自由曲面功能,其独家的吸附功能
能在不规则工件外型的表面快速重构 3D CAD 曲面 (图片来源: 贝特三维 - 版权所有)

是否对工业及艺术造型都能进行逆向建模?

虽然工业设计产品是逆向工程最主要的处理对象,在一些特殊行业如艺品加工中,我们也可能会需要把外形毫无规则、极度有机的工件转换为 3D CAD 格式,这时候你的逆向软件/插件就需要一个完全不同的模块来执行相关的铺面功能。

由于工件外形是无序的,您将无法找出任何规律的几何特征,而艺品造型过多的转折与凹凸,也让手动的自由曲面建模显得旷日废时。因此针对艺品的逆向工程大多仰赖 "一键生成" 式的智能铺面模块。好的逆向软件/插件不但应该具备这类模块,且其演算法必须高效而精确。

更重要的是,智能铺面所生成的复杂曲面,要能够与其他 CAD 物件 (特征、实体、自由曲面) 交互编辑、剪裁,合并,而不受到任何限制。

QUICKSURFACE 逆向工程软件的一键智能铺面功能演示画面,显示其透过目标多边形数量、特征细节、引导曲线等参数设置,对复杂无序的有机造型一键快速创建 3D CAD 模型的过程
QUICKSURFACE 的一键智能铺面功能,透过目标多边形数量、特征细节、引导曲线等参数设置,
对复杂无序的有机造型一键快速创建 3D CAD 模型 (图片来源: 贝特三维 - 版权所有)

是否具有参数式建模能力?

工业软件依其对模型编辑过程及特征的管理方式,可分为直接编辑式 (direct edit) 及参数式 (parametric) 两类。常见的工业软件如 Rhino 属于前者,SolidWorks 则属于后者。我们在此不详述其差异及优劣,但一般来说,参数式软件的历史步骤能让您更好地控制特征之间的连动关系,对于复杂的项目更有优势。

逆向软件亦是如此; 如果您的逆向软件具有参数式建模能力,将会有助您更容易掌控全局。

QUICKSURFACE 逆向工程软件视窗撷图 (缩图),显示其左方的参数式设计历史步骤,以及主视窗中参考网格与重构的 3D CAD 模型互相重合的样子
QUICKSURFACE 逆向工程软件介面,左方是参数式设计历史步骤,
右方主视窗中则显示参考网格与重构的 3D CAD 模型 (图片来源: 贝特三维 - 版权所有)

要注意的是,如果您使用的是逆向插件,那么建模过程是否为参数式则取决于宿主软件本身。

逆向建模的成果是否能导出为其他工业软件使用?

我们在前面 "有了逆向工程软件,我还需要一般的工业 3D CAD 软件吗?" 一节中提到过,逆向工程软件不并能取代一般工业软件,因为后者才具备 "无中生有" 的建模能力。除非您的逆向工程意图是百分百复刻,否则大多情况下您仍会需要使用工业软件在重建的模型上继续工作。

因此,您的逆向软件/插件必需能导出标准的 STEP 或 IGES 格式,以便工业软件导入使用。

如果您是 SolidWorks® 用户,那么 QUICKSURFACE 逆向软件甚至可以透过 QSConnect 模块来导出所有历史步骤及特征到 SolidWorks® ,让后续的编辑更加灵活。

了解更多: QUICKSURFACE 逆向工程软件

软件/插件的执行效率如何?

现代工业软件有日渐肥大的趋势,动辄数 GB 甚至数十 GB 的容量常对计算机造成巨大负担,以致软件开启和运行都十分缓慢。逆向工程软件/插件中的实时吸咐及偏差分析需要耗费大量计算机资源,因此选购一套逆向解决方案时不可不知其运行效率如何。

说出来也许很难相信,QUICKSURFACE 软件在安装完成后,占用硬盘容量不到 100 MB,Mesh2Surface 插件更是不到 15 MB。超轻量化的体积使得软件/插件启动极快,并大量节省系统资源,让您可以处理更多重要的数据。

crossmenu