As I'm still having difficulty recognizing the differences between math and computer programming, I decided to try swapping out the typical rotation matrix construction [www.euclideanspace.com] using just sines and cosines of angles with a matrix that used expressions instead. I mean, basically the rotation handle's circular axes are each generated by OpenGL using the same sine/cosine function, and they also represent the rotation matrix that it's controlling. So why not introduce other shapes/geometric patterns [paulbourke.net] into the mix?
I hinted at this with my earlier post that showed how a super-ellipse at n1=n2=0 could potentially be use to drive the location of an object being used as an upVector to prevent singularities/flipping when/if the lookAt object is at the same location as the upVector. I've now tried my hand at a cardioid [paulbourke.net] cycloid, which I've attached here, and so far both rotation and scaling works as predicted. The only issues have been with the superellipse, because for some reason I couldn't can't write a simple sin^0(x) and cos^0(x) and had to resort to if/then, sign, and abs functions that slow down the whole thing because apparently using braces is expensive… [betterexplained.com]
Another curiosity of mine is whether or not one can convert a 3d location into a rotation and scale matrix representation of that location. So far the closest I've gotten to finding out is by pretending the 3d location is a quaternion which I then convert to a matrix, but scaling by the distance between the location and the origin is proving to be hard to figure out…