More verbosely check for "scaled" in AffineTransform and override all required methods in BlockTransformExtent

- fixes #462
This commit is contained in:
dordsor21
2021-01-11 14:21:56 +00:00
parent 5903178c53
commit fa8660c7a9
2 changed files with 29 additions and 12 deletions

View File

@ -297,7 +297,7 @@ public class AffineTransform implements Transform, Serializable {
public boolean isScaled(Vector3 vector) {
boolean flip = false;
if (vector.getX() != 0 && m00 < 0) {
flip = !flip;
flip = true;
}
if (vector.getY() != 0 && m11 < 0) {
flip = !flip;
@ -305,6 +305,18 @@ public class AffineTransform implements Transform, Serializable {
if (vector.getZ() != 0 && m22 < 0) {
flip = !flip;
}
if (flip) {
return true;
}
if (vector.getX() != 0 && m01 != 0 && m01 == m10) {
flip = true;
}
if (vector.getY() != 0 && m02 != 0 && m02 == m20) {
flip = !flip;
}
if (vector.getZ() != 0 && m21 != 0 && m21 == m12) {
flip = !flip;
}
return flip;
}