diff --git a/core/src/net/sf/openrocket/rocketcomponent/FinSet.java b/core/src/net/sf/openrocket/rocketcomponent/FinSet.java index 4b8d58058..40aac2f90 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/FinSet.java +++ b/core/src/net/sf/openrocket/rocketcomponent/FinSet.java @@ -440,7 +440,7 @@ public abstract class FinSet extends ExternalComponent { double da = (y0 + y1) * (x1 - x0) / 2; finArea += da; - if (Math.abs(y0 - y1) < 0.00001) { + if (Math.abs(y0 + y1) < 0.00001) { finCGx += (x0 + x1) / 2 * da; finCGy += y0 / 2 * da; } else { diff --git a/core/test/net/sf/openrocket/rocketcomponent/FinSetTest.java b/core/test/net/sf/openrocket/rocketcomponent/FinSetTest.java index 3ad01f852..881773e36 100644 --- a/core/test/net/sf/openrocket/rocketcomponent/FinSetTest.java +++ b/core/test/net/sf/openrocket/rocketcomponent/FinSetTest.java @@ -119,13 +119,13 @@ public class FinSetTest extends BaseTestCase { fins.setPoints(points); Coordinate coords = fins.getCG(); assertEquals(3.0, fins.getFinArea(), 0.001); - // FIXME - this computes NaN - //assertEquals(3.5/3.0, coords.x, 0.001); - //assertEquals(0.5/3.0, coords.y, 0.001); + assertEquals(3.5/3.0, coords.x, 0.001); + assertEquals(0.5/3.0, coords.y, 0.001); } } + @Test public void testFreeformConvert() { testFreeformConvert(new TrapezoidFinSet());