sunrise-next

Crates.iosunrise-next
lib.rssunrise-next
version1.2.3
sourcesrc
created_at2023-06-17 11:10:16.926626
updated_at2023-06-24 20:21:45.362013
descriptionSunrise and sunset calculator
homepage
repositoryhttps://github.com/nathan-osman/rust-sunrise
max_upload_size
id892833
size38,071
Rémi Dupré (remi-dupre)

documentation

README

sunrise

This is a fork of nathan-osman's crate to test new features.

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

You can enable the no-std feature if you need it to work in such a context, it will rely on libm instead.

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-next = "1.2"

You can use the sunrise_sunset function to perform the calculation:

// Calculate times for January 1, 2016 in Toronto
let (sunrise, sunset) = sunrise::sunrise_sunset(43.6532, -79.3832, 2016, 1, 1);

If you need more refined control, you can use the SolarDay struct:

use sunrise::{sunrise_sunset, SolarDay, SolarEvent, DawnType};

let dawn = SolarDay::new(43.6532, -79.3832, 2016, 1, 1)
    .with_altitude(54.)
    .event_time(SolarEvent::Dawn(DawnType::Civil));
Commit count: 33

cargo fmt