Is it possible to reset the scale of a matrix the same way as ResetScale $ works for objcets?
Here is an example:
(
mat01 = (matrix3 [-0.95407,0.14169,-0.263958] [-0.211014,-0.943264,0.256371] [0.212657,-0.300295,-0.929839] [-2.59766,-51.5166,16.7929])
format "mat01 scale: % \n" mat01.scale --> [-1,-1,-1]
p = point transform:mat01
ResetScale p
mat02 = p.transform
format "mat02 scale: % \n" mat02.scale --> [1,1,1]
-- "mat02 is the desired result - scale is [1,1,1] and the axes directions are not changed"
-- (matrix3 [0.95407,-0.14169,0.263958] [0.211014,0.943264,-0.256371] [-0.212657,0.300295,0.929839] [-2.59766,-51.5166,16.7929])
)
Matrix math is always tricky - each system is a little different in terms of how they implement it - how they build their matrices and the order of matrix multiplication. I’m guessing for the math I gave you that you would need to flip the multiplication order (matrix multiplication is non-commutative) or something else simple. Since it’s already solved, I won’t bother fixing it