solar_calculator 1.0.3 copy "solar_calculator: ^1.0.3" to clipboard
solar_calculator: ^1.0.3 copied to clipboard

Calculates the position of the Sun, the sunrise, sunset, solar noon times and the different twilights periods for a given moment in time and position on Earth.

example/solar_calculator_example.dart

import 'package:solar_calculator/solar_calculator.dart';
import 'package:solar_calculator/src/instant.dart';

void main() {
  final latitude = 41.387048;
  final longitude = 2.17413425;

  final instant = Instant(year: 2021, month: 5, day: 10, hour: 14, timeZoneOffset: 2.0);

  final calc = SolarCalculator(instant, latitude, longitude);

  print('Sun Equatorial position:');
  print(
      '    Right ascension: ${calc.sunEquatorialPosition.rightAscension} = ${calc.sunEquatorialPosition.rightAscension.decimalDegrees}');
  print('    Declination: ${calc.sunEquatorialPosition.declination}');

  print('Sun Horizontal position:');
  print('    Azimuth: ${calc.sunHorizontalPosition.azimuth}');
  print('    Elevation: ${calc.sunHorizontalPosition.elevation}');

  print('Morning astronomical twilight:');
  print('    Begining: ${calc.morningAstronomicalTwilight.begining}');
  print('    Ending: ${calc.morningAstronomicalTwilight.ending}');
  print('    Duration: ${calc.morningAstronomicalTwilight.duration}');

  print('Morning nautical twilight:');
  print('    Begining: ${calc.morningNauticalTwilight.begining}');
  print('    Ending: ${calc.morningNauticalTwilight.ending}');
  print('    Duration: ${calc.morningNauticalTwilight.duration}');

  print('Morning civil twilight:');
  print('    Begining: ${calc.morningCivilTwilight.begining}');
  print('    Ending: ${calc.morningCivilTwilight.ending}');
  print('    Duration: ${calc.morningCivilTwilight.duration}');

  print('Sunrise: ${calc.sunriseTime}');
  print('Noon: ${calc.sunTransitTime}');
  print('Sunset: ${calc.sunsetTime}');

  print('Evening civil twilight:');
  print('    Begining: ${calc.eveningCivilTwilight.begining}');
  print('    Ending: ${calc.eveningCivilTwilight.ending}');
  print('    Duration: ${calc.eveningCivilTwilight.duration}');

  print('Evening nautical twilight:');
  print('    Begining: ${calc.eveningNauticalTwilight.begining}');
  print('    Ending: ${calc.eveningNauticalTwilight.ending}');
  print('    Duration: ${calc.eveningNauticalTwilight.duration}');

  print('Evening astronomical twilight:');
  print('    Begining: ${calc.eveningAstronomicalTwilight.begining}');
  print('    Ending: ${calc.eveningAstronomicalTwilight.ending}');
  print('    Duration: ${calc.eveningAstronomicalTwilight.duration}');

  if (calc.isHoursOfDarkness) print('===> IS DARK <===');
}
9
likes
120
pub points
77%
popularity

Publisher

unverified uploader

Calculates the position of the Sun, the sunrise, sunset, solar noon times and the different twilights periods for a given moment in time and position on Earth.

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (LICENSE)

More

Packages that depend on solar_calculator