Hello @peek/Joep,

let us split here the thing into two parts:

- It is important to understand the concept of matrices encoding transforms. This is not a particular complicated thing once you get it. I know that this stuff looks intimidating as most people have nothing to do with matrices in their daily work, but understanding this concept will make you much more flexible in what you do as a (technical) artist, not only in Python, but also in our scene nodes and even other products. But this is more a tip from me.
- Your problem at hand: I am still not 100% sure what you want to do. If it is moving an axis, the topics How to Center the Axis of Objects and CAD Normal Tag flipped after Polygon merge (join) and axis repositioning - how realign? will likely give you a good starting point, as I did provide there commented code.

When this still does not solve your problem at hand, I would ask you to provide a scene file for your problem, as providing such usually solves these "explaining" problems the fastest (images also work).

Cheers,

Ferdinand

Then when I see the 3rd image I see the number "1" jump colums which is the part that makes it confusing to me. I believe in the dabble I had with matrices that default "1" is the scale but I don't grasp why it doesn't just stay in one of the colored columns.

With 3rd image I assume you mean this here?

This is the identity matrix I have talked about in my first posting, it encodes the world coordinate system, it is what you get when construct a matrix without any arguments. The stuff in red is the x-axis (1, 0, 0), green the y-axis (0, 1, 0), and blue the z-axis (0, 0, 1), these three vectors (red, green, and blue) are what form the basis of the transform. They are literally three axis.

Another time when I read out the matrix of an object that had rotations on it, the matrix showed everything 0 apart from those 3x default 1 jumping columns.

So it appeared the matrix did not have any rotational values stored.

Again, this confused me.

When you object is not aligned with the world coordinate system, this is perfectly normal. So, when for example the x-axis of your object is aligned with the y-axis of the world axis (and the object z-axis is still aligned with the world z-axis), then the matrix will be

`Matrix(v1: (0, 1, 0); v2: (-1, 0, 0); v3: (0, 0, 1); off: (0, 0, 0))`

v1, the first component of the basis, i.e., the x-axis is now equal to the world y-axis (0, 1, 0). The same aplies to the y-axis of the object, which now has become equal to the inverse of the world x-axis (-1, 0, ,0)

To be open and honest here, I'm a visual artist that has started to do coding to make internal company tools and while I have an ok understanding of math some things like this, I can't yet visualize for myself, so I don't fully understand it yet.

We understand that, and there is no rush from our side for you to come up to speed. We however do not prioritize explaining such fundamental concepts in the SDK Team here, as this is a boundless topic, as there is such much math and computer science concepts to explain to explain all the general concepts behind our APIs. For now, this reduced form of the Matrix manual must suffice. If you follow one of the educational courses on linear algebra, they will usually also provide a geometric explanation of the math (i.e., something visual).

Cheers,

Ferdinand