Geo::Inverse.3pm

Langue: en

Autres versions - même langue

Version: 2007-04-07 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

Geo::Inverse - Calculate geographic distance from a lat & lon pair.

SYNOPSIS

   use Geo::Inverse;
   my $obj = Geo::Inverse->new(); # default "WGS84"
   my ($lat1,$lon1,$lat2,$lon2)=(38.87, -77.05, 38.95, -77.23);
   my ($faz, $baz, $dist)=$obj->inverse($lat1,$lon1,$lat2,$lon2); #array context
   my $dist=$obj->inverse($lat1,$lon1,$lat2,$lon2);              #scalar context
   print "Input Lat: $lat1  Lon: $lon1\n";
   print "Input Lat: $lat2 Lon: $lon2\n";
   print "Output Distance: $dist\n";
   print "Output Forward Azimuth: $faz\n";
   print "Output Back Azimuth: $baz\n";
 
 

DESCRIPTION

This module is a pure Perl port of the NGS program in the public domain ``inverse'' by Robert (Sid) Safford and Stephen J. Frakes.

CONSTRUCTOR

new

The new() constructor may be called with any parameter that is appropriate to the ellipsoid method which establishes the ellipsoid.
   my $obj = Geo::Inverse->new(); # default "WGS84"
 
 

METHODS

ellipsoid

Method to set or retrieve the current ellipsoid object. The ellipsoid is a Geo::Ellipsoids object.
   my $ellipsoid=$obj->ellipsoid;  #Default is WGS84
 
   $obj->ellipsoid('Clarke 1866'); #Built in ellipsoids from Geo::Ellipsoids
   $obj->ellipsoid({a=>1});        #Custom Sphere 1 unit radius
 
 

inverse

This method is the user frontend to the mathematics. This interface will not change in future versions.
   my ($faz, $baz, $dist)=$obj->inverse($lat1,$lon1,$lat2,$lon2);
 
 

TODO

Add more tests.

BUGS

Please send to the geo-perl email list.

LIMITS

No guarantees that Perl handles all of the double precision calculations in the same manner as Fortran.

AUTHOR

Michael R. Davis qw/perl michaelrdavis com/

LICENSE

Copyright (c) 2006 Michael R. Davis (mrdvt92)

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

Net::GPSD Geo::Ellipsoid GIS::Distance::GeoEllipsoid