skyview.geometry
Class CoordinateSystem

java.lang.Object
  extended by skyview.geometry.CoordinateSystem
All Implemented Interfaces:
java.io.Serializable, Component
Direct Known Subclasses:
BesselianCoordinateSystem, EclipticCoordinateSystem, GalacticCoordinateSystem, ICRSCoordinateSystem, JulianCoordinateSystem

public abstract class CoordinateSystem
extends java.lang.Object
implements Component

The class defines coordinate systems in terms of the operations needed to transform the standard coordinate system (currently J2000) to the coordinate system associated with the object. Most coordinate systems will be defined as simple rotations, but some coordinate systems may involve more complext transformations. A factory method is available to generate Coordinate systems from a given string. Typically a string is comprised of an initial and an epoch (e.g., "B1950", "J1975.5"). Any string beginning with "G" is assumed to be Galactic coordinates.

See Also:
Serialized Form

Field Summary
static CoordinateSystem B1950
          Standard B1950 coordinates
static CoordinateSystem Galactic
          Standard Galactic coordinates
static CoordinateSystem ICRS
          Standard ICRS coordinates
static CoordinateSystem J2000
          Standard J2000 coordinates -- the reference frame
 
Constructor Summary
CoordinateSystem()
           
 
Method Summary
static CoordinateSystem factory(java.lang.String name)
          Get a coordinate system by name.
static CoordinateSystem factory(java.lang.String name, java.lang.String equinox)
           
abstract  Rotater getRotater()
          Get the rotation associated with the projection.
 SphereDistorter getSphereDistorter()
          Get the distortion associated with the projection.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface skyview.Component
getDescription, getName
 

Field Detail

J2000

public static final CoordinateSystem J2000
Standard J2000 coordinates -- the reference frame


B1950

public static final CoordinateSystem B1950
Standard B1950 coordinates


Galactic

public static final CoordinateSystem Galactic
Standard Galactic coordinates


ICRS

public static final CoordinateSystem ICRS
Standard ICRS coordinates

Constructor Detail

CoordinateSystem

public CoordinateSystem()
Method Detail

getRotater

public abstract Rotater getRotater()
Get the rotation associated with the projection.


getSphereDistorter

public SphereDistorter getSphereDistorter()
Get the distortion associated with the projection. By default there is no distortion, but subclasses, notably BesselianProjection, can override this.


factory

public static CoordinateSystem factory(java.lang.String name)
Get a coordinate system by name.

Parameters:
name - A designation of the desired coordinate system. Normally the name is an initial designating the general frame and orientation of the coordinate system followed by an epoch of equinox, e.g., J2000, B1950 E2000.45. The initial letters are:
J
Julian Equatorial Coordinates.
B
Besselian Equatorial Coordinates.
E
Julian Ecliptic Coordinates
H
Helioecliptic coordinates.
G
Galactic coordinates. Only the first letter is parsed.
The name is not case-sensitive.

factory

public static CoordinateSystem factory(java.lang.String name,
                                       java.lang.String equinox)