Package ucar.unidata.geoloc.projection
Class Sinusoidal
- java.lang.Object
-
- ucar.unidata.geoloc.ProjectionImpl
-
- ucar.unidata.geoloc.projection.Sinusoidal
-
- All Implemented Interfaces:
Serializable,Projection
public class Sinusoidal extends ProjectionImpl
Sinusoidal projection, spherical earth. See John Snyder, Map Projections used by the USGS, Bulletin 1532, 2nd edition (1983), p 243- Since:
- Feb 24, 2013
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class ucar.unidata.geoloc.ProjectionImpl
atts, defaultMapArea, EARTH_RADIUS, INDEX_LAT, INDEX_LON, INDEX_X, INDEX_Y, isLatLon, name, PI, PI_OVER_2, PI_OVER_4, TOLERANCE
-
-
Constructor Summary
Constructors Constructor Description Sinusoidal()Constructor with default parametersSinusoidal(double centMeridian, double false_easting, double false_northing, double radius)Construct a Sinusoidal Projection.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description ProjectionImplconstructCopy()copy constructor - avoid clone !!booleancrossSeam(ProjectionPoint pt1, ProjectionPoint pt2)Does the line between these two points cross the projection "seam".booleanequals(Object o)Returns true if this represents the same Projection as proj.doublegetCentMeridian()Get the central Meridian in degreesdoublegetEarthRadius()doublegetFalseEasting()Get the false easting, in km.doublegetFalseNorthing()Get the false northing, in km.List<ProjectionPoint>getMapEdgeIntercepts(ProjectionRect projBB)Returns the points at whichprojBBintersects the map edge.List<ProjectionPoint>getMapEdgeInterceptsAtX(double x0)Returns the points at which the linex = x0intersects the map edge.List<ProjectionPoint>getMapEdgeInterceptsAtY(double y0)Returns the points at which the liney = y0intersects the map edge.inthashCode()ProjectionPointlatLonToProj(LatLonPoint latLon, ProjectionPointImpl result)Convert a LatLonPoint to projection coordinatesStringparamsToString()Get the parameters as a StringLatLonPointprojToLatLon(ProjectionPoint world, LatLonPointImpl result)Convert projection coordinates to a LatLonPointLatLonRectprojToLatLonBB(ProjectionRect projBB)Compute lat/lon bounding box from projection bounding box.voidsetCentMeridian(double centMeridian)Deprecated.voidsetFalseEasting(double falseEasting)Deprecated.voidsetFalseNorthing(double falseNorthing)Deprecated.StringtoString()Get a String representation of this projection.-
Methods inherited from class ucar.unidata.geoloc.ProjectionImpl
addParameter, addParameter, addParameter, findProjectionParameter, getClassName, getDefaultMapArea, getDefaultMapAreaLL, getHeader, getName, getProjectionParameters, getProjectionTypeLabel, isLatLon, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProjBB, projToLatLon, projToLatLon, projToLatLon, projToLatLon, projToLatLon, projToLatLonBBold, setDefaultMapArea, setName
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface ucar.unidata.geoloc.Projection
latLonToProj, projToLatLon
-
-
-
-
Constructor Detail
-
Sinusoidal
public Sinusoidal()
Constructor with default parameters
-
Sinusoidal
public Sinusoidal(double centMeridian, double false_easting, double false_northing, double radius)Construct a Sinusoidal Projection.- Parameters:
centMeridian- central Meridian (degrees)false_easting- false_easting in kmfalse_northing- false_northing in kmradius- earth radius in km
-
-
Method Detail
-
constructCopy
public ProjectionImpl constructCopy()
Description copied from class:ProjectionImplcopy constructor - avoid clone !!- Specified by:
constructCopyin classProjectionImpl- Returns:
- a copy of this Projection. TODO return Projection in ver6
-
getCentMeridian
public double getCentMeridian()
Get the central Meridian in degrees- Returns:
- the central Meridian
-
getFalseEasting
public double getFalseEasting()
Get the false easting, in km.- Returns:
- the false easting.
-
getFalseNorthing
public double getFalseNorthing()
Get the false northing, in km.- Returns:
- the false northing.
-
getEarthRadius
public double getEarthRadius()
-
setCentMeridian
@Deprecated public void setCentMeridian(double centMeridian)
Deprecated.Set the central Meridian- Parameters:
centMeridian- central Meridian in degrees
-
setFalseEasting
@Deprecated public void setFalseEasting(double falseEasting)
Deprecated.Set the false_easting, in km. natural_x_coordinate + false_easting = x coordinate- Parameters:
falseEasting- x offset
-
setFalseNorthing
@Deprecated public void setFalseNorthing(double falseNorthing)
Deprecated.Set the false northing, in km. natural_y_coordinate + false_northing = y coordinate- Parameters:
falseNorthing- y offset
-
equals
public boolean equals(Object o)
Description copied from class:ProjectionImplReturns true if this represents the same Projection as proj.- Specified by:
equalsin interfaceProjection- Specified by:
equalsin classProjectionImpl- Parameters:
o- projection in question- Returns:
- true if this represents the same Projection as proj.
-
toString
public String toString()
Description copied from class:ProjectionImplGet a String representation of this projection.- Overrides:
toStringin classProjectionImpl- Returns:
- the name of the projection. This is what gets displayed when you add the projection object to a UI widget (e.g. label, combobox)
-
paramsToString
public String paramsToString()
Get the parameters as a String- Specified by:
paramsToStringin interfaceProjection- Specified by:
paramsToStringin classProjectionImpl- Returns:
- the parameters as a String
-
crossSeam
public boolean crossSeam(ProjectionPoint pt1, ProjectionPoint pt2)
Does the line between these two points cross the projection "seam".- Specified by:
crossSeamin interfaceProjection- Specified by:
crossSeamin classProjectionImpl- Parameters:
pt1- the line goes between these two pointspt2- the line goes between these two points- Returns:
- false if there is no seam
-
latLonToProj
public ProjectionPoint latLonToProj(LatLonPoint latLon, ProjectionPointImpl result)
Convert a LatLonPoint to projection coordinates- Specified by:
latLonToProjin interfaceProjection- Specified by:
latLonToProjin classProjectionImpl- Parameters:
latLon- convert from these lat, lon coordinatesresult- the object to write to- Returns:
- the given result
-
projToLatLon
public LatLonPoint projToLatLon(ProjectionPoint world, LatLonPointImpl result)
Convert projection coordinates to a LatLonPoint- Specified by:
projToLatLonin interfaceProjection- Specified by:
projToLatLonin classProjectionImpl- Parameters:
world- convert from these projection coordinatesresult- the object to write to- Returns:
- LatLonPoint the lat/lon coordinates
-
projToLatLonBB
public LatLonRect projToLatLonBB(ProjectionRect projBB)
Description copied from interface:ProjectionCompute lat/lon bounding box from projection bounding box.- Specified by:
projToLatLonBBin interfaceProjection- Overrides:
projToLatLonBBin classProjectionImpl- Parameters:
projBB- projection bounding box- Returns:
- lat, lon bounding box.
-
getMapEdgeIntercepts
public List<ProjectionPoint> getMapEdgeIntercepts(ProjectionRect projBB)
Returns the points at whichprojBBintersects the map edge.- Parameters:
projBB- defines a bounding box that may intersect the map edge, in projection coordinates.- Returns:
- the points at which
projBBintersects the map edge. May be empty.
-
getMapEdgeInterceptsAtX
public List<ProjectionPoint> getMapEdgeInterceptsAtX(double x0)
Returns the points at which the linex = x0intersects the map edge.- Parameters:
x0- defines a line that may intersect the map edge, in projection coordinates.- Returns:
- the points at which the line
x = x0intersects the map edge. May be empty.
-
getMapEdgeInterceptsAtY
public List<ProjectionPoint> getMapEdgeInterceptsAtY(double y0)
Returns the points at which the liney = y0intersects the map edge.- Parameters:
y0- defines a line that intersects the map edge, in projection coordinates.- Returns:
- the points at which the line
y = y0intersects the map edge. May be empty.
-
-