I think thats exactly the problem I tried to fix earlier. Unfortunately I didn't have time to look into it further. I think "+Z whenever possible" is already part of the problem. +Z has to be transformed with the viewOrientationMatrix instead of just using +Y when its the direction is aligned with Z. This is a problem for every Projection/Section view that has its orientation relative to the front view. My problem was accessing the viewOrientationMatrix in the correct places. IMO the vOM should be (easily) referenceable from every view object, that would make a lot of things much easier.wandererfan wrote: 3) techno-babble: all views are presented with +Z pointing up whenever possible (+Y when projection direction is +/- Z). I believe the is the same behaviour as the 3D view. Is this wrong in general or just for ProjectionGroups? The math to spin the secondary views doesn't leap out at me, but it's early yet.
And its also kinda needed for arbitrarily rotated view directions. (Because what has +Z or +Y to do with your object where top points to 1/1/1).
I'm not a very good C++ coder, so I have troubles accessing the vOM from everywhere I need. If you (someone) can help there, I'll promise to finish arbitrarily rotated projections/sections including JaiseJames' problem this year