I know the data is 'surveyed'... but the survey accuracy is probably +/- several mm - you couldn't expect anything better. Many of these buildings are almost 'square' - several of the sides are at right-angles or parallel as you'd expect, but a few are 'just off' and clearly shouldn't be - I mean by 3-8mm in alignments - which is nothing in terms of their measured accuracy, BUT when applied to a top face that might then become an un-roof-able 'crooked star' it really matters - when you build a hip roof in the real world and all slopes should be say 30 degrees if one is 30.001 degrees no one will notice.
I've been thinking about this - an 'orthogonalizer' tool that'd look at a form and adjusts any slight unevenness would be possible - you could set the 'accuracy' tolerance - e.g. adjust parallel edges that have 'lines' less than perhaps 10mm apart, adjust near parallel edges with 'lines' that are perhaps less than 1 degree apart, align co-vertexed near-parallel edges with 'lines' that are within 1 degree apart or make square co-vertexed near-perpendicular edges with 'lines' that are between 89 and 91 degrees apart [these 'ranges' could be customizable] - all other edges would stay as they are since you might have skewed building by design, rather than by survey or drawing inaccuracies... You'd select the form and run the tool and it would fix it - you'd not notice the difference... The new tool is on the bottom of the long list... π
Or I could build in some 'orthogonaliztion' into the roof tool and duplicate the top face slightly adjusted ?
Alternatively I could completely change the way the roof tool makes hipped roofs and allow some 'slope tweaking' to make it work - unfortunately THAT is now very complex mathematics/geometry... and my brain hurts thinking about it already... π