几何体创建
替换函数(i)
功能
用已有的模型或者部件替换当前的模型。可以实现用很少的规则实现复杂几何体的生成。
通过这个函数,可以将某些不规则的/地标性建筑通过手动交互式建模的方式建好,然后通过i函数导入即可。毕竟规则化建模适用于相对规则的建筑物,对于一些造型比较别致的,交互的方式可能会更好一些。
概要
i(geometryPath)
参数
geometryPath:指模型或模型部件的路径。
示例
代码语言:javascript复制Lot-->
i("assets/test.obj")
替换结果
屋顶函数
ce中有四种屋顶类型,包括单坡式(roofShed)、双坡式(roofGable)、四坡式(roofHip)以及金字塔顶(roofPyramid)。
单坡式(roofShed)
概要
roofShed(angle) roofShed(angle,index)
参数
angle:屋顶的坡脚; index:坡顶的起始边的索引值 注意事项:规则后有个“.”符号。这个点表示,到此结束!
双坡式(roofGable)
概要
roofGable(angle) roofGalbe(angle,overhangX) roofGable(angle, overhangX, overhangY) roofGable(angle, overhangX, overhangY, even) roofGable(angle, overhangX, overhangY, even, index)
参数
angle:屋顶的坡角; overhangX:延伸出来的屋檐的宽度; overhangY:坡面左右方向延伸出来的宽度; even:有两个值true和false,当为true时严格按照坡角生成,不满足条件的地方变成平的; index:边的索引值,调整该值可以改变山墙的位置,索引值处及其相对的边为山墙。 你知道山墙是什么嘛?现在的高楼大厦,基本看不到山了。这个名词,让我想起了我们的村子。
四坡式(roofHip)
概要
roofHip(angle) roofGable(angle, overhang) roofGable(angle, overhangX, even)
参数
angle:屋顶的坡角; overhang:延伸出来屋檐的宽度; even:与双坡的一样。
金字塔式(roofPyramid)
概要
roofPyramid(angle)
参数
angle:屋顶的坡角;
屋顶生成结果
屋顶函数示例
代码语言:javascript复制Lot-->
extrude(10)
extrudeModel
extrudeModel -->
comp(f) { side : SplitModel | top : ColorTopFacade }
SplitModel -->
split(y){4:color(0,1,0) GroundFloor. | 3:color(1,1,0)MidFloor. | 3:color(1,0,0) TopFloor.}
ColorTopFacade -->
color(0,1,1)
TopFacade
TopFacade-->
#单坡式
40%:color(rand(),rand(),rand()) roofShed(10)
#双坡式
20%:color(rand(),rand(),rand()) roofGable(30,0.3,0.5)
#四坡式
20%:color(rand(),rand(),rand()) roofHip(30,0.5)
#金字塔式
else:color(rand(),rand(),rand()) roofPyramid(30)