X-Git-Url: https://gitweb.fperrin.net/?p=GpsPrune.git;a=blobdiff_plain;f=tim%2Fprune%2Fdata%2FCoordinate.java;h=6d8de61197bec7ae945658662c1060c4dd0e7663;hp=e297a8d7036fdf7209f6ad15635d70b3c12f26bf;hb=d3679d647d57c2ee7376ddbf6def2d5b23c04307;hpb=312fec956e43f5d0a38617da5d0add9c62563e2c diff --git a/tim/prune/data/Coordinate.java b/tim/prune/data/Coordinate.java index e297a8d..6d8de61 100644 --- a/tim/prune/data/Coordinate.java +++ b/tim/prune/data/Coordinate.java @@ -128,8 +128,9 @@ public abstract class Coordinate * Constructor * @param inValue value of coordinate * @param inFormat format to use + * @param inCardinal cardinal */ - protected Coordinate(double inValue, int inFormat) + protected Coordinate(double inValue, int inFormat, int inCardinal) { _asDouble = inValue; // Calculate degrees, minutes, seconds @@ -140,10 +141,12 @@ public abstract class Coordinate _seconds = (int) numSecs; _fracs = (int) ((numSecs - _seconds) * 10); // Make a string to display on screen + _cardinal = inCardinal; _originalFormat = FORMAT_NONE; if (inFormat == FORMAT_NONE) inFormat = FORMAT_DEG_WITHOUT_CARDINAL; _originalString = output(inFormat); _originalFormat = inFormat; + _valid = true; } @@ -193,7 +196,8 @@ public abstract class Coordinate // format as specified switch (inFormat) { - case FORMAT_DEG_MIN_SEC: { + case FORMAT_DEG_MIN_SEC: + { StringBuffer buffer = new StringBuffer(); buffer.append(PRINTABLE_CARDINALS[_cardinal]) .append(threeDigitString(_degrees)).append('°') @@ -202,11 +206,17 @@ public abstract class Coordinate .append(_fracs); answer = buffer.toString(); break; } - case FORMAT_DEG_MIN: answer = "" + PRINTABLE_CARDINALS[_cardinal] + threeDigitString(_degrees) + "°" - + (_minutes + _seconds / 60.0 + _fracs / 600.0); break; + case FORMAT_DEG_MIN: + { + answer = "" + PRINTABLE_CARDINALS[_cardinal] + threeDigitString(_degrees) + "°" + + (_minutes + _seconds / 60.0 + _fracs / 600.0); break; + } case FORMAT_DEG: - case FORMAT_DEG_WITHOUT_CARDINAL: answer = (_asDouble<0.0?"-":"") - + (_degrees + _minutes / 60.0 + _seconds / 3600.0 + _fracs / 36000.0); break; + case FORMAT_DEG_WITHOUT_CARDINAL: + { + answer = (_asDouble<0.0?"-":"") + + (_degrees + _minutes / 60.0 + _seconds / 3600.0 + _fracs / 36000.0); break; + } } } return answer;