Package skyview.geometry

# Class CoordinateSystem

java.lang.Object
skyview.geometry.CoordinateSystem

All Implemented Interfaces:
  `Serializable`, `Component`

Direct Known Subclasses:
  `Besselian`, `Ecliptic`, `Galactic`, `ICRS`, `Julian`

public abstract class CoordinateSystem extends 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

Fields
Modifier and Type
Field
Description
`static final CoordinateSystem`
`B1950`
Standard B1950 coordinates
`static final CoordinateSystem`
`Gal`
Standard Galactic coordinates
`static final CoordinateSystem`
`ICRS`
Standard ICRS coordinates
`static final CoordinateSystem`
`J2000`
Standard J2000 coordinates -- the reference frame

## Constructor Summary

Constructors
Constructor
Description
`CoordinateSystem()`

## Method Summary

Modifier and Type
Method
Description
`static CoordinateSystem`
`factory(String name)`
Get a coordinate system by name.
`static CoordinateSystem`
`factory(String name, 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 Details

### J2000

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

### B1950

public static final CoordinateSystem B1950
Standard B1950 coordinates

### Gal

public static final CoordinateSystem Gal
Standard Galactic coordinates

### ICRS

public static final CoordinateSystem ICRS
Standard ICRS coordinates

## Constructor Details

### CoordinateSystem

public CoordinateSystem()

## Method Details

### 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(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(String name, String equinox)