Building--> setupProjection(0, scope.xz, 500, 500) envelope(MaxHeight, FrontBaseHgt, FrontAngle, RearBaseheight, RearAngle, SideBaseheight, SideAngle ) #comp(f) {top : Top } BuildingVolume3D BuildingVolume3D --> # the 3d volume will not be split into smaller 3d volumes ! 1 ground floor volume will be created. alignScopeToAxes(y) split(y) {GroundFloorHeight : Volume("GF") | ~1 : AllUpperFloors} AllUpperFloors --> alignScopeToAxes(y) split(y) {~UpperFloorHeight : Volume("UF")}* NIL Volume(volumeType) --> case volumeType == "GF" : case NumFlrComm > 0: case LOD == 1: comp(f){side: GFloorSide | bottom: FloorBottom} set(material.opacity,0.8) report("1 Ground Flr Area", geometry.area(bottom)) report("1 Ground Flr Revenue", (geometry.area(bottom) * GFRate)) set(TotRevenue, (TotRevenue + geometry.area(bottom) * GFRate)) report("3 Total Revenue", TotRevenue) set (currentFloorIndex, currentFloorIndex + 1) report("NUMBER OF FLRS", currentFloorIndex) MassReporting else: comp(f){side: GFloorSideS | bottom: FloorBottom} report("1 Ground Flr Area", geometry.area(bottom)) report("1 Ground Flr Revenue", (geometry.area(bottom) * GFRate)) set(TotRevenue, (TotRevenue + geometry.area(bottom) * GFRate)) report("3 Total Revenue", TotRevenue) set (currentFloorIndex, currentFloorIndex + 1) report("NUMBER OF FLRS", currentFloorIndex) MassReporting else: case LOD == 1: comp(f){side: FloorSideRes | bottom: FloorBottom | top : Top} set(material.opacity,0.8) report("2 Res Flr Area", geometry.area(bottom)) report("2 Res Flr Revenue", (geometry.area(bottom) * UFRate)) set(TotRevenue, (TotRevenue + geometry.area(bottom) * UFRate)) report("3 Total Revenue", TotRevenue) set (currentFloorIndex, currentFloorIndex + 1) report("NUMBER OF FLRS", currentFloorIndex) MassReporting else: comp(f){side: FloorSideSRes | bottom: FloorBottom | top : Top} report("2 Upper Flr Area", geometry.area(bottom)) report("2 Upper Flr Revenue", (geometry.area(bottom) * UFRate)) set(TotRevenue, (TotRevenue + geometry.area(bottom) * UFRate)) report("3 Total Revenue", TotRevenue) set (currentFloorIndex, currentFloorIndex + 1) report("NUMBER OF FLRS", currentFloorIndex) MassReporting else : case currentFloorIndex <= NumFlrComm: case LOD == 1: comp(f){side: FloorSideC | bottom: FloorBottom | top : Top} set(material.opacity,0.8) report("2 Comm Flr Area", geometry.area(bottom)) report("2 Comm Flr Revenue", (geometry.area(bottom) * UFRate)) set(TotRevenue, (TotRevenue + geometry.area(bottom) * UFRate)) report("3 Total Revenue", TotRevenue) set (currentFloorIndex, currentFloorIndex + 1) report("NUMBER OF FLRS", currentFloorIndex) MassReporting else: comp(f){side: FloorSideSC | bottom: FloorBottom | top : Top} report("2 Comm Flr Area", geometry.area(bottom)) report("2 Comm Flr Revenue", (geometry.area(bottom) * UFRate)) set(TotRevenue, (TotRevenue + geometry.area(bottom) * UFRate)) report("3 Total Revenue", TotRevenue) set (currentFloorIndex, currentFloorIndex + 1) report("NUMBER OF FLRS", currentFloorIndex) MassReporting else: case LOD == 1: comp(f){side: FloorSideRes | bottom: FloorBottom | top : Top} set(material.opacity,0.8) report("2 Res Flr Area", geometry.area(bottom)) report("2 Res Flr Revenue", (geometry.area(bottom) * UFRate)) set(TotRevenue, (TotRevenue + geometry.area(bottom) * UFRate)) report("3 Total Revenue", TotRevenue) set (currentFloorIndex, currentFloorIndex + 1) report("NUMBER OF FLRS", currentFloorIndex) MassReporting else: comp(f){side: FloorSideSRes | bottom: FloorBottom | top : Top} report("2 Upper Flr Area", geometry.area(bottom)) report("2 Upper Flr Revenue", (geometry.area(bottom) * UFRate)) set(TotRevenue, (TotRevenue + geometry.area(bottom) * UFRate)) report("3 Total Revenue", TotRevenue) set (currentFloorIndex, currentFloorIndex + 1) report("NUMBER OF FLRS", currentFloorIndex) MassReporting
Solved! Go to Solution.