Select to view content in your preferred language

# Building height with roof

3204
2
12-04-2013 01:56 AM
Emerging Contributor
Hi all,

I am looking to create buildings with accurate height representation within a city.

My lots contain a building height attribute, which allows me to create 3D buildings to the correct height. However, due to the fact that my height attribute data was collected using Lidar, my height attributes are representative of the highest point on the building (often the ridge or chimney on a roof). As such, when I place a roof on my extruded building the height becomes an over estimate by the amount of height the roof itself adds.

Is there any way to incorporate the roof height within the building model attribute so that the height of the building is correct once the roof is added?

Cheers,
Jay
Tags (2)
1 Solution

Accepted Solutions
Frequent Contributor
Trigonometry.

If you only know the maximum height you must assign a roof angle, then assuming a gable roof you eave height will be:
MaxHeight-(0.5*BuildingWidth*tan(roofAngle))
or for a shed roof
MaxHeight-(BuildingWidth*tan(roofAngle))

or if you know the eave height the and the max height you can calulate the roof slope:
Gable:
atan(2*(MaxHeight-EaveHeight)/BuildingWidth)
Shed:
atan((MaxHeight-EaveHeight)/BuildingWidth)

building width will equal scope.sx (or .sy or .sz) assuming the scope is aligned to the geometry and it is a building with a simple rectangular footprint.
2 Replies
Frequent Contributor
Trigonometry.

If you only know the maximum height you must assign a roof angle, then assuming a gable roof you eave height will be:
MaxHeight-(0.5*BuildingWidth*tan(roofAngle))
or for a shed roof
MaxHeight-(BuildingWidth*tan(roofAngle))

or if you know the eave height the and the max height you can calulate the roof slope:
Gable:
atan(2*(MaxHeight-EaveHeight)/BuildingWidth)
Shed:
atan((MaxHeight-EaveHeight)/BuildingWidth)

building width will equal scope.sx (or .sy or .sz) assuming the scope is aligned to the geometry and it is a building with a simple rectangular footprint.
Emerging Contributor
Great idea, it may get a little bit complex as i have a few different roof types under a random attribute selector, but I am sure I can work on the theory to come up with something,

Cheers!