From: Olyutorskii Date: Wed, 12 Jun 2019 08:14:04 +0000 (+0900) Subject: add strict unit test for math class. X-Git-Tag: release-3.122.2^2~7 X-Git-Url: http://git.osdn.net/view?p=mikutoga%2FTogaGem.git;a=commitdiff_plain;h=b240f2488117c5cd8a7ff39a32c40be3c08056cf;ds=sidebyside add strict unit test for math class. --- diff --git a/src/main/java/jp/sfjp/mikutoga/math/MkPos2D.java b/src/main/java/jp/sfjp/mikutoga/math/MkPos2D.java index 9753b0f..dc05c20 100644 --- a/src/main/java/jp/sfjp/mikutoga/math/MkPos2D.java +++ b/src/main/java/jp/sfjp/mikutoga/math/MkPos2D.java @@ -97,9 +97,9 @@ public strictfp class MkPos2D { * @return 原点ならtrue */ public boolean isOriginPoint(){ - if(this.xPos != 0.0) return false; - if(this.yPos != 0.0) return false; - return true; + boolean result = + this.xPos == 0.0 && this.yPos == 0.0; + return result; } /** diff --git a/src/main/java/jp/sfjp/mikutoga/math/MkPos3D.java b/src/main/java/jp/sfjp/mikutoga/math/MkPos3D.java index c6abb82..9c80c3c 100644 --- a/src/main/java/jp/sfjp/mikutoga/math/MkPos3D.java +++ b/src/main/java/jp/sfjp/mikutoga/math/MkPos3D.java @@ -120,10 +120,9 @@ public strictfp class MkPos3D { * @return 原点ならtrue */ public boolean isOriginPoint(){ - if(this.xPos != 0.0) return false; - if(this.yPos != 0.0) return false; - if(this.zPos != 0.0) return false; - return true; + boolean result = + this.xPos == 0.0 && this.yPos == 0.0 && this.zPos == 0.0; + return result; } /** diff --git a/src/test/java/jp/sfjp/mikutoga/math/MkPos2DTest.java b/src/test/java/jp/sfjp/mikutoga/math/MkPos2DTest.java index 6d5ab13..d339e96 100644 --- a/src/test/java/jp/sfjp/mikutoga/math/MkPos2DTest.java +++ b/src/test/java/jp/sfjp/mikutoga/math/MkPos2DTest.java @@ -61,6 +61,18 @@ public strictfp class MkPos2DTest { assertEquals(3.0, pos.getXpos(), 0.0); assertEquals(4.0, pos.getYpos(), 0.0); + pos.setPosition(1.0, 0.0); + assertFalse(pos.isOriginPoint()); + + pos.setPosition(0.0, 1.0); + assertFalse(pos.isOriginPoint()); + + pos.setPosition(0.0, 0.0); + assertTrue(pos.isOriginPoint()); + + pos.setPosition(-0.0, -0.0); + assertTrue(pos.isOriginPoint()); + pos = new MkPos2D(5.0, 6.0); assertEquals(5.0, pos.getXpos(), 0.0); assertEquals(6.0, pos.getYpos(), 0.0); diff --git a/src/test/java/jp/sfjp/mikutoga/math/MkPos3DTest.java b/src/test/java/jp/sfjp/mikutoga/math/MkPos3DTest.java index 92ac94b..5ac6944 100644 --- a/src/test/java/jp/sfjp/mikutoga/math/MkPos3DTest.java +++ b/src/test/java/jp/sfjp/mikutoga/math/MkPos3DTest.java @@ -70,6 +70,21 @@ public strictfp class MkPos3DTest { assertEquals(5.0, pos.getYpos(), 0.0); assertEquals(6.0, pos.getZpos(), 0.0); + pos.setPosition(0.0, 0.0, 0.0); + assertTrue(pos.isOriginPoint()); + + pos.setPosition(1.0, 0.0, 0.0); + assertFalse(pos.isOriginPoint()); + + pos.setPosition(0.0, 1.0, 0.0); + assertFalse(pos.isOriginPoint()); + + pos.setPosition(0.0, 0.0, 1.0); + assertFalse(pos.isOriginPoint()); + + pos.setPosition(-0.0, -0.0, -0.0); + assertTrue(pos.isOriginPoint()); + pos = new MkPos3D(7.0, 8.0, 9.0); assertEquals(7.0, pos.getXpos(), 0.0); assertEquals(8.0, pos.getYpos(), 0.0); diff --git a/src/test/java/jp/sfjp/mikutoga/math/MkQuatTest.java b/src/test/java/jp/sfjp/mikutoga/math/MkQuatTest.java index 216c3ec..235b8e7 100644 --- a/src/test/java/jp/sfjp/mikutoga/math/MkQuatTest.java +++ b/src/test/java/jp/sfjp/mikutoga/math/MkQuatTest.java @@ -491,6 +491,15 @@ public strictfp class MkQuatTest { assert0UlpEquals(yRad, eu.getYRot()); assertUlpEquals(zRad, eu.getZRot(), 1); + xRad = toRadians(90); + yRad = toRadians(-120); + zRad = toRadians(120); + qq.setEulerYXZ(xRad, yRad, zRad); + qq.toEulerYXZ(eu, yRad); + assert0UlpEquals(xRad, eu.getXRot()); + assert0UlpEquals(yRad, eu.getYRot()); + assertUlpEquals(zRad, eu.getZRot(), 1); + xRad = toRadians(89.999); yRad = toRadians(89.999); zRad = toRadians(89.999);