Public Types | Public Member Functions | Protected Attributes
vcsl_spheroid Class Reference

Reference sphere or ellipse for a geographic coordinate system. More...

#include <vcsl_spheroid.h>

Inheritance diagram for vcsl_spheroid:
Inheritance graph
[legend]

List of all members.

Public Types

enum  vcsl_std_spheroid {
  airy_1830, australian_national, bessel_1841, clarke_1866,
  clarke_1880, everest_1830, grs_1980, international,
  modified_airy, modified_everest, south_american_1969, wgs_1972,
  wgs_1984
}

Public Member Functions

 vcsl_spheroid ()
 Default constructor. Clark_1866 spheroid.
 vcsl_spheroid (const vcsl_std_spheroid s)
 Constructor from a standard spheroid.
 vcsl_spheroid (const vcsl_spheroid &other)
 ~vcsl_spheroid ()
double a () const
 Return the major axis of spheroid.
double b () const
 Return the minor axis of spheroid.
double e () const
 Return the eccentricity of spheroid.
double f () const
 Return the flattening of spheroid.
void set_from_std (const vcsl_std_spheroid new_std_spheroid)
 Set from a standard spheroid.
void set_a (double new_a)
 Set the major axis of spheroid.
void set_b (double new_b)
 Set the minor axis of spheroid.
void set_e (double new_e)
 Set the eccentricity of spheroid.
void set_f (double new_f)
 Set the flattening of spheroid.
bool operator== (const vcsl_spheroid &other) const
 Is `this' equal to `other' ?.
vcsl_spheroidoperator= (const vcsl_spheroid &other)
void ref ()
void unref ()
int get_references () const
bool is_referenced () const

Protected Attributes

double a_
 Major axis of spheroid.
double b_
 Minor axis of spheroid.
double e_
 Eccentricity of spheroid.
double f_
 Flattening of spheroid.

Detailed Description

Reference sphere or ellipse for a geographic coordinate system.

The default value for a reference ellipsoid is the Clarke 1866 model, but this class contains a constructor that allows reference spheroids to be constructed with values for several different standard models. See the book "Map Projections Used by the U.S. Geological Survey" (Snyder, John P., "Map Projections Used by the U.S. Geological Survey," Geological Survey Bulletin 1532, U.S. Government Printing Office, Washington, 1982.) for further detail on most of these coordinate systems.

Definition at line 26 of file vcsl_spheroid.h.


Member Enumeration Documentation

Enumerator:
airy_1830 
australian_national 
bessel_1841 
clarke_1866 
clarke_1880 
everest_1830 
grs_1980 
international 
modified_airy 
modified_everest 
south_american_1969 
wgs_1972 
wgs_1984 

Definition at line 30 of file vcsl_spheroid.h.


Constructor & Destructor Documentation

vcsl_spheroid::vcsl_spheroid ( ) [inline]

Default constructor. Clark_1866 spheroid.

Definition at line 52 of file vcsl_spheroid.h.

vcsl_spheroid::vcsl_spheroid ( const vcsl_std_spheroid  s) [inline, explicit]

Constructor from a standard spheroid.

Definition at line 55 of file vcsl_spheroid.h.

vcsl_spheroid::vcsl_spheroid ( const vcsl_spheroid other) [inline]

Definition at line 58 of file vcsl_spheroid.h.

vcsl_spheroid::~vcsl_spheroid ( ) [inline]

Definition at line 62 of file vcsl_spheroid.h.


Member Function Documentation

double vcsl_spheroid::a ( ) const [inline]

Return the major axis of spheroid.

Definition at line 69 of file vcsl_spheroid.h.

double vcsl_spheroid::b ( ) const [inline]

Return the minor axis of spheroid.

Definition at line 72 of file vcsl_spheroid.h.

double vcsl_spheroid::e ( ) const [inline]

Return the eccentricity of spheroid.

Definition at line 75 of file vcsl_spheroid.h.

double vcsl_spheroid::f ( ) const [inline]

Return the flattening of spheroid.

Definition at line 78 of file vcsl_spheroid.h.

vcsl_spheroid & vcsl_spheroid::operator= ( const vcsl_spheroid other)

Definition at line 84 of file vcsl_spheroid.cxx.

bool vcsl_spheroid::operator== ( const vcsl_spheroid other) const

Is `this' equal to `other' ?.

Definition at line 73 of file vcsl_spheroid.cxx.

void vcsl_spheroid::set_a ( double  new_a) [inline]

Set the major axis of spheroid.

Definition at line 88 of file vcsl_spheroid.h.

void vcsl_spheroid::set_b ( double  new_b) [inline]

Set the minor axis of spheroid.

Definition at line 91 of file vcsl_spheroid.h.

void vcsl_spheroid::set_e ( double  new_e) [inline]

Set the eccentricity of spheroid.

Definition at line 94 of file vcsl_spheroid.h.

void vcsl_spheroid::set_f ( double  new_f) [inline]

Set the flattening of spheroid.

Definition at line 97 of file vcsl_spheroid.h.

void vcsl_spheroid::set_from_std ( const vcsl_std_spheroid  new_std_spheroid)

Set from a standard spheroid.

Definition at line 9 of file vcsl_spheroid.cxx.


Member Data Documentation

double vcsl_spheroid::a_ [protected]

Major axis of spheroid.

Definition at line 119 of file vcsl_spheroid.h.

double vcsl_spheroid::b_ [protected]

Minor axis of spheroid.

Definition at line 121 of file vcsl_spheroid.h.

double vcsl_spheroid::e_ [protected]

Eccentricity of spheroid.

Definition at line 123 of file vcsl_spheroid.h.

double vcsl_spheroid::f_ [protected]

Flattening of spheroid.

Definition at line 125 of file vcsl_spheroid.h.


The documentation for this class was generated from the following files: