01: /*
02: * JScience - Java(TM) Tools and Libraries for the Advancement of Sciences.
03: * Copyright (C) 2006 - JScience (http://jscience.org/)
04: * All rights reserved.
05: *
06: * Permission to use, copy, modify, and distribute this software is
07: * freely granted, provided that this notice is preserved.
08: */
09: package org.jscience.geography.coordinates.crs;
10:
11: import java.util.Collection;
12: import java.util.Set;
13:
14: import javax.measure.unit.SI;
15:
16: import org.jscience.geography.coordinates.Coordinates;
17: import org.opengis.metadata.Identifier;
18: import org.opengis.referencing.cs.AxisDirection;
19: import org.opengis.referencing.cs.CoordinateSystem;
20: import org.opengis.referencing.cs.CoordinateSystemAxis;
21: import org.opengis.util.InternationalString;
22:
23: /**
24: * This class represents a 2-dimensional projected reference system.
25: *
26: * @author <a href="mailto:jean-marie@dautelle.com">Jean-Marie Dautelle</a>
27: * @version 3.0, February 13, 2006
28: */
29: public abstract class ProjectedCRS<C extends Coordinates<?>> extends
30: CoordinateReferenceSystem<C> {
31:
32: /**
33: * Holds the Easting/Northing coordinate system.
34: */
35: public static final CoordinateSystem EASTING_NORTHING_CS = new CoordinateSystem() {
36:
37: Axis eastingAxis = new Axis("Easting", "E", SI.METRE,
38: AxisDirection.EAST);
39:
40: Axis northingAxis = new Axis("Northing", "N", SI.METRE,
41: AxisDirection.NORTH);
42:
43: public int getDimension() {
44: return 2;
45: }
46:
47: public CoordinateSystemAxis getAxis(int dimension)
48: throws IndexOutOfBoundsException {
49: if (dimension == 0) {
50: return eastingAxis;
51: } else if (dimension == 1) {
52: return northingAxis;
53: } else {
54: throw new IndexOutOfBoundsException();
55: }
56: }
57:
58: public Identifier getName() {
59: throw new UnsupportedOperationException();
60: }
61:
62: public Collection<String> getAlias() {
63: return EMPTY_SET;
64: }
65:
66: public Set<String> getIdentifiers() {
67: return EMPTY_SET;
68: }
69:
70: public InternationalString getRemarks() {
71: throw new UnsupportedOperationException();
72: }
73:
74: public String toWKT() throws UnsupportedOperationException {
75: throw new UnsupportedOperationException();
76: }
77: };
78:
79: }
|