extrude(distance)\nextrude(axis, distance)
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
distance | float | — | 拉伸距离。正值沿法线/轴正方向,负值沿反方向。 |
axis | selector | world.y | 拉伸轴方向,如 world.y、world.x、scope.z 等。 |
将当前 2D 面沿其法线方向或指定轴拉伸为 3D 体积。拉伸后,原始面成为底面,新生成的侧面与底面垂直。结果的 scope 会自动调整为紧密包裹生成的几何体。
基本拉伸:将 footprint 拉伸为 10 单位高的建筑体块。
@StartRule\nLot --> extrude(10) Mass
沿指定轴拉伸:
Lot --> extrude(world.y, 15) Mass
CGA.js 中的 extrude 实现基于 CityEngine 2025.1 官方文档。
@StartRule\nLot --> primitiveCube(6, 4, 0.2)\n extrude(8)\n comp(f) { top: Roof | side: Wall }\n\nRoof --> color(0.8, 0.3, 0.2)\nWall --> color(0.6, 0.7, 0.75)