## com.bbn.openmap.proj
Class LLXY

    java.lang.Object
      com.bbn.openmap.proj.Proj
          com.bbn.openmap.proj.Cylindrical
              com.bbn.openmap.proj.LLXY

All Implemented Interfaces:
  java.lang.Cloneable, EqualArc, Projection, java.io.Serializable

Direct Known Subclasses:
  LLXYView

public class LLXY
extends Cylindrical
implements EqualArc

Implements the LLXY projection, which is basically something where the lat/lon and pixel ratios are the same.

See Also:
  Serialized Form

Field Summary
`protected float` `cLat`
`protected float` `cLon`
`protected int` `hy`
`static java.lang.String` `LLXYName` The LLXY name.
`static int` `LLXYType` The LLXY type of projection.
`protected float` `ppd` Pixel per degree
`protected int` `wx`

Fields inherited from class com.bbn.openmap.proj.Cylindrical
`half_world, world`

Fields inherited from class com.bbn.openmap.proj.Proj
`ctrLat, ctrLon, DATELINE, height, maxscale, mercator, MIN_HEIGHT, MIN_WIDTH, minscale, NORTH_POLE, NUM_DEFAULT_CIRCLE_VERTS, NUM_DEFAULT_GREAT_SEGS, pixelsPerMeter, planetPixelCircumference, planetPixelRadius, planetRadius, projID, scale, scaled_radius, SOUTH_POLE, type, width, XSCALE_THRESHOLD, XTHRESHOLD`

Constructor Summary
`LLXY(LatLonPoint center, float scale, int width, int height)` Construct a LLXY projection.
`LLXY(LatLonPoint center, float scale, int width, int height, int type)`

Method Summary
`protected void` `computeParameters()` Called when some fundamental parameters change.
`java.awt.Point` `forward(float lat, float lon, java.awt.Point p)` Forward projects a lat,lon coordinates.
`java.awt.Point` `forward(float lat, float lon, java.awt.Point p, boolean isRadian)` Forward projects lat,lon into XY space and returns a Point.
`java.awt.Point` `forward(LatLonPoint pt, java.awt.Point p)` Projects a point from Lat/Lon space to X/Y space.
`java.lang.String` `getName()` Get the name string of the projection.
`double` `getXPixConstant()` Returns the x pixel constant of the projection.
`double` `getYPixConstant()` Returns the y pixel constant of the projection.
`LatLonPoint` `inverse(int x, int y, LatLonPoint llp)` Inverse project x,y coordinates into a LatLonPoint.
`LatLonPoint` `inverse(java.awt.Point pt, LatLonPoint llp)` Inverse project a Point.
`boolean` `isPlotable(float lat, float lon)` Checks if a LatLonPoint is plot-able.
`float` `normalize_latitude(float lat)` Sets radian latitude to something sane.
`java.lang.String` `toString()` Return stringified description of this projection.

Methods inherited from class com.bbn.openmap.proj.Cylindrical
`_forwardPoly, drawBackground, drawBackground, dumpPoly, forwardRaw, getLowerRight, getUpperLeft, pan`

Methods inherited from class com.bbn.openmap.proj.Proj

`clone, doPolyDispatch, equals, forward, forward, forwardArc, forwardArc, forwardArc, forwardCircle, forwardCircle, forwardCircle, forwardGreatPoly, forwardLine, forwardLine, forwardPoly, forwardPoly, forwardRaster, forwardRect, forwardRect, forwardRect, forwardRhumbPoly, getCenter, getHeight, getMaxScale, getMinScale, getPlanetPixelCircumference, getPlanetPixelRadius, getPlanetRadius, getPPM, getProjectionID, getProjectionType, getScale, getScale, getWidth, hashCode, init, inverse, inverse, isComplicatedLineType, isPlotable, makeClone, pan, panE, panE, panN, panN, panNE, panNE, panNW, panNW, panS, panS, panSE, panSE, panSW, panSW, panW, panW, setCenter, setCenter, setHeight, setMaxScale, setMinScale, setParms, setPlanetRadius, setPPM, setProjectionID, setScale, setWidth, wrap_longitude`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface com.bbn.openmap.proj.Projection
`forward, forward, forwardArc, forwardCircle, forwardLine, forwardPoly, forwardRaster, forwardRaw, forwardRect, getCenter, getHeight, getLowerRight, getMaxScale, getMinScale, getProjectionID, getProjectionType, getScale, getScale, getUpperLeft, getWidth, inverse, inverse, isPlotable, makeClone, pan, pan`

Field Detail

### LLXYName

    public static final transient java.lang.String LLXYName

  The LLXY name.

  See Also:
    Constant Field Values

### LLXYType

    public static final transient int LLXYType

  The LLXY type of projection.

  See Also:
    Constant Field Values

### hy

    protected int hy

### wx

    protected int wx

### cLon

    protected float cLon

### cLat

    protected float cLat

### ppd

    protected float ppd

  Pixel per degree

Constructor Detail

### LLXY

    public LLXY(LatLonPoint center,
                float scale,
                int width,
                int height)

  Construct a LLXY projection.

Parameters:
  `center` - LatLonPoint center of projection
  `scale` - float scale of projection
  `width` - width of screen
  `height` - height of screen

### LLXY

    public LLXY(LatLonPoint center,
                float scale,
                int width,
                int height,
                int type)

Method Detail

### toString

    public java.lang.String toString()

  Return stringified description of this projection.

  Overrides:
    `toString` in class `Cylindrical`
  Returns:
    String
  See Also:
    `Projection.getProjectionID()`

### computeParameters

    protected void computeParameters()

  Called when some fundamental parameters change. Each projection will decide how to respond to this change. For instance, they may need to recalculate "constant" paramters used in the forward() and inverse() calls.

  Overrides:
    `computeParameters` in class `Cylindrical`

### normalize_latitude

    public float normalize_latitude(float lat)

  Sets radian latitude to something sane. This is an abstract function since some projections don't deal well with extreme latitudes.

  Specified by:
    `normalize_latitude` in class `Proj`
  Parameters:
    `lat` - float latitude in radians
  Returns:
    float latitude (-PI/2 <= y <= PI/2)
  See Also:
    `LatLonPoint.normalize_latitude(float)`

### isPlotable

    public boolean isPlotable(float lat,
                              float lon)

  Checks if a LatLonPoint is plot-able. A point is always plot-able in the LLXY projection.

  Specified by:
    `isPlotable` in interface `Projection`
  Parameters:
    `lat` - float latitude in decimal degrees
    `lon` - float longitude in decimal degrees
  Returns:
    boolean

### forward

    public java.awt.Point forward(LatLonPoint pt,
                                  java.awt.Point p)

  Projects a point from Lat/Lon space to X/Y space.

  Specified by:
    `forward` in interface `Projection`
  Parameters:
    `pt` - LatLonPoint
    `p` - Point retval
  Returns:
    Point p

### forward

    public java.awt.Point forward(float lat,
                                  float lon,
                                  java.awt.Point p)

  Forward projects a lat,lon coordinates.

  Specified by:
    `forward` in interface `Projection`
  Parameters:
    `lat` - raw latitude in decimal degrees
    `lon` - raw longitude in decimal degrees
    `p` - Resulting XY Point
  Returns:
    Point p

### forward

    public java.awt.Point forward(float lat,
                                  float lon,
                                  java.awt.Point p,
                                  boolean isRadian)

  Forward projects lat,lon into XY space and returns a Point.

  Specified by:
    `forward` in interface `Projection`
  Parameters:
    `lat` - float latitude in radians
    `lon` - float longitude in radians
    `p` - Resulting XY Point
    `isRadian` - bogus argument indicating that lat,lon arguments are in radians
  Returns:
    Point p
  See Also:
    `Projection.forward(float,float,Point)`

### inverse

    public LatLonPoint inverse(java.awt.Point pt,
                               LatLonPoint llp)

  Inverse project a Point.

  Specified by:
    `inverse` in interface `Projection`
  Parameters:
    `pt` - x,y Point
    `llp` - resulting LatLonPoint
  Returns:
    LatLonPoint llp

### inverse

    public LatLonPoint inverse(int x,
                               int y,
                               LatLonPoint llp)

  Inverse project x,y coordinates into a LatLonPoint.

  Specified by:
    `inverse` in interface `Projection`
  Parameters:
    `x` - integer x coordinate
    `y` - integer y coordinate
    `llp` - LatLonPoint
  Returns:
    LatLonPoint llp
  See Also:
    `Proj.inverse(Point)`

### getName

    public java.lang.String getName()

  Get the name string of the projection.

  Specified by:
    `getName` in interface `Projection`
  Overrides:
    `getName` in class `Cylindrical`

### getXPixConstant

    public double getXPixConstant()

  Returns the x pixel constant of the projection. This was calcuated when the projection was created. Represents the number of pixels around the earth (360 degrees).

  Specified by:
    `getXPixConstant` in interface `EqualArc`

### getYPixConstant

    public double getYPixConstant()

  Returns the y pixel constant of the projection. This was calcuated when the projection was created. Represents the number of pixels from 0 to 90 degrees.

  Specified by:
    `getYPixConstant` in interface `EqualArc`

Copyright (C) BBNT Solutions LLC; See http://openmap.bbn.com/ for details