Michael R. Davis > Geo-Sun > Geo::Sun

Download:
Geo-Sun-0.04.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.04   Source  

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;                              #isa Geo::Sun
  my $point=$gs->set_datetime(DateTime->now)->point; #Full OO interface
  printf "Point isa %s\n", ref($point);              #isa GPS::Point
  printf "Latitude: %s, Longitude: %s\n", $point->latlon;

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;
  printf "Lat: %s, Lon: %s\n", $gs->point->latlon;

CONSTRUCTOR ^

new

  my $gs=Geo::Sun->new;

METHODS ^

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);

Implemented as

  my $point=$gs->set_datetime($datetime)->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 (INTERNAL) ^

point_recalculate

Recalculates the point when the DateTime is changed.

point_onchange

Override this method if you want to calculate something when the point changes

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.

SEE ALSO ^

syntax highlighting: