Just a simplification of the code used for the Navigate Gizmo. In a nutshell it goes from 623 lines down to 346349, so about a **45% decrease**. Unused (and unusable) code removed. More defines, improved comments, etc.
While there I changed the behavior minimsubstantially.
While freely rotating you will notice that the negative axisThere is not longer a flashing when balls are the same size as the positive, passes from behind to in front. and shareInstead the same coloring, although using rings for negative. Those hollow rings gain solid interiors when in frontre is a smooth transition. So they are brighter closer to use, and duller and darker while further away. Hard to describe in words but it seems to indicate the 3D relationship better, still gives prominence to the positive axes but shows negative ones clearerThey are also a bit bigger when closer and smaller in the back. And the negative balls become transparent when far away.
Why make the negative balls the same size as the positives? Because we are not (properly) displaying this assortment of things as a real 3D object, so parts in front are not shown larger than parts in back. This already interferes with our ability to orient it in space. Having the balls two sizes makes this worse, in that smaller negatives balls move to the front and remain smaller than the balls behind them. Making them the same size fixes one part of this problem in that is breaks an assumption that we can make that the smaller balls are further away.{F9477825}
HereI've changed highlighting so it is in use:primarily affects the text color. And now it shows the negative axis names on hover.
{F9473718}7826}
When aligned, the center axis ball gets a bit larger and will show negative axis namesile aligned it is showing all axis lines so it looks a bit more like the axis lines in the viewport. The middle ball always shows axis name, as in "-X". Seems a bit clearer what is going on:even if negative. The other negative axis will show on hover though.
{F9474014}7829}