attr Number_Floors = 3 attr Floor_Height = 2.8 attr Tile_Width = 3.5 attr Relative_Bay_Height = 0.5 attr Bay_Angle = 60 attr Bay_Border_Thickness = 0.1 attr Bay_Border_Depth = 0.12 attr Bay_Window_LowerHeight = 0.8 Lot --> extrude(world.y, Number_Floors * Floor_Height ) comp(f) {side : Facade | top : Roof. } Facade --> split(y) {~Floor_Height : Floor }* Floor --> split(x) {~Tile_Width : Tile }* Tile --> 30%: roofGable(Bay_Angle,0,0,false,0) # Reorient Roof vertically ! split(y) { ' Relative_Bay_Height : alignScopeToAxes(y) BayWindowVolume(scope.sy) | ~1 : NIL } else : Facade. BayWindowVolume(yDim) --> comp(f) {back : NIL | side : BayWindowSide | all : Rest. } BayWindowSide --> alignScopeToAxes(y) split(y) {Bay_Border_Thickness : BayBorder | ~1 : BayWindow | Bay_Border_Thickness : BayBorder} BayBorder --> s('1.10,'1,Bay_Border_Depth) center(x) i("builtin:cube") trim() BayWindow --> split(y){Bay_Window_LowerHeight : Wall. | ~1 : BayWindowFrame} BayWindowFrame --> offset(-.1) comp(f){border : Frame | inside : Glass.} Frame --> extrude(.05)
Is it possible to create a single roof that can cover the initial mass and the bay windows on the top floor?