[#2409] Don't use fixed precision for shape parameter
This commit is contained in:
parent
7fe41ed0ae
commit
6e2d79e156
core/src/net/sf/openrocket/unit
@ -7,6 +7,7 @@ public class GeneralUnit extends Unit {
|
|||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
private final int significantNumbers;
|
private final int significantNumbers;
|
||||||
private final int decimalRounding;
|
private final int decimalRounding;
|
||||||
|
private final double stepValue;
|
||||||
|
|
||||||
// Values smaller that this are rounded using decimal rounding
|
// Values smaller that this are rounded using decimal rounding
|
||||||
// [pre-calculated as 10^(significantNumbers-1)]
|
// [pre-calculated as 10^(significantNumbers-1)]
|
||||||
@ -25,12 +26,17 @@ public class GeneralUnit extends Unit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public GeneralUnit(double multiplier, String unit, int significantNumbers, int decimalRounding) {
|
public GeneralUnit(double multiplier, String unit, int significantNumbers, int decimalRounding) {
|
||||||
|
this(multiplier, unit, significantNumbers, decimalRounding, 1.0);
|
||||||
|
}
|
||||||
|
|
||||||
|
public GeneralUnit(double multiplier, String unit, int significantNumbers, int decimalRounding, double stepValue) {
|
||||||
super(multiplier, unit);
|
super(multiplier, unit);
|
||||||
assert(significantNumbers>0);
|
assert(significantNumbers>0);
|
||||||
assert(decimalRounding>0);
|
assert(decimalRounding>0);
|
||||||
|
|
||||||
this.significantNumbers = significantNumbers;
|
this.significantNumbers = significantNumbers;
|
||||||
this.decimalRounding = decimalRounding;
|
this.decimalRounding = decimalRounding;
|
||||||
|
this.stepValue = stepValue;
|
||||||
|
|
||||||
double d=1;
|
double d=1;
|
||||||
double e=10;
|
double e=10;
|
||||||
@ -188,13 +194,13 @@ public class GeneralUnit extends Unit {
|
|||||||
@Override
|
@Override
|
||||||
public double getNextValue(double value) {
|
public double getNextValue(double value) {
|
||||||
// TODO: HIGH: Auto-generated method stub
|
// TODO: HIGH: Auto-generated method stub
|
||||||
return value+1;
|
return value + stepValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public double getPreviousValue(double value) {
|
public double getPreviousValue(double value) {
|
||||||
// TODO: HIGH: Auto-generated method stub
|
// TODO: HIGH: Auto-generated method stub
|
||||||
return value-1;
|
return value - stepValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -166,7 +166,7 @@ public class UnitGroup {
|
|||||||
UNITS_AREA.addUnit(new GeneralUnit(pow2(0.3048), "ft" + SQUARED));
|
UNITS_AREA.addUnit(new GeneralUnit(pow2(0.3048), "ft" + SQUARED));
|
||||||
|
|
||||||
UNITS_SHAPE_PARAMETER = new UnitGroup();
|
UNITS_SHAPE_PARAMETER = new UnitGroup();
|
||||||
UNITS_SHAPE_PARAMETER.addUnit(new FixedPrecisionUnit("" + ZWSP, 0.1)); // zero-width space
|
UNITS_SHAPE_PARAMETER.addUnit(new GeneralUnit(1, "" + ZWSP, 1, 10, 0.1));
|
||||||
|
|
||||||
|
|
||||||
UNITS_STABILITY = new UnitGroup();
|
UNITS_STABILITY = new UnitGroup();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user