NAME
Geo::Sun - Calculates the Geodetic Position of the Sun over the Surface of the Earth
SYNOPSIS
use Geo::Sun;
my $gs=Geo::Sun->new;
my $point=$gs->set_datetime(DateTime->now)->point; #Full OO interface
my $point=$gs->point_dt(DateTime->now); #Old interface
printf "Latitude: %s, Longitude: %s\n", $point->latlon;
printf "Point isa %s\n", ref($point); #GPS::Point
DESCRIPTION
The Geo::Sun package calculates the position of the Sun over the Earth. The user method point_dt takes a DateTime object as a parameter and returns a GPS::Point which is the point on the earth where the Sun is directly over at the given time.
The Geo::Sun package is a wrapper around Astro::Coord::ECI::Sun with a user friendly interface.
USAGE
use Geo::Sun;
my $gs=Geo::Sun->new;
CONSTRUCTOR
new
my $gs=Geo::Sun->new;
METHODS
METHODS (POINT)
point
Returns a GPS::Point for the location of the sun at the current datetime.
my $point=$gs->point;
my $point=$gs->set_datetime(DateTime->now)->point;
point_dt
Set the current datetime and returns a GPS::Point
my $point=$gs->point_dt(DateTime->now);
Implemented as
my $point=$gs->set_datetime(DateTime->now)->point;
datetime
Sets or returns the current datetime which is a DateTime object. The default is DateTime->now.
set_datetime
Sets datetime returns self
METHODS (BEARING)
bearing
Returns the bearing from the station to the Sun.
station
Sets or returns station. Station must be a valid point argument for GSP::Point distance method.
set_station
Sets station returns self
METHODS (INTERNAL)
sun
Sets or returns the Astro::Coord::ECI::Sun object.
my $sun=$gs->sun;
ellipsoid
Set or returns the Geo::Ellipsoids object.
my $ellipsoid=$gs->ellipsoid; #WGS84
BUGS
Please send to the geo-perl email list.
SUPPORT
Try the geo-perl email list.
LIMITATIONS
Calculations are only good to about 3 decimal places.
AUTHOR
Michael R. Davis
CPAN ID: MRDVT
STOP, LLC
domain=>stopllc,tld=>com,account=>mdavis
http://www.stopllc.com/
COPYRIGHT
This program is free software licensed under the...
The BSD License
The full text of the license can be found in the LICENSE file included with this module.