|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectucar.unidata.geoloc.ProjectionImpl
ucar.unidata.geoloc.projection.Stereographic
public class Stereographic
Stereographic projection, spherical earth. Projection plane is a plane tangent to the earth at latt, lont. see John Snyder, Map Projections used by the USGS, Bulletin 1532, 2nd edition (1983), p 153
Projection
,
ProjectionImpl
,
Serialized FormField Summary |
---|
Fields inherited from class ucar.unidata.geoloc.ProjectionImpl |
---|
ATTR_NAME, atts, defaultMapArea, EARTH_RADIUS, INDEX_LAT, INDEX_LON, INDEX_X, INDEX_Y, isLatLon, name, PI, PI_OVER_2, PI_OVER_4, TOLERANCE |
Constructor Summary | |
---|---|
Stereographic()
Constructor with default parameters = North Polar |
|
Stereographic(double latt,
double lont,
double scale)
Construct a Stereographic Projection. |
|
Stereographic(double lat_ts_deg,
double latt_deg,
double lont_deg,
boolean north)
Construct a polar Stereographic Projection, from the "natural origin" and the tangent point, calculating the scale factor. |
|
Stereographic(double latt,
double lont,
double scale,
double false_easting,
double false_northing)
Construct a Stereographic Projection. |
Method Summary | |
---|---|
Object |
clone()
Clone this projection |
ProjectionImpl |
constructCopy()
copy constructor - avoid clone !! |
boolean |
crossSeam(ProjectionPoint pt1,
ProjectionPoint pt2)
Does the line between these two points cross the projection "seam". |
boolean |
equals(Object proj)
Returns true if this represents the same Projection as proj. |
static Stereographic |
factory(double latt,
double lont,
double latTrue)
Construct a Stereographic Projection using latitude of true scale and calculating scale factor. |
double |
getCentralMeridian()
Get the central meridian in degrees, if it was set. |
double |
getFalseEasting()
Get the false easting, in km. |
double |
getFalseNorthing()
Get the false northing, in km. |
double |
getNaturalOriginLat()
Get the latitude at natural origin |
double |
getScale()
Get the scale |
double |
getTangentLat()
Get the tangent latitude |
double |
getTangentLon()
Get the tangent longitude |
boolean |
isNorth()
|
boolean |
isPolar()
|
double[][] |
latLonToProj(double[][] from,
double[][] to,
int latIndex,
int lonIndex)
Convert lat/lon coordinates to projection coordinates. |
float[][] |
latLonToProj(float[][] from,
float[][] to,
int latIndex,
int lonIndex)
Convert lat/lon coordinates to projection coordinates. |
ProjectionPoint |
latLonToProj(LatLonPoint latLon,
ProjectionPointImpl result)
Convert a LatLonPoint to projection coordinates |
String |
paramsToString()
Get the parameters as a String |
double[][] |
projToLatLon(double[][] from,
double[][] to)
Convert projection coordinates to lat/lon coordinate. |
float[][] |
projToLatLon(float[][] from,
float[][] to)
Convert projection coordinates to lat/lon coordinate. |
LatLonPoint |
projToLatLon(ProjectionPoint world,
LatLonPointImpl result)
Convert projection coordinates to a LatLonPoint Note: a new object is not created on each call for the return value. |
void |
setCentralMeridian(double cm)
Set the central meridian in degrees. |
void |
setFalseEasting(double falseEasting)
Set the false_easting, in km. |
void |
setFalseNorthing(double falseNorthing)
Set the false northing, in km. |
void |
setScale(double scale)
Set the scale |
void |
setTangentLat(double lat)
Set the tangent latitude |
void |
setTangentLon(double lon)
Set the tangent longitude |
Methods inherited from class ucar.unidata.geoloc.ProjectionImpl |
---|
addParameter, addParameter, addParameter, getClassName, getDefaultMapArea, getDefaultMapAreaLL, getHeader, getLatLonBoundingBox, getName, getProjectionParameters, getProjectionTypeLabel, isLatLon, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProjBB, projToLatLon, projToLatLon, projToLatLon, projToLatLon, projToLatLonBB, setDefaultMapArea, setName, toString |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public Stereographic()
public Stereographic(double latt, double lont, double scale)
latt
- tangent point of projection, also origin of
projecion coord systemlont
- tangent point of projection, also origin of
projecion coord systemscale
- scale factor at tangent point, "normally 1.0 but
may be reduced"public Stereographic(double latt, double lont, double scale, double false_easting, double false_northing)
latt
- tangent point of projection, also origin of
projection coord systemlont
- tangent point of projection, also origin of
projection coord systemscale
- scale factor at tangent point, "normally 1.0 but
may be reduced"public Stereographic(double lat_ts_deg, double latt_deg, double lont_deg, boolean north)
lat_ts_deg
- Latitude at natural origin (degrees_north)latt_deg
- tangent point of projection (degrees_north)lont_deg
- tangent point of projection, also origin of projection coord system ((degrees_east)north
- true if north pole, false is south poleMethod Detail |
---|
public ProjectionImpl constructCopy()
constructCopy
in class ProjectionImpl
public static Stereographic factory(double latt, double lont, double latTrue)
Since the scale factor at lat = k = 2*k0/(1+sin(lat)) [Snyder,Working Manual p157] then to make scale = 1 at lat, set k0 = (1+sin(lat))/2
latt
- tangent point of projection, also origin of projection coord systemlont
- tangent point of projection, also origin of projection coord systemlatTrue
- latitude of true scale in degrees north; latitude where scale factor = 1.0
public double getScale()
public void setScale(double scale)
scale
- the scalepublic double getNaturalOriginLat()
public double getTangentLon()
public void setTangentLon(double lon)
lon
- the tangent longitudepublic double getTangentLat()
public void setTangentLat(double lat)
lat
- the tangent latitudepublic double getCentralMeridian()
public void setCentralMeridian(double cm)
public boolean isNorth()
public boolean isPolar()
public String paramsToString()
paramsToString
in interface Projection
paramsToString
in class ProjectionImpl
public boolean crossSeam(ProjectionPoint pt1, ProjectionPoint pt2)
crossSeam
in interface Projection
crossSeam
in class ProjectionImpl
pt1
- the line goes between these two pointspt2
- the line goes between these two points
public Object clone()
clone
in class ProjectionImpl
public boolean equals(Object proj)
equals
in interface Projection
equals
in class ProjectionImpl
proj
- projection in question
public double getFalseEasting()
public void setFalseEasting(double falseEasting)
falseEasting
- x offsetpublic double getFalseNorthing()
public void setFalseNorthing(double falseNorthing)
falseNorthing
- y offsetpublic ProjectionPoint latLonToProj(LatLonPoint latLon, ProjectionPointImpl result)
latLonToProj
in interface Projection
latLonToProj
in class ProjectionImpl
latLon
- convert from these lat, lon coordinatesresult
- the object to write to
public LatLonPoint projToLatLon(ProjectionPoint world, LatLonPointImpl result)
projToLatLon
in interface Projection
projToLatLon
in class ProjectionImpl
world
- convert from these projection coordinatesresult
- the object to write to
public float[][] latLonToProj(float[][] from, float[][] to, int latIndex, int lonIndex)
latLonToProj
in class ProjectionImpl
from
- array of lat/lon coordinates: from[2][n], where
(from[latIndex][i], from[lonIndex][i]) is the (lat,lon)
coordinate of the ith pointto
- resulting array of projection coordinates: to[2][n]
where (to[0][i], to[1][i]) is the (x,y) coordinate of
the ith pointlatIndex
- index of lat coordinate; must be 0 or 1lonIndex
- index of lon coordinate; must be 0 or 1
public float[][] projToLatLon(float[][] from, float[][] to)
projToLatLon
in class ProjectionImpl
from
- array of projection coordinates: from[2][n], where
(from[0][i], from[1][i]) is the (x, y) coordinate
of the ith pointto
- resulting array of lat/lon coordinates: to[2][n] where
(to[0][i], to[1][i]) is the (lat, lon) coordinate of
the ith point
public double[][] latLonToProj(double[][] from, double[][] to, int latIndex, int lonIndex)
latLonToProj
in class ProjectionImpl
from
- array of lat/lon coordinates: from[2][n], where
(from[latIndex][i], from[lonIndex][i]) is the (lat,lon)
coordinate of the ith pointto
- resulting array of projection coordinates: to[2][n]
where (to[0][i], to[1][i]) is the (x,y) coordinate of
the ith pointlatIndex
- index of lat coordinate; must be 0 or 1lonIndex
- index of lon coordinate; must be 0 or 1
public double[][] projToLatLon(double[][] from, double[][] to)
projToLatLon
in class ProjectionImpl
from
- array of projection coordinates: from[2][n], where
(from[0][i], from[1][i]) is the (x, y) coordinate
of the ith pointto
- resulting array of lat/lon coordinates: to[2][n] where
(to[0][i], to[1][i]) is the (lat, lon) coordinate of
the ith point
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |