← 返回函数库

setupProjection

3D Texturing UV 部分实现

CityEngine 官方语法

setupProjection(uvSet, axes, texW, texH)\nsetupProjection(uvSet, axes, texW, texH, offsetU, offsetV, worldSpace)

参数说明

参数类型默认值说明
uvSetint0UV 集编号,0–9。
axesselector投影轴:scope.xy、scope.xz、scope.yz、world.xy 等。
texW, texHfloat纹理的宽度和高度(世界单位)。
offsetU, offsetVfloat0UV 偏移量。
worldSpaceboolfalse是否在世界空间中进行投影。

描述

设置 UV 投影的参数。定义纹理如何映射到几何体表面。setupProjection 本身不应用 UV,需要后续调用 projectUV。

当前实现支持基本的 scope.xy/xz/yz 投影轴。worldSpace 和 offset 的支持有限。

官方示例

设置投影参数:

Wall --> setupProjection(0, scope.xy, 2, 2)\n       projectUV(0)

实现说明

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

🎨 3D 预览 — UV 投影设置

@StartRule\nLot --> primitiveCube(4, 4, 4)\n        setupProjection(0, scope.xy, 2, 2)\n        projectUV(0)\n        color(0.7, 0.7, 0.8)

代码编辑器自动补全

枚举值自动补全:输入 setupProjection( 时,补全列表显示带投影平面的条目:
scope.xyscope.xzscope.yz
可直接选择对应的投影平面。