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.

Constructor Index

 o OGDIProjectionDescriptor(String)
Creates a projection descriptor instance.

Method Index

 o getA()
Gets the a descriptor.
 o getAlpha()
Gets the alpha descriptor.
 o getAzi()
Gets the azi descriptor.
 o getAzimuth()
Gets the azimuth descriptor.
 o getB()
Gets the b descriptor.
 o getE()
Gets the e descriptor.
 o getEllps()
Gets the ellipsoid descriptor.
 o getEs()
Gets the es descriptor.
 o getGeoc()
Gets the geoc descriptor.
 o getH()
Gets the h descriptor.
 o getK()
Gets the k descriptor.
 o getK_0()
Gets the k_0 descriptor.
 o getLat_0()
Gets the lat_0 descriptor.
 o getLat_1()
Gets the lat_1 descriptor.
 o getLat_2()
Gets the lat_2 descriptor.
 o getLat_b()
Gets the lat_b descriptor.
 o getLat_ts()
Gets the lat_ts descriptor.
 o getLon_0()
Gets the lon_0 descriptor.
 o getLon_1()
Gets the lon_1 descriptor.
 o getLon_2()
Gets the lon_2 descriptor.
 o getLon_ts()
Gets the lon_ts descriptor.
 o getLonc()
Gets the lonc descriptor.
 o getLsat()
Gets the lsat descriptor.
 o getName()
Gets the name of the projection.
 o getNo_cut()
Gets the no_cut descriptor.
 o getNo_rot()
Gets the no_rot descriptor.
 o getNo_uoff()
Gets the no_uoff descriptor.
 o getNs()
Gets the ns descriptor.
 o getOver()
Gets the over descriptor.
 o getPath()
Gets the path descriptor.
 o getPhi_0()
Gets the phi_0 descriptor.
 o getProj()
Gets the projection parameter.
 o getR()
Gets the R descriptor.
 o getR_A()
Gets the R_A descriptor.
 o getR_a()
Gets the R_a descriptor.
 o getR_g()
Gets the R_g descriptor.
 o getR_h()
Gets the R_h descriptor.
 o getR_lat_a()
Gets the R_lat_a descriptor.
 o getR_lat_g()
Gets the R_lat_g descriptor.
 o getR_V()
Gets the R_V descriptor.
 o getRf()
Gets the rf descriptor.
 o getRot_conv()
Gets the rot_conv descriptor.
 o getSouth()
Gets the south descriptor.
 o getUnits()
Gets the units descriptor.
 o getW()
Gets the W descriptor.
 o getX_0()
Gets the x_0 descriptor.
 o getY_0()
Gets the y_0 descriptor.
 o getZone()
Gets the zone descriptor.
 o toString()
Gets the complete projection description.

Constructors

 o 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

Methods

 o 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
 o getProj
 public String getProj()
Gets the projection parameter.

Parameters:
no - parameter
Returns:
a parameter of the projection like "longlat"
Throws: no
exception
 o getUnits
 public String getUnits()
Gets the units descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the units like "m"
Throws: no
exception
 o getZone
 public String getZone()
Gets the zone descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the zone like "18"
Throws: no
exception
 o getEllps
 public String getEllps()
Gets the ellipsoid descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the ellipsoid like "clrk66"
Throws: no
exception
 o getAzimuth
 public String getAzimuth()
Gets the azimuth descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the azimuth
Throws: no
exception
 o getX_0
 public String getX_0()
Gets the x_0 descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the x_0
Throws: no
exception
 o getY_0
 public String getY_0()
Gets the y_0 descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the y_0
Throws: no
exception
 o getLon_0
 public String getLon_0()
Gets the lon_0 descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lon_0
Throws: no
exception
 o getLat_0
 public String getLat_0()
Gets the lat_0 descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lat_0
Throws: no
exception
 o getLon_1
 public String getLon_1()
Gets the lon_1 descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lon_1
Throws: no
exception
 o getLat_1
 public String getLat_1()
Gets the lat_1 descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lat_1
Throws: no
exception
 o getLon_2
 public String getLon_2()
Gets the lon_2 descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lon_2
Throws: no
exception
 o getLat_2
 public String getLat_2()
Gets the lat_2 descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lat_2
Throws: no
exception
 o getR
 public String getR()
Gets the R descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the R
Throws: no
exception
 o getA
 public String getA()
Gets the a descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the a
Throws: no
exception
 o getEs
 public String getEs()
Gets the es descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the es
Throws: no
exception
 o getB
 public String getB()
Gets the b descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the b
Throws: no
exception
 o getE
 public String getE()
Gets the e descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the e
Throws: no
exception
 o getRf
 public String getRf()
Gets the rf descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the rf
Throws: no
exception
 o getR_A
 public boolean getR_A()
Gets the R_A descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the R_A
Throws: no
exception
 o getR_V
 public boolean getR_V()
Gets the R_V descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the R_V
Throws: no
exception
 o getR_a
 public boolean getR_a()
Gets the R_a descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the R_a
Throws: no
exception
 o 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
 o 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
 o getGeoc
 public boolean getGeoc()
Gets the geoc descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the geoc
Throws: no
exception
 o getOver
 public boolean getOver()
Gets the over descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the over
Throws: no
exception
 o getLat_ts
 public String getLat_ts()
Gets the lat_ts descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lat_ts
Throws: no
exception
 o getLat_b
 public String getLat_b()
Gets the lat_b descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lat_b
Throws: no
exception
 o getK
 public String getK()
Gets the k descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the k
Throws: no
exception
 o getH
 public String getH()
Gets the h descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the h
Throws: no
exception
 o getNs
 public boolean getNs()
Gets the ns descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the ns
Throws: no
exception
 o getSouth
 public boolean getSouth()
Gets the south descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the south
Throws: no
exception
 o getW
 public String getW()
Gets the W descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the W
Throws: no
exception
 o getLsat
 public String getLsat()
Gets the lsat descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lsat
Throws: no
exception
 o getPath
 public String getPath()
Gets the path descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the path
Throws: no
exception
 o getAzi
 public String getAzi()
Gets the azi descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the azi
Throws: no
exception
 o getNo_cut
 public boolean getNo_cut()
Gets the no_cut descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the no_cut
Throws: no
exception
 o getK_0
 public String getK_0()
Gets the k_0 descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the k_0
Throws: no
exception
 o getLon_ts
 public String getLon_ts()
Gets the lon_ts descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lon_ts
Throws: no
exception
 o getAlpha
 public String getAlpha()
Gets the alpha descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the alpha
Throws: no
exception
 o getLonc
 public String getLonc()
Gets the lonc descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the lonc
Throws: no
exception
 o getPhi_0
 public String getPhi_0()
Gets the phi_0 descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the phi_0
Throws: no
exception
 o getNo_rot
 public boolean getNo_rot()
Gets the no_rot descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the no_rot
Throws: no
exception
 o getNo_uoff
 public boolean getNo_uoff()
Gets the no_uoff descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the no_uoff
Throws: no
exception
 o getRot_conv
 public boolean getRot_conv()
Gets the rot_conv descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the rot_conv
Throws: no
exception
 o getR_g
 public boolean getR_g()
Gets the R_g descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the R_g
Throws: no
exception
 o getR_h
 public boolean getR_h()
Gets the R_h descriptor.

Parameters:
no - parameter
Returns:
a descriptor of the R_h
Throws: no
exception
 o 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