3 releases (breaking)
0.3.1 | Oct 18, 2024 |
---|---|
0.3.0 |
|
0.2.0 | Jul 25, 2015 |
0.1.0 | Jul 16, 2015 |
#75 in Date and time
3,475 downloads per month
Used in 2 crates
14KB
238 lines
sun
A Rust port of the JS library suncalc.
Install
Add the following to your Cargo.toml
[dependencies]
sun = "0.3"
Usage
pub fn main() {
let unixtime = 1_362_441_600_000.0;
let lat = 48.0;
let lon = 9.0;
let pos = sun::pos(unixtime,lat,lon);
let az = pos.azimuth.to_degrees();
let alt = pos.altitude.to_degrees();
println!("The position of the sun is {az}/{alt}");
let time_ms = sun::time_at_phase(unixtime, sun::SunPhase::Sunrise, lat, lon, 0.0);
println!("Sunrise is at {time_ms}");
}
lib.rs
:
The sun
crate is a library for calculating the position of the sun and sun phases
(like sunrise, sunset).
It is a port of the JavaScript
library
suncalc.
Example
let unixtime = 1_362_441_600_000;
let lat = 48.0;
let lon = 9.0;
let pos = sun::pos(unixtime,lat,lon);
let az = pos.azimuth.to_degrees();
let alt = pos.altitude.to_degrees();
println!("The position of the sun is {az}/{alt}");
// calculate time of sunrise
let time_ms = sun::time_at_phase(unixtime, sun::SunPhase::Sunrise, lat, lon, 0.0);
assert_eq!(time_ms, 1_362_463_116_241);