#endif
}
+// transforms a positive distance plane (A*x+B*y+C*z-D=0) through a rotation or translation matrix
void Matrix4x4_TransformPositivePlane(const matrix4x4_t *in, float x, float y, float z, float d, float *o)
{
float scale = sqrt(in->m[0][0] * in->m[0][0] + in->m[0][1] * in->m[0][1] + in->m[0][2] * in->m[0][2]);
#endif
}
+// transforms a standard plane (A*x+B*y+C*z+D=0) through a rotation or translation matrix
void Matrix4x4_TransformStandardPlane(const matrix4x4_t *in, float x, float y, float z, float d, float *o)
{
float scale = sqrt(in->m[0][0] * in->m[0][0] + in->m[0][1] * in->m[0][1] + in->m[0][2] * in->m[0][2]);
#endif
}
+void Matrix4x4_OriginScale3 (matrix4x4_t *out, double x, double y, double z)
+{
+#ifdef MATRIX4x4_OPENGLORIENTATION
+ out->m[3][0] *= x;
+ out->m[3][1] *= y;
+ out->m[3][2] *= z;
+#else
+ out->m[0][3] *= x;
+ out->m[1][3] *= y;
+ out->m[2][3] *= z;
+#endif
+}
+
void Matrix4x4_Abs (matrix4x4_t *out)
{
out->m[0][0] = fabs(out->m[0][0]);