Linear algebra was a couple years ago, so I'm a bit rusty on the steps I need to take for this problem. We have a top-down view of houses, and want to determine the area of the roof. We outline each plane of the roof, so that each separate polygon represents a contiguous part of the roof which has the same pitch. To make this example simple, just think of a shed with a single roof plane at 45 degrees. We know the orientation of each plane, and the pitch. Now, from a top-down view, the roof area may look square, but because it is pitched, in reality the roof is rectangle. For instance, if from a top-down view, the roof looks to be 1 meter by 1 meter, and the pitch is 45 degrees, in reality the roof is 1 meter by 1*srt(2) meters. It's easy in a trivial case, but I need a general solution for an arbitrary polygon with an arbitrary pitch on an arbitrary orientation (ie pitch is 45 degrees facing north or 0 degrees, etc). Since we're transforming the polygon in 3D space into a 2D viewing plane, I take it I'll need some sort of reverse transformation, but I'm not sure how to work in the orientation and angle into all of that. Any thoughts?