CityEngine CGA语法之包络函数 envelope

本文详细介绍了包络生成函数的使用方法及参数设置,包括不同方向、最大高度、基准高度和倾斜角度等,并通过示例展示了如何应用这些参数来创建不同形状的包络。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概要

envelope(direction, maxHeight, frontBaseHeight, frontAngle)
envelope(direction, maxHeight, frontBaseHeight, frontAngle, backBaseHeight, backAngle)
envelope(direction, maxHeight, frontBaseHeight, frontAngle, backBaseHeight, backAngle, sideBaseHeight, sideAngle)
envelope(direction, maxHeight, frontBaseHeight, frontAngle, backBaseHeight, backAngle, rightBaseHeight, rightAngle, leftBaseHeight, leftAngle)


参数

  • direction (selstring):包络产生的方向
  • 有两个取值:normal和world.up,normal表示按scope的Y轴方向生成包络,world.up表示按世界坐标的Y方向生成包络

maxHeight (float):包络的最大高度(米),如果超过了这个高度,超出的几何体部分会被切除,包络顶面封闭为水平

frontBaseHeight (float):前部包络面生成的基准高度值(米)

frontAngle (float):前部包络面生成的倾斜角度(度)

backBaseHeight (float):后部包络面生成的基准高度值(米)

backAngle (float):后部包络面生成的倾斜角度(度)

sideBaseHeight (float):两侧包络面生成的基准高度值(米)

sideAngle (float):两侧包络面生成的倾斜角度(度)

rightBaseHeight (float):右侧包络面生成的基准高度值(米)

rightAngle (float):右侧包络面生成的倾斜角度(度)

leftBaseHeight (float):左侧包络面生成的基准高度值(米)

leftAngle (float):左侧包络面生成的倾斜角度(度)


参数示意图:


注意

无论采用哪个方向(normal或world.up),包络生成的方向都是朝上

示例

envelope(direction, maxHeight, frontBaseHeight, frontAngle)

设置方向为normal,maxHeight=30,frontBaseHeight=10,frontAngle=45

Lot -->
	envelope(normal,30,10,45)
	color("#ffff00")



改变方向为world.up

Lot -->
	envelope(world.up,30,10,45)
	color("#ffff00")


envelope(direction, maxHeight, frontBaseHeight, frontAngle, backBaseHeight, backAngle)

设置方向为normal,maxHeight=30,frontBaseHeight=10,frontAngle=45,backBaseHeight=10,backAngle=60

Lot -->
	envelope(normal,30,10,45,10,60)
	color("#ffff00")



envelope(direction, maxHeight, frontBaseHeight, frontAngle, backBaseHeight, backAngle, sideBaseHeight, sideAngle)

设置方向为normal,maxHeight=30,frontBaseHeight=10,frontAngle=45,backBaseHeight=10,backAngle=60,sideBaseHeight=15,sideAngle=65



envelope(direction, maxHeight, frontBaseHeight, frontAngle, backBaseHeight, backAngle, rightBaseHeight, rightAngle, leftBaseHeight, leftAngle)

设置方向为normal,maxHeight=30,frontBaseHeight=10,frontAngle=45,backBaseHeight=10,backAngle=60,rightBaseHeight=15,rightAngle=65,leftBaseHeight=25,leftAngle=25

Lot -->
	envelope(normal,30,10,45,10,60,15,65,25,25)
	color("#ffff00")


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值