Roofs are the only operations which �?? this was not yet fixed, but it�??s on the to do list �?? are oriented based on the vertex order of the geometry, and NOT based on the scope orientation, as other ops.
There�??s 2 ways to fix this for rectangular geometries, basically 2 hacks.
1]
physically rotate the geometry in that case ( e.g. rotating the scope by 90 degs and inserting a quad. [ or inserting a builtin:cube, then take the bottom face with reversed Normals ]
2]
make a case statement, where you call roof twice, for both ratios :
Once normal and once with :
roofGable(angle, overhangX, overhangY, even, index)
this does a hardcoded-rotation of the geometry.
Bad side of 2] is that not all roof ops have an �??index�?? param.
You'll need to play with this a bit, but I've not always been able to make this happen correctly.
Matt