布尔对象可以通过对两个或更多对象执行布尔操作,将其合并到单个网格中。
操作对象及其操作图标示例
可以右键单击操作对象来访问以下命令:“移除操作对象”、“创建新的布尔”、“重命名”、“禁用”和“单放”。使用“创建新的布尔”可在复合对象内创建子布尔。
并集操作
相交操作
差集操作
实际上,“插入”操作会将第一个操作对象视为液体体积,因此,如果插入的操作对象存在孔洞或存在使“液体”进入其体积的某些其他途经,则的确会将其视为液体体积。
启用了“盖印”的并集操作
启用了“切面”的并集操作
要创建布尔复合对象,请执行以下操作:
操作对象保留为布尔对象的子对象。双击该子对象以更改参数并使用变换工具。通过修改布尔操作对象子对象的创建参数,可以随时更改操作对象几何体,以便更改布尔结果或设置布尔结果的动画。
要创建和修改包含多个操作对象的单个复合对象,执行以下操作:
在此示例中,创建一个剪切了两个孔的长方体:一个孔用球体剪切,另一个孔用圆柱体剪切。为了以后能够更改球体或圆柱体,将使用以下步骤集合复合对象:
当创建布尔对象时,材质将继承自原始网格。
如果您随后添加操作对象,则可以选择使用操作对象的原始材质,或保留来自布尔复合对象的材质。如果选择“保留原始材质”,则材质 ID 将匹配。但是,如果选择“应用操作对象材质”,则已添加操作对象的材质 ID 将不同于原始布尔网格。
仅当您添加操作对象时,才指定的材质 ID。一旦操作对象添加到布尔网格内,就无法更改材质 ID。但是,在添加操作对象后,您可以转到材质编辑器,并从布尔对象获得材质。请注意,这是一个多维子对象材质。更改原始网格上的材质也将影响布尔网格材质。
某些几何体有时会在布尔算法中导致不可预知的结果。要限制这种可能性,请尝试遵循下面所述的做法。
布尔要求操作对象的表面拓扑完好无缺。这意味着,不得有缺失或重叠的面,也不得有未焊接的顶点。表面应当连续且封闭。
布尔算法将尝试更正无法满足此要求的操作对象,但是,结果可能并不总是可取的,在某些情况下最好手动更正表面。
要检查几何体中的洞,请使用 “STL 检查”修改器或测量工具。要填充洞,请使用“补洞”修改器。
曲面的面法线应始终是一致的,因为翻转法线可能会产生意外的结果。曲面朝向一个方向而相邻曲面发生翻转也可能存在问题,这是从 CAD 程序导入的几何体的常见问题。布尔算法会试图修正面,但是,在某些情况下最好手动更正这些面。
要查找法线问题,请在视口中打开“明暗处理”,注意出现内部外翻或不正确的对象。还可以在“可编辑网格 (曲面)”“曲面属性”卷展栏 “法线”组中启用“显示”。可以在此修正法线,或使用法线修改器。
网格应该构建成所有面都是平的,这意味着一个面中使用的每个顶点都位于同一平面中。扭曲成非平面形状的面(例如薯片)可能会导致布尔错误。虽然布尔算法会尝试在应用操作时将这些面分割为平面部分,但是建模时最好避免此类结构,否则可能会出现不想要的结果。
由于布尔操作取决于对网格内部与外部内容的充分了解,因此,重叠的网格本身会产生无效的结果。例如,如果在不启用布尔功能的情况下对两个重叠对象使用“折叠”工具,则所获得的对象不会产生好的布尔操作对象。对于自身重叠的茶壶基本体(所有部分均已启用)而言,这也是个问题。
如果必须使用此类对象作为布尔操作对象,则可以将组件分离并使用布尔操作进行组合,以将其重新构造为单个不重叠的网格。
对于“反向网格”(即,网格由于法线翻转而变得内部外翻),布尔操作并不总是产生理想的结果。问题在于,翻转网格内部的区域被正确地视为“外部”,但其外部区域也被视为“外部”。要修正此问题,不应反转网格,而是应生成一个非常大的长方体或其他以网格为中心(但不要接触)的基本体,并使用布尔操作从该几何体中减去网格。将结果转化为可编辑的网格,并删除长方体的面。这将产生与布尔操作兼容的正确反转网格。
如果两个布尔操作对象完全对齐但实际上并未相交,则布尔操作可能会产生错误的结果。虽然此错误很少出现,但是您可以通过使操作对象稍稍重叠来更正此问题。
当两个操作对象的复杂性比较接近时,布尔操作的效果最佳。例如,如果在没有任何分段的长方体中减去文本(一种由许多面和顶点构成的复杂对象),则获得的结果是许多很容易产生渲染错误的细长的面。增加长方体分段的数量可使结果变好。应尽量使操作对象的复杂性接近。
以前版本的布尔算法要求对象重叠。如果两个对象不重叠,而仅仅是边与边或面与面接触,则布尔操作将失败。
布尔算法现在允许不重叠的对象。重合面/边和顶点不再成为问题。您甚至可以使用完全被另一个对象所包围、二者根本没有相交边的对象,来创建布尔复合对象。
另请参见塌陷实用程序,以使用多个对象创建布尔复合对象。
建议避免缩放布尔操作的第一个运算对象,因为这可能会导致随后添加的运算对象发生不可预测的缩放。