CityEngine(cga規則備份)

第一種利用CityEngine快速建模,模型文件osm從OpenStreetMap下載

屋頂規則連接

相關教程:簡單易懂

/**
 * File:    random.cga
 * Created: 20 May 2019 10:37:48 GMT
 * Author:  GAIVIA-LIZHONGYUAN
 */

version "2016.0"
@eange(20,100)
attr height   =rand(3,100)
attr floor=6
attr wallside=0.5
attr winSide=3
Lot-->
    extrude(height) Building
Building-->
comp(f) { top : Roof | side : wall }
Roof-->
 // color(1,0,0)
  setupProjection(0, scope.xy, '1, '1)
  projectUV(0)
  texture("images/1212.jpg")

wall-->
  split(y,adjust) { ~floor : Floor }
  //color(1,1,0)
 
Floor-->
  split(x) { wallside : Wallside | {~winSide:Tile|wallside : Wallside}*}
  setupProjection(0, scope.xy, '1, '1)
  projectUV(0)
  texture("images/u=1979198230,3799788659&fm=27&gp=0.jpg")
Tile-->
  split(y) {  wallside : Wallside | {~winSide:Window|wallside : Wallside}*}
Wallside-->
 color("#694310")
Window-->
 color(1,1,0)
 //setupProjection(0, scope.xy, '1, '1)
 //projectUV(0)
 

  

第二種快速建模參考以下鏈接

超過一平方公里收費,不過範圍內不收費可導出c4d文件


    
 新建隨機規則

/**
 * File:    height_autho.cga
 * Created: 20 May 2019 11:23:37 GMT
 * Author:  GAIVIA-LIZHONGYUAN
 */

version "2012.1"


Lot-->
 60%:color(1,0,0) Lot1 
 30%:color(0,1,0) Lotbansipo
 else:color(0,0,1) Lotfushi
// height value


attr height=0
attr roofAngle=15#屋頂坡度

attr sideIndex=1 #坡向的起始邊的索引值
Lot1-->
     
      extrude(20)

    comp(f){top:color("#0000ff")TopFacade1 |side:color("#ff0000")SideFacade. |all:NIL}
TopFacade1-->

    roofShed(roofAngle,sideIndex)comp(f){top:FlatRoof_Tex. |side:color("#00ff00")RoofSide.}
//******************************************************    
attr roofAngleGable=25  #屋頂下部坡度


attr roofAngleHip=25#頂部坡度
Lotbansipo-->

    extrude(20)

    comp(f){top:color("#0000ff")TopFacade2 |side:color("#ff0000")SideFacade. |all:NIL}
TopFacade2-->

    roofGable(roofAngleGable)
    split(y){ '0.5: comp(f){bottom: NIL | horizontal:RoofHip |aslant:FlatRoof_Tex. | all:color("#00ff00")RoofSide. }}
RoofHip-->

    roofHip(roofAngleHip)

    FlatRoof_Tex.    
//******************************************************
attr roofAngleGable3=40  #屋頂下部坡度

attr roofAngleGable023=25#頂部坡度
Lotfushi-->

    extrude(20)

    comp(f){top:color("#0000ff")TopFacade |side:color("#ff0000")SideFacade. |all:NIL}
 

TopFacade-->
    roofGable(roofAngleGable3)
    split(y){ '0.5: comp(f){bottom: NIL | horizontal:RoofGable |aslant:FlatRoof_Tex. | all:color("#00ff00")RoofSide. }}
RoofGable-->
    roofGable(roofAngleGable023)

    comp(f){bottom:NIL |aslant:FlatRoof_Tex. | all:color("#00ff00")RoofSide. }

  

    
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章