package tim.prune.data; /** * Class to represent a Latitude Coordinate */ public class Latitude extends Coordinate { /** * Constructor * @param inString string value from file */ public Latitude(String inString) { super(inString); } /** * Constructor * @param inValue value of coordinate * @param inFormat format to use */ public Latitude(double inValue, int inFormat) { super(inValue, inFormat, inValue < 0.0 ? SOUTH : NORTH); } /** * Turn the given character into a cardinal * @see tim.prune.data.Coordinate#getCardinal(char) */ protected int getCardinal(char inChar) { // Latitude recognises N, S and - // default is No cardinal int cardinal = NO_CARDINAL; switch (inChar) { case 'N': case 'n': cardinal = NORTH; break; case 'S': case 's': case '-': cardinal = SOUTH; break; default: // no character given } return cardinal; } /** * @return default cardinal (North) * @see tim.prune.data.Coordinate#getDefaultCardinal() */ protected int getDefaultCardinal() { return NORTH; } /** * Make a new Latitude object * @see tim.prune.data.Coordinate#makeNew(double, int) */ protected Coordinate makeNew(double inValue, int inFormat) { return new Latitude(inValue, inFormat); } /** * @return the maximum degree range for this coordinate */ protected int getMaxDegrees() { return 90; } }