Crate sunrise

Source
Expand description

§sunrise

This crate provides a function for calculating sunrise and sunset times using this method.

To work in a no-std environment disable the default features and enable the libm feature.

§Usage

In order to perform the calculation, you’ll need to provide the following:

  • the date for which you wish to calculate the times
  • the latitude and longitude of the location

Begin by adding this crate to Cargo.toml:

[dependencies]
sunrise = "1.2"

You can use the SolarDay struct to perform computation of an event at a particular place and time:

use chrono::NaiveDate;
use sunrise::{Coordinates, SolarDay, SolarEvent, DawnType};

// January 1, 2016 in Toronto
let date = NaiveDate::from_ymd_opt(2016, 1, 1).unwrap();
let coord = Coordinates::new(43.6532, -79.3832).unwrap();

let dawn = SolarDay::new(coord, date)
    .with_altitude(54.)
    .event_time(SolarEvent::Dawn(DawnType::Civil));

Structs§

Coordinates
A valid pair of geographic coordinates.
SolarDay
Represent a full day at specific location, which allows to compute the exact date & time of any solar event during this day.

Enums§

DawnType
Type of dawn or dusk computation.
SolarEvent
Common solar events.

Functions§

sunrise_sunsetDeprecated
Calculates the sunrise and sunset times for the given location and date.