语法
- extrude(distance)
- extrude(extrusionType, distance)
参数
- distance - float要拉伸的单位数。
- extrusionType - selector
- world.up - 沿世界坐标系的 y 拉伸面。
- world.up.flatTop - 与 world.up 相同,但是会创建平顶表面。
- face.normal - 所有面均沿其法线进行拉伸。 默认值为 face.normal。
- vertex.normal - 沿面折点法线对其进行拉伸。
注:
始终根据当前形状的几何计算折点法线;将丢弃现有折点法线。 如果面断开连接,则必须合并重复折点,才能使用相邻面法线计算折点法线。
描述
extrude 操作用于拉伸形状。 将获取几何资产中所有网格的每个面,然后沿面法线或拉伸类型指定的给定方向对其进行拉伸。 通过以下方式设置范围方向:
- 尽量保留 x 轴方向(旧 x 轴会投影到与拉伸方向正交的平面上)。
- y 轴与拉伸方向一致。
- z 轴垂直于上述两个轴。
将调整范围大小以与拉伸几何完全匹配。 如果 distance 为负,则 scope.sy 属性将为负。
纹理坐标继承自形状。
组件标签
该操作自动将语义组件标签应用于生成的面组件:
"extrude.bottom" "extrude.side.outer" "extrude.side.inner" "extrude.top" | 蓝色:原始面。 黄色:侧面。 红色:孔洞的侧面。 绿色:拉伸面。 |
有关使用组件标签的详细信息,请参阅:
相关内容
示例
沿法线拉伸
右侧显示了由 2 个面和初始范围组成的初始形状。 | |
extrude 操作用于沿所有面的法线对其进行拉伸并对结果进行合并。 不会创建内部 Lamina 面。 范围的 y 轴设置为拉伸方向。
| |
对于非水平形状,将单独针对每个面执行拉伸并创建内部面。 范围的 y 轴设置为第一个面的法线。
默认使用 face.normal,与 extrude(10) 相同。 | |
沿折点法线的拉伸会保持面在一起,而不会创建内部面。 范围的 y 轴设置为第一个折点的法线。
|
沿世界坐标轴拉伸
所有面均沿世界坐标 y 轴进行拉伸。 不会创建内部 Lamina 面。 范围 y 设置为世界 y 轴。
| |
将创建一个平顶表面。 拉伸距离将相对于世界 y 轴基于每个形状的最低折点进行测量。
| |
拉伸距离设置为至少为形状沿世界 y 轴的最大范围。 如果距离为零,则拉伸为正向。
| |
如果距离为负,则拉伸将相对于世界 y 轴基于每个形状的最高折点进行测量。 范围的 y 大小变为负向。
|
拉伸边
当使用 comp(e) 创建边时,其法线将成为相邻面法线的平均值。 这是默认拉伸方向。 | |
沿折点法线方向拉伸边可使生成的面保持连续。 | |
当使用 comp(fe) 创建面边时,其法线将垂直于面法线,并指向面边界的外侧。 这是默认拉伸方向。 | |
沿折点法线方向拉伸面边可使生成的面保持连续。 |