AnsweredAssumed Answered

# Modelling buildings based on Building Coverage Ratio (BCR) and FAR values in CE

Question asked by cnecefli on Dec 4, 2017
Latest reply on Dec 12, 2017 by s_abhishek

Hi all,

I'm aware that similar questions have been asked before but none of the solutions have worked for me.

Basically I have to model my buildings based on the target Building Coverage Ratio, Setback Distances and FAR values given by the client. To do this I start with defining my setback distances which leaves me the footprint area. After this point I was able to figure out how to extrude my buildings based on FAR values although I cannot find a way of how to restrict the footprint area to a certain percentage of the parcel and also interconnect both the BCR and FAR values.

I attached a screenshot too that can be helpful to understand what I want to achieve.

Any input will be appreciated (:

/**
* File:    rule1.cga
* Created: 30 Oct 2017 11:36:07 GMT
* Author:  Jafar Najafli
*/
@StartRule

attr Layer="PL_KONUT"
attr frontSetback = 3.5
attr backSetback = 3
attr sideSetback = 3
attr floorheight= 3
const parcelarea = geometry.area()

attr FAR = 1
attr BCR = 0.2

Parcel-->
case parcelarea > 1000:
NIL
else:
setback(frontSetback) {street.front: NIL | remainder :
setback (backSetback) {street.back: NIL | remainder:
setback (sideSetback) {street.side: NIL | remainder: footprint
}
}
}

footprint-->
extrude(world.up.flatTop, floorheight*(parcelarea/geometry.area()*FAR)) Building
report ("Height", scope.sy)

Building -->
report ("floorarea", geometry.area(bottom))
report ("FAR", geometry.area()/parcelarea)
report ("BCR", geometry.area(bottom) / parcelarea) ## this reports an accurate calculation of building coverage ratio, although it does not work as a modeling function
split(y){floorheight:zemin|{floorheight:arakat}*|floorheight:catikat}
comp(f){side:cephe}