[fixes #431] Fins default to instance count / fin count == 1

- Fixed init bug
- added unittests for fin count loading/saving/creation
This commit is contained in:
Daniel_M_Williams 2018-07-15 19:20:03 +01:00
parent eee24233cb
commit 1418cb902b
3 changed files with 14 additions and 2 deletions

View File

@ -74,7 +74,7 @@ public abstract class FinSet extends ExternalComponent implements RingInstanceab
/** /**
* Number of fins. * Number of fins.
*/ */
protected int fins = 3; protected int fins = 1;
/** /**
* Rotation about the x-axis by 2*PI/fins. * Rotation about the x-axis by 2*PI/fins.

View File

@ -39,7 +39,7 @@ public class TrapezoidFinSet extends FinSet {
public TrapezoidFinSet() { public TrapezoidFinSet() {
this(3, 0.05, 0.05, 0.025, 0.03); this(1, 0.05, 0.05, 0.025, 0.03);
} }
// TODO: HIGH: height=0 -> CP = NaN // TODO: HIGH: height=0 -> CP = NaN

View File

@ -23,6 +23,18 @@ import net.sf.openrocket.util.BaseTestCase.BaseTestCase;
public class FinSetTest extends BaseTestCase { public class FinSetTest extends BaseTestCase {
@Test
public void testMultiplicity() {
final TrapezoidFinSet trapFins = new TrapezoidFinSet();
assertEquals(1, trapFins.getFinCount());
final FreeformFinSet fffins = new FreeformFinSet();
assertEquals(1, fffins.getFinCount());
final EllipticalFinSet efins = new EllipticalFinSet();
assertEquals(1, efins.getFinCount());
}
@Test @Test
public void testTrapezoidCGComputation() { public void testTrapezoidCGComputation() {