← 返回函数库

roofGable

Geometry Creation Roof 已实现

CityEngine 官方语法

roofGable(angle)\nroofGable(angle, overhangX)\nroofGable(angle, overhangX, overhangY)\nroofGable(angle, overhangX, overhangY, even)\nroofGable(valueType, value)\nroofGable(valueType, value, overhangX)\nroofGable(valueType, value, overhangX, overhangY)\nroofGable(valueType, value, overhangX, overhangY, even)

参数说明

参数类型默认值说明
anglefloat屋顶坡度角(度)。
overhangXfloat0垂直于屋脊方向的屋檐伸出。
overhangYfloat0平行于屋脊方向的屋檐伸出。
evenboolfalse是否强制屋脊水平。
valueTypeselectorbyAnglebyAngle 或 byHeight。
valuefloat角度或高度值。

描述

从当前形状的顶面生成人字屋顶(gable roof)。屋顶由两个对称斜面组成,在屋脊处相交。

支持全部 9 种官方参数重载。

官方示例

基本人字屋顶:

Top --> roofGable(30) Roof

带屋檐伸出:

Top --> roofGable(30, 1, 0.5) Roof

实现说明

CGA.js 中的 roofGable 实现基于 CityEngine 2025.1 官方文档。

🎨 3D 预览 — 人字屋顶

@StartRule\nLot --> primitiveCube(6, 4, 6)\n        comp(f) { top: Roof | side: Wall }\n\nRoof --> roofGable(35) color(0.6, 0.3, 0.2)\nWall  --> color(0.75, 0.72, 0.68)

代码编辑器自动补全

枚举值自动补全:在代码编辑器中输入 roofHip(roofGable( 等时,补全列表会显示带具体枚举值的条目,可直接选择:
byAnglebyHeight
例如选择 roofHip(byAngle, value) 后,只需修改数值即可。