This is what it looks like (tested!):

---
#!/usr/local/bin/perl
use DateTime;
use DateTime::Set 0.1202;
use DateTime::Event::Sunrise;

my $dt = DateTime->new(
     year   => 2003,
     month  => 9,
     day    => 24,
     time_zone => 'America/New_York',
);

my $sunrise = DateTime::Event::Sunrise->sunrise (
     longitude =>'-73.59',
     latitude =>'40.38',
     altitude => '-0.833',
     iteration => '1'
)->set_time_zone( 'America/New_York' );

my $sunset = DateTime::Event::Sunrise->sunset (
     longitude =>'-73.59',
     latitude =>'40.38',
     altitude => '-0.833',
     iteration => '1'
)->set_time_zone( 'America/New_York' );

print $dt->datetime, " ", $dt->time_zone_long_name, "\n";

my $rise = $sunrise->next($dt);
print $rise->datetime, " ", $rise->time_zone_long_name, "\n";

my $set = $sunset->next($dt);
print $set->datetime, " ", $set->time_zone_long_name, "\n";
---
2003-09-24T00:00:00 America/New_York
2003-09-24T08:10:00 America/New_York
2003-09-24T18:01:00 America/New_York
---

- Flavio S. Glock


Dave Rolsky wrote:
> 
> On Wed, 24 Sep 2003, Flavio S. Glock wrote:
> 
> > Steven J. Weinberger wrote:
> > >
> > > I'm trying to use DateTime::Event::Sunset in my DateTime::Calendar::Hebrew 
> > > module, but I'm having a problem. Below is my test code. The
> > > results from the code are:
> > >
> > > 2003-09-24T10:42:00
> > > 2003-09-24T22:48:00
> > >
> > > Sunrise wasn't at 10:42 and the sun will set well before 22:48. Is there 
> > > something I'm doing wrong?
> >
> > I think these results are in UTC time.
> 
> Hmm, this should probably be changed so that the returned object has the
> same time_zone as was passed to next().  I think this change would go in
> DT::E::Sunrise.

Reply via email to