All Packages Class Hierarchy This Package Previous Next Index
Class com.las.ogdi.OGDIProjectionDescriptor
java.lang.Object
|
+----com.las.ogdi.OGDIProjectionDescriptor
- public class OGDIProjectionDescriptor
- extends Object
The ProjectionDescriptor class defines a projection descriptor for geographic datastore
access and coordinate conversion.
Because the world is spherical, displaying maps which represent areas of
the earth's surface on a paper map or a computer screen requires a method
for representing three dimensional space in a two dimensional system.
Various mathematical formulas exist which are used to project the earth's
spherical surface onto a flat, two-dimensional surface. Each coordinate
system used to display geographic data is based on a particular map projection.
A map projection is represented by a projection descriptor. The projection
descriptor must include enough information to define such things as the
shape of the earth being assumed (spherical or type of ellipsoid), units
of measure to be used, and so on. Since any representation of the earth's
surface in two dimensions distorts shape, area, distance, or direction,
and since different projections produce different distortions, care should
be taken when combining map layers from different data sources and
projections. Changing from one projection system to another may produce
extreme distortion, and combining data from various projections may produce
inaccurate data results. The characteristics of each projection make them
useful for some applications and not useful for others, particularly as the
degree of distortion inherent to them may vary for different regions of the
earth. The projection descriptor is a string that defines cartographic
projection. Arguments and parameters defined in the descriptor vary
according to the projection selected, (for example: +proj=utm +zone=11
+ellps=clrk66). All possible arguments and parameters are listed in the
following. This list may appear long but most of the Arguments and
parameters are optional.
+proj=acronym is required for the selection
of the cartographic projection and the name is an acronym for the desired
projection.
+ellps=acronym selects standard, predefined
ellipsoid figures. For spherical-only projections, the major axis is used
as the radius.
+units=acronym allows you to select the unit
of measurement to which the Cartesian coordinates will be converted.
+azimuth=degree is an angle 0 and 360 degrees measured clockwise from the
north. Allows the rotation of all objects that belong to a coverage.
+R=R specifies that the projection should be computed as a spherical Earth
with a radius corresponding to the numeric value you enter in this field.
+a=a defines an elliptical Earth's major axis.
+es=e defines an elliptical Earth's squared eccentricity. Optionally,
+b=b, +e=e, +rf=1/f or +f=f can be used where b, e and f are minor axes,
representing eccentricity and flattening, respectively.
+R_A must be used with elliptical Earth parameters. It specifies that
spherical computations be used with the radius of a sphere that has a
surface area equivalent to the selected ellipsoid.
+R_V can be used in a similar manner to calculate the sphere radius of an
ellipse of equivalent volume.
+R_a must be used with elliptical Earth parameters. The spherical radius
of the arithmetic mean of the major and the minor axes is used. +R_g and
+R_h can be used for the equivalent geometric or harmonic mean of the major
and minor axes.
+R_lat_a=o must be used with elliptical Earth parameters. The spherical
radius of the arithmetic mean of the principal radii of the ellipsoid at
latitude o is used. +R_lat_g=o can be used for equivalent geometric means
of the principle radii.
+x_0=x specifies false easting; the value entered is added to the x value
of the Cartesian coordinate. This is used in grid systems to avoid negative
grid coordinates.
+y_0=y specifies false northing; the value entered is added to the y value
of the Cartesian coordinate. This is used in grid systems to avoid negative
grid coordinates.
+lon_0=degree specifies the central meridian. Along with +lat_0=degree,
it normally determines the geographic origin of the projection.
+lat_0=degree specifies the central parallel. See +lon_0=degree.
+geoc when this option is selected, it specifies that geographic data
coordinates are to be treated as geocentric.
+over inhibits the reduction of input longitude to a range between -180
degrees and +180 degrees of the central meridian.
+zone=n is used for UTM and MTM zone selection.
+lon_1=degree is the longitude of the first point defining geodetic.
+lat_1=degree is the latitude of the first point defining geodetic.
+lon_2=degree is the longitude of the second point defining geodetic.
+lat_2=degree is the latitude of the second point defining geodetic.
+lat_ts=degree is the latitude of true scale. Polar aspect only.
+lat_b=degree is the minimum error within the small or great circle
defined by the angular distance, from the tangency point of the plane.
Default 90.
+k=scale is the scale factor.
+h=height is the height of the perspective point.
+ns is used for non-skewed cartesian coordinates.
+south is used for Southern hemisphere applications.
+W=value is a real value that determines the normal Hammer projection.
+lsat=number is the LANDSAT satellite number, must be in the range 1-5.
+path=number is the path number; must be in ranges 1-251 for lsat=1,2,3
or 1-233 for n = 3,4.
+azi=degree is an angle measured clockwise from the north. Used only
with Laborde projection of Madagascar.
+no_cut is used to limit the extent of the projection to the hemisphere.
+k_0=scale is the scale factor to adjust the equator scale.
+lon_ts=degree is a longitude of true scale.
+alpha=value determines the method to be used; the cartesian coordinates
are rotated by the value of alpha.
+lonc=degree is the longitude of the point of origin.
+phi_0=degree is the latitude of the point of origin.
+no_rot is used for no rotation of the coordinates.
+no_uoff is used to suppress the offset in the pre-rotated axis.
+rot_conv is used for the rotation of the coordinates by the
origin convergence angle.
The following examples are valid projection definitions:
"+proj=longlat"
"+proj=lcc +ellps=GRS80 +lat_0=44 +lat_1=44 +lat_2=60 +lon_0=-68.5"
"+proj=utm +zone=11 +ellps=clrk66"
Note: The first example ("+proj=longlat") represents a geographic (latitude,
longitude) coordinate system. Even though it is not a map projection,
this coordinate system is processed the same way as any projection strings.
REFERENCES
Evenden, G.I., 1990.
Cartographic Projection Procedures for the UNIX Environment---A User's
Manual, USGS, May 13, 64 p.
Evenden, G.I., 1993.
Cartographic Projection Procedures, Release 4, Interim Report, USGS,
September 17, 40 p.
Evenden, G.I., 1995.
Cartographic Projection Procedures, Release 4, Second Interim Report,
USGS, September 24, 21 p.
LAS Inc., 1996.
Open Geographic Datastore Interface (OGDI), Version 1.0: Programmer's
Reference, 145p.
- Version:
- 1.0
- Author:
- Las Inc.
-
OGDIProjectionDescriptor(String)
- Creates a projection descriptor instance.
-
getA()
- Gets the a descriptor.
-
getAlpha()
- Gets the alpha descriptor.
-
getAzi()
- Gets the azi descriptor.
-
getAzimuth()
- Gets the azimuth descriptor.
-
getB()
- Gets the b descriptor.
-
getE()
- Gets the e descriptor.
-
getEllps()
- Gets the ellipsoid descriptor.
-
getEs()
- Gets the es descriptor.
-
getGeoc()
- Gets the geoc descriptor.
-
getH()
- Gets the h descriptor.
-
getK()
- Gets the k descriptor.
-
getK_0()
- Gets the k_0 descriptor.
-
getLat_0()
- Gets the lat_0 descriptor.
-
getLat_1()
- Gets the lat_1 descriptor.
-
getLat_2()
- Gets the lat_2 descriptor.
-
getLat_b()
- Gets the lat_b descriptor.
-
getLat_ts()
- Gets the lat_ts descriptor.
-
getLon_0()
- Gets the lon_0 descriptor.
-
getLon_1()
- Gets the lon_1 descriptor.
-
getLon_2()
- Gets the lon_2 descriptor.
-
getLon_ts()
- Gets the lon_ts descriptor.
-
getLonc()
- Gets the lonc descriptor.
-
getLsat()
- Gets the lsat descriptor.
-
getName()
- Gets the name of the projection.
-
getNo_cut()
- Gets the no_cut descriptor.
-
getNo_rot()
- Gets the no_rot descriptor.
-
getNo_uoff()
- Gets the no_uoff descriptor.
-
getNs()
- Gets the ns descriptor.
-
getOver()
- Gets the over descriptor.
-
getPath()
- Gets the path descriptor.
-
getPhi_0()
- Gets the phi_0 descriptor.
-
getProj()
- Gets the projection parameter.
-
getR()
- Gets the R descriptor.
-
getR_A()
- Gets the R_A descriptor.
-
getR_a()
- Gets the R_a descriptor.
-
getR_g()
- Gets the R_g descriptor.
-
getR_h()
- Gets the R_h descriptor.
-
getR_lat_a()
- Gets the R_lat_a descriptor.
-
getR_lat_g()
- Gets the R_lat_g descriptor.
-
getR_V()
- Gets the R_V descriptor.
-
getRf()
- Gets the rf descriptor.
-
getRot_conv()
- Gets the rot_conv descriptor.
-
getSouth()
- Gets the south descriptor.
-
getUnits()
- Gets the units descriptor.
-
getW()
- Gets the W descriptor.
-
getX_0()
- Gets the x_0 descriptor.
-
getY_0()
- Gets the y_0 descriptor.
-
getZone()
- Gets the zone descriptor.
-
toString()
- Gets the complete projection description.
OGDIProjectionDescriptor
public OGDIProjectionDescriptor(String name) throws IllegalArgumentException
- Creates a projection descriptor instance.
See Gerald I. Evenden, Cartographic projection procedures-User's Manual,USGS,1991.
- Parameters:
- name - a descriptor of the projection like "+proj=longlat"
- client - the client connection requesting the projections
- Returns:
- no return
- Throws: IllegalArgumentException
- if name is empty or null or without +proj
getName
public String getName()
- Gets the name of the projection.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the projection like "+proj=longlat"
- Throws: no
- exception
getProj
public String getProj()
- Gets the projection parameter.
- Parameters:
- no - parameter
- Returns:
- a parameter of the projection like "longlat"
- Throws: no
- exception
getUnits
public String getUnits()
- Gets the units descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the units like "m"
- Throws: no
- exception
getZone
public String getZone()
- Gets the zone descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the zone like "18"
- Throws: no
- exception
getEllps
public String getEllps()
- Gets the ellipsoid descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the ellipsoid like "clrk66"
- Throws: no
- exception
getAzimuth
public String getAzimuth()
- Gets the azimuth descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the azimuth
- Throws: no
- exception
getX_0
public String getX_0()
- Gets the x_0 descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the x_0
- Throws: no
- exception
getY_0
public String getY_0()
- Gets the y_0 descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the y_0
- Throws: no
- exception
getLon_0
public String getLon_0()
- Gets the lon_0 descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lon_0
- Throws: no
- exception
getLat_0
public String getLat_0()
- Gets the lat_0 descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lat_0
- Throws: no
- exception
getLon_1
public String getLon_1()
- Gets the lon_1 descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lon_1
- Throws: no
- exception
getLat_1
public String getLat_1()
- Gets the lat_1 descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lat_1
- Throws: no
- exception
getLon_2
public String getLon_2()
- Gets the lon_2 descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lon_2
- Throws: no
- exception
getLat_2
public String getLat_2()
- Gets the lat_2 descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lat_2
- Throws: no
- exception
getR
public String getR()
- Gets the R descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the R
- Throws: no
- exception
getA
public String getA()
- Gets the a descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the a
- Throws: no
- exception
getEs
public String getEs()
- Gets the es descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the es
- Throws: no
- exception
getB
public String getB()
- Gets the b descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the b
- Throws: no
- exception
getE
public String getE()
- Gets the e descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the e
- Throws: no
- exception
getRf
public String getRf()
- Gets the rf descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the rf
- Throws: no
- exception
getR_A
public boolean getR_A()
- Gets the R_A descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the R_A
- Throws: no
- exception
getR_V
public boolean getR_V()
- Gets the R_V descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the R_V
- Throws: no
- exception
getR_a
public boolean getR_a()
- Gets the R_a descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the R_a
- Throws: no
- exception
getR_lat_a
public String getR_lat_a()
- Gets the R_lat_a descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the R_lat_a
- Throws: no
- exception
getR_lat_g
public String getR_lat_g()
- Gets the R_lat_g descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the R_lat_g
- Throws: no
- exception
getGeoc
public boolean getGeoc()
- Gets the geoc descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the geoc
- Throws: no
- exception
getOver
public boolean getOver()
- Gets the over descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the over
- Throws: no
- exception
getLat_ts
public String getLat_ts()
- Gets the lat_ts descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lat_ts
- Throws: no
- exception
getLat_b
public String getLat_b()
- Gets the lat_b descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lat_b
- Throws: no
- exception
getK
public String getK()
- Gets the k descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the k
- Throws: no
- exception
getH
public String getH()
- Gets the h descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the h
- Throws: no
- exception
getNs
public boolean getNs()
- Gets the ns descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the ns
- Throws: no
- exception
getSouth
public boolean getSouth()
- Gets the south descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the south
- Throws: no
- exception
getW
public String getW()
- Gets the W descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the W
- Throws: no
- exception
getLsat
public String getLsat()
- Gets the lsat descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lsat
- Throws: no
- exception
getPath
public String getPath()
- Gets the path descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the path
- Throws: no
- exception
getAzi
public String getAzi()
- Gets the azi descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the azi
- Throws: no
- exception
getNo_cut
public boolean getNo_cut()
- Gets the no_cut descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the no_cut
- Throws: no
- exception
getK_0
public String getK_0()
- Gets the k_0 descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the k_0
- Throws: no
- exception
getLon_ts
public String getLon_ts()
- Gets the lon_ts descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lon_ts
- Throws: no
- exception
getAlpha
public String getAlpha()
- Gets the alpha descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the alpha
- Throws: no
- exception
getLonc
public String getLonc()
- Gets the lonc descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the lonc
- Throws: no
- exception
getPhi_0
public String getPhi_0()
- Gets the phi_0 descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the phi_0
- Throws: no
- exception
getNo_rot
public boolean getNo_rot()
- Gets the no_rot descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the no_rot
- Throws: no
- exception
getNo_uoff
public boolean getNo_uoff()
- Gets the no_uoff descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the no_uoff
- Throws: no
- exception
getRot_conv
public boolean getRot_conv()
- Gets the rot_conv descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the rot_conv
- Throws: no
- exception
getR_g
public boolean getR_g()
- Gets the R_g descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the R_g
- Throws: no
- exception
getR_h
public boolean getR_h()
- Gets the R_h descriptor.
- Parameters:
- no - parameter
- Returns:
- a descriptor of the R_h
- Throws: no
- exception
toString
public String toString()
- Gets the complete projection description.
- Parameters:
- no - parameter
- Returns:
- the projection as a string
- Throws: no
- exception
- Overrides:
- toString in class Object
All Packages Class Hierarchy This Package Previous Next Index