AnsweredAssumed Answered

Split Floors & Facade wizard

Question asked by bilalbargouti on Oct 5, 2019
Latest reply on Oct 18, 2019 by LBranscomb-esristaff

Hello! 

 

I'm struggling for a while trying to do the following steps: i want to A. comp each facade (i'm good with it) then,

B. split each facade (i'm also good with it) then,

C.  use the facade wizard to model the ground floor, and the upper floor "when needed and write one rule to have (the comp & split & the facade wizard output together)

** i read about the import rules and i have a good result with the comp and the split process. 

my Q is: How can I edit the rule to be able to use the facade wizard output with my "facade split parts" (Ground floor & other floors)

 

1.this rule is for using the facade wizard output to "texture" the facade

/**
* File:    Test_Facade.cga
* Created: 21 Sep 2019 10:13:07 GMT
* Author:  bilald
*/

version "2018.1"

import gen_Facade_AdvancedFacade :"/شارع السهل/rules/gen_Facade_goolge2_cropped.cga"
import gen_Facade_AdvancedFacade1 :"/شارع السهل/rules/gen_Facade_IMG_3451_cropped.cga"
import gen_Facade_AdvancedFacade2 :"/شارع السهل/rules/gen_Facade_السهل 34ب_cropped.cga"
import gen_Facade_AdvancedFacade3 :"/شارع السهل/rules/gen_Facade_السهل34 ج_cropped.cga"
import gen_Facade_AdvancedFacade4 :"/شارع السهل/rules/gen_Facade_السهل 34د_cropped.cga"
import gen_Facade_AdvancedFacade5 :"/شارع السهل/rules/gen_Facade_السهل 34ه_cropped.cga"




#attributes#

attr height = 11
attr Roof_Ht =2



#Rule#

lot-->
extrude (height)

comp(f) {0:Base|1:Roof|2:AA|3:BB|4:CC|5:DD|6:EE|7:FF|8:GG|9:HH|10:II|11:JJ|12:KK|13:LL|14:MM|15:NN|16:OO|17:PP|18:QQ|19:RR|20:SS|21:TT|22:UU|23:VV|24:WW|25:XX|26:YY|27:ZZ|28:AB|29:A|30:AD|31:AE}

            BB--> comp(f) { 2 :gen_Facade_AdvancedFacade3.Facade}
      
            CC-->comp(f) { 2 :gen_Facade_AdvancedFacade2.Facade}
               
            EE-->comp(f) { 2 :gen_Facade_AdvancedFacade.Facade}
     
            FF-->comp(f) { 2 :gen_Facade_AdvancedFacade4.Facade}

            DD-->comp(f) { 2 :gen_Facade_AdvancedFacade1.Facade}
               
            GG-->comp(f) { 2 :gen_Facade_AdvancedFacade5.Facade}
               
          

 

2. this is the split rule for facade 

/**
* File:    Test_Comp_Splitfacade.cga
* Created: 5 Oct 2019 07:12:04 GMT
* Author:  Bilal Mustafa
*/

version "2018.1"
attr height = 10
attr groundfloor_height=4
attr floorheight=3


Building-->
extrude(height) facade

facade-->
comp(f){4:BB|5:CC}

BB-->
split(y){ groundfloor_height    : Floor(split.index)      // Groundfloor
               | floorheight : Floor(split.index)                   // First Floor               
               | floorheight : Floor(split.index)                     // Second Floor
               | {~floorheight : Floor(split.index)}*               // Mid Floors
               | floorheight : Floor(999)                              // Top Floor, indexed with 999
               | 0.5 : s('1,'1,0.3) LedgeAsset}                       // The top ledge just below the roof


 

3. this rule to import the "facade comp" and the split together using the import function 

/**
* File:    import_rules_test.cga
* Created: 5 Oct 2019 07:28:32 GMT
* Author: Bilal Mustafa
*/

version "2018.1"

import f1:"extrude_comp.cga"
import f2:"split.cga"

attr height= 4


facade--> extrude (height)
f1.facade

Attachments

Outcomes