- 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:
+ {
+ if (_originalFormat != FORMAT_DEG_WITHOUT_CARDINAL)
+ {
+ answer = (_asDouble<0.0?"-":"")
+ + (_degrees + _minutes / 60.0 + _seconds / 3600.0 + _fracs / 3600.0 / _fracDenom);
+ }
+ break;
+ }
+ case FORMAT_DECIMAL_FORCE_POINT:
+ {
+ // Forcing a decimal point instead of system-dependent commas etc
+ if (_originalFormat != FORMAT_DEG_WITHOUT_CARDINAL || answer.indexOf('.') < 0) {
+ answer = EIGHT_DP.format(_asDouble);
+ }
+ break;
+ }
+ case FORMAT_DEG_MIN_SEC_WITH_SPACES:
+ {
+ // Note: cardinal not needed as this format is only for exif, which has cardinal separately
+ answer = "" + _degrees + " " + _minutes + " " + _seconds + "." + formatFraction(_fracs, _fracDenom);
+ break;
+ }
+ case FORMAT_CARDINAL:
+ {
+ answer = "" + PRINTABLE_CARDINALS[_cardinal];
+ break;
+ }