astro
Class WcsProjection.Gnomonic

java.lang.Object
  extended by util.PropertyContainer
      extended by util.PropertyResources
          extended by util.PropertyBundles
              extended by astro.WcsProjection
                  extended by astro.WcsProjection.Gnomonic
All Implemented Interfaces:
Cloneable, Initializable, LocalizedSupplying, PropertySupplying, ResourceSupplying, VectorFunction
Enclosing class:
WcsProjection

public static class WcsProjection.Gnomonic
extends WcsProjection

The gnomic projection is the oldest known azimuthal projection. It project a hemisphere onto a plane by intersecting the tangential plane to the sphere at the native pole with straight lines through the center of the sphere. It is used in the WCS context with two non-standard conventions, namely that x-y is left-hand sided and the azimuthal angle φ is counted clockwise, with φ=0 pointing down. Thus,

       tan(φ) = tan(x/-y)
       tan(θ) = 180/π 1/(sqrt(x^2+y^2)).
       
In most of the cases, this projection will be used for RA and DEC, and only in this context the non-standard conventions make any sense. If other axis names have to be used, take the two-string constructor.


Nested Class Summary
 
Nested classes/interfaces inherited from class astro.WcsProjection
WcsProjection.EulerRotation, WcsProjection.Gnomonic, WcsProjection.LinearGnomonicRaDe, WcsProjection.LinearPixelProjection, WcsProjection.PolynomialGnomonicRaDe, WcsProjection.PolynomialPixelProjection, WcsProjection.ReadWcs, WcsProjection.ThreeStepWcs, WcsProjection.VariableGnomonicRaDe, WcsProjection.VariablePixelProjection
 
Nested classes/interfaces inherited from class util.PropertyResources
PropertyResources.URLResource
 
Field Summary
private  String axis1
          Name of first axis, directly convertable to a CTYPE1 4-char.
private  String axis2
          Name of first axis, directly convertable to a CTYPE2 4-char.
private static boolean DEBUG
           
static String NAME
          Name of this projection.
 
Fields inherited from class astro.WcsProjection
KEY_PARAMETERSCALE
 
Fields inherited from class util.PropertyBundles
KEY_LOCALECOUNTRY, KEY_LOCALELANGUAGE, KEY_RESOURCEBUNDLES
 
Fields inherited from class util.PropertyResources
KEY_NOINITONCREATE, localurl, locate, POSTFIX_DIR, POSTFIX_EXT, POSTFIX_FILE, POSTFIX_LIST, POSTFIX_URL, urlset
 
Fields inherited from class util.PropertyContainer
KEY_LISTSEPARATOR, KEY_MAPKEYVALUECHAR, KEY_MAPSEPARATOR
 
Fields inherited from interface util.ResourceSupplying
KEY_URLRESOURCES, KEY_URLUSECONFIG, KEY_URLUSECURRENT, KEY_URLUSEHOME
 
Fields inherited from interface util.PropertySupplying
CONFIG, KEY_CLASS
 
Constructor Summary
  WcsProjection.Gnomonic()
          Constructs a gnomic projection for a Ra/dec subgrid, but without specifying the native pole.
  WcsProjection.Gnomonic(Map<String,String> u2f)
          Constructs a gnomic projection for a Ra/dec subgrid, but without specifying the native pole.
  WcsProjection.Gnomonic(String a1, String a2)
          Constructs a gnomic projection for two axis, identifyable by their names.
private WcsProjection.Gnomonic(String a1, String a2, Map<String,String> u2f)
           
 
Method Summary
 VectorG estimateParameters(nom.tam.fits.Header h)
          No parameters in gnomonic projections.
 VectorG evaluate(VectorG pxpy)
          The argument must be intermediate world coordinates, we return the gnomic projection, without rotating to an external system like ra,de, phi in the first and theta in the second coordinate
 Collection<nom.tam.fits.HeaderCard> getCards()
          Returns the axis names, followed by '-TAN'.
 double getPixelArea(VectorG pxpy)
          Area of pixel is something weird, at least in the coordinates of the gnomonic projection...
 boolean parseHeader(nom.tam.fits.Header h)
          We check, if CTYPE is given and ends with NAME.
 
Methods inherited from class astro.WcsProjection
argumentDimension, estimateParameterScales, functionDimension, getParameters, getStandardKeys, setParameters
 
Methods inherited from class util.PropertyBundles
clone, getLocalized, getLocalized, getLocalizedString, getLocalizedString, loadResource
 
Methods inherited from class util.PropertyResources
createFrom, createFrom, createFrom, getApplet, getAsResources, getLocalClassLoader, getPropertiesToKey, getPropertiesToKey, getResource, getResourceAsStream, getResourceFromKey, getResources, init, keyCreate, keyCreate, reload, setApplet
 
Methods inherited from class util.PropertyContainer
augment, augment, augment, defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsEnums, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, isNew, parseObject, reload, removeProperty, rescanned, setObject, setProperties, setProperty, stringProperties, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface util.ResourceSupplying
getResource, getResourceAsStream, getResources
 
Methods inherited from interface util.PropertySupplying
defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, parseObject, removeProperty, setObject, setProperty, stringProperties
 
Methods inherited from interface util.Initializable
init
 

Field Detail

NAME

public static final String NAME
Name of this projection.

See Also:
Constant Field Values

axis1

private String axis1
Name of first axis, directly convertable to a CTYPE1 4-char.


axis2

private String axis2
Name of first axis, directly convertable to a CTYPE2 4-char.


DEBUG

private static final boolean DEBUG
See Also:
Constant Field Values
Constructor Detail

WcsProjection.Gnomonic

public WcsProjection.Gnomonic()
Constructs a gnomic projection for a Ra/dec subgrid, but without specifying the native pole.


WcsProjection.Gnomonic

public WcsProjection.Gnomonic(Map<String,String> u2f)
Constructs a gnomic projection for a Ra/dec subgrid, but without specifying the native pole.


WcsProjection.Gnomonic

public WcsProjection.Gnomonic(String a1,
                              String a2)
Constructs a gnomic projection for two axis, identifyable by their names.


WcsProjection.Gnomonic

private WcsProjection.Gnomonic(String a1,
                               String a2,
                               Map<String,String> u2f)
Method Detail

evaluate

public VectorG evaluate(VectorG pxpy)
The argument must be intermediate world coordinates, we return the gnomic projection, without rotating to an external system like ra,de, phi in the first and theta in the second coordinate


getCards

public Collection<nom.tam.fits.HeaderCard> getCards()
                                             throws nom.tam.fits.HeaderCardException
Returns the axis names, followed by '-TAN'.

Specified by:
getCards in class WcsProjection
Throws:
nom.tam.fits.HeaderCardException

parseHeader

public boolean parseHeader(nom.tam.fits.Header h)
                    throws nom.tam.fits.HeaderCardException
We check, if CTYPE is given and ends with NAME.

Specified by:
parseHeader in class WcsProjection
Throws:
nom.tam.fits.HeaderCardException

estimateParameters

public VectorG estimateParameters(nom.tam.fits.Header h)
                           throws nom.tam.fits.HeaderCardException
No parameters in gnomonic projections.

Specified by:
estimateParameters in class WcsProjection
Throws:
nom.tam.fits.HeaderCardException

getPixelArea

public double getPixelArea(VectorG pxpy)
Area of pixel is something weird, at least in the coordinates of the gnomonic projection...

Specified by:
getPixelArea in class WcsProjection