magnetic_declination 1.0.0 copy "magnetic_declination: ^1.0.0" to clipboard
magnetic_declination: ^1.0.0 copied to clipboard

A Flutter plugin for calculating magnetic declination on Android and iOS.

Magnetic Declination Flutter Plugin #

The magnetic_declination plugin provides a method to calculate the magnetic declination for a given location and time. This plugin supports Android and iOS platforms and integrates seamlessly with Flutter applications.

Features #

  • Calculate the magnetic declination based on:
    • Latitude
    • Longitude
    • Altitude
    • Specific date and time
  • Cross-platform support (Android and iOS).

Installation #

Add the package to your Flutter project by including it in your pubspec.yaml:

dependencies:
  magnetic_declination:

Run the following command to install the package:

flutter pub get

example #

import 'package:magnetic_declination/magnetic_declination.dart';

void main() async {
  double latitude = 37.7749;
  double longitude = -122.4194;
  double altitude = 30.0; // in meters
  DateTime date = DateTime.now();

  double declination = await MagneticDeclination.calculateDeclination(
    latitude,
    longitude,
    altitude,
    date,
  );

  print('Magnetic Declination: $declination');
}

Platform-specific Implementations #

Android #

The plugin uses the GeomagneticField class from the Android SDK to compute the declination. The calculation is based on the location and time passed from the Dart code.

iOS #

On iOS, the plugin leverages the CoreLocation framework to access location-based services for declination calculations.

Methods #

calculateDeclination #

Parameters:

  • latitude (double): Latitude in decimal degrees.
  • longitude (double): Longitude in decimal degrees.
  • altitude (double): Altitude in meters.
  • date (DateTime): Date and time for which the declination is calculated.

Returns:

  • Future<double>: The calculated magnetic declination in degrees.

Error Handling #

If an error occurs during the calculation, the method returns 0.0 and logs the error. Check your logs for detailed error messages to debug issues.

Contributing #

Contributions are welcome! Feel free to submit pull requests or open issues on the repository.

License #

This project is licensed under the GNU Lesser General Public License v3.0.

Maintainer #

Developed and maintained by Ali Miracle.
Email: [email protected]

0
likes
150
points
32
downloads

Publisher

unverified uploader

Weekly Downloads

A Flutter plugin for calculating magnetic declination on Android and iOS.

Repository

Documentation

API reference

License

LGPL-3.0 (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on magnetic_declination

Packages that implement magnetic_declination