Kartenwerkzeugkasten - Geo-Messwerkzeuge - Fläche eines Polygons, Abstand zwischen Punkten, Richtung und Versatz zwischen Punkten (Port von SphericalUtil, PolyUtil aus `android-maps-utils`).
Aus öffentlichen Paketdaten erstellte Orientierung.
maps_toolkit ist ein Flutter/Dart-Paket, das wesentliche geospatialen Hilfsmittel für die Arbeit mit Karten bereitstellt. Es bietet Werkzeuge zur Berechnung der Fläche von Polygonen, zur Berechnung von Entfernungen zwischen geografischen Punkten und zur Bestimmung von Richtung und Versatz zwischen Koordinaten – imitiert Funktionen aus der Android Maps Utils-Bibliothek. Für den plattformübergreifenden Einsatz konzipiert, unterstützt es Android, iOS, Web, macOS, Windows und Linux. Das Paket vereinfacht komplexe geografische Berechnungen und ist daher ideal für ortsbasierte Anwendungen, die präzise Messungen und räumliche Analyse erfordern.
Anwendungsfälle
Berechnung von Polygonflächen auf Karten
Messung von Entfernungen zwischen zwei Koordinaten
Bestimmung der Richtungsrichtung zwischen Punkten
Berechnung von Koordinatenverschiebungen
Geospatial-Datenvisualisierung
Routenplanung und Analyse
Hauptmerkmale
Berechnung der Fläche eines Polygons
Abstand- und Richtungsberechnung
Koordinatenverschiebungshilfen
Plattformübergreifende Kompatibilität
Leichtgewichtig und einfach zu integrieren
Portierung von Android Maps Utils
Geeignet für
Kartenbasierte Anwendungen
Standortbasierte Funktionen
GIS-bezogene Projekte
Navigation- und Routing-Tools
Echtzeit-Tracking-Systeme
räumliche Analyse
Hinweise
Gültige Eingaben für Breiten- und Längenangabe erforderlich
Keine integrierte Kartendarstellung
Beruht auf genauen geodätischen Berechnungen
Nicht geeignet für großflächige Geländemodellierung
Am besten mit Karten-Widgets wie google_maps_flutter verwenden
Original-README
Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.
maps_toolkit
A library for area, distance, heading measurements (spherical_util.dart if port from android-maps-utils).
Getting Started
In your dart/flutter project add the dependency:
dependencies:...maps_toolkit:^3.0.0
A simple usage example:
import'package:maps_toolkit/maps_toolkit.dart';
main() {
val distanceBetweenPoints = SphericalUtil.computeDistanceBetween(
LatLng(51.5073509, -0.1277583),
LatLng(48.856614, 2.3522219)
);
final p1 = LatLng(45.153474463955796, 39.33852195739747);
final p2 = LatLng(45.153474463955796, 39.33972358703614);
final p3 = LatLng(45.15252112936569, 39.33972358703614);
final p4 = LatLng(45.1525022138355, 39.3385460972786);
val areaInSquareMeters = SphericalUtil.computeArea([p1, p2, p3, p4, p1]);
}
Usage with Google Maps package (specify a prefix for an import):
import'package:maps_toolkit/maps_toolkit.dart'as mp;
import'package:google_maps/google_maps.dart';
import'package:test/test.dart';
voidmain() {
final pointFromToolkit = mp.LatLng(90, 0);
final pointFromGoogleMap = LatLng(90, 0);
mp.SphericalUtil.computeAngleBetween(pointFromToolkit, pointFromToolkit);
}
List of functions
SphericalUtil.computeArea - calculate the area of a closed path on Earth.
SphericalUtil.computeDistanceBetween - calculate the distance between two points, in meters.
SphericalUtil.computeHeading - calculate the heading from one point to another point.
SphericalUtil.computeLength - calculate the length of the given path, in meters, on Earth.
SphericalUtil.computeOffset - calculate the point resulting from moving a distance from an origin in the specified heading (expressed in degrees clockwise from north).
SphericalUtil.computeOffsetOrigin - calculate the location of origin when provided with a point destination, meters travelled and original heading.
SphericalUtil.computeSignedArea - calculate the signed area of a closed path on Earth.
SphericalUtil.interpolate - calculate the point which lies the given fraction of the way between the origin and the destination.
PolygonUtil.containsLocation - computes whether the given point lies inside the specified polygon.
PolygonUtil.isLocationOnEdge - computes whether the given point lies on or near the edge of a polygon, within a specified tolerance in meters.
PolygonUtil.isLocationOnPath - computes whether the given point lies on or near a polyline, within a specified tolerance in meters.
PolygonUtil.locationIndexOnPath - computes whether (and where) a given point lies on or near a polyline, within a specified tolerance.
PolygonUtil.locationIndexOnEdgeOrPath - computes whether (and where) a given point lies on or near a polyline, within a specified tolerance.
PolygonUtil.simplify - simplifies the given poly (polyline or polygon) using the Douglas-Peucker decimation algorithm.
PolygonUtil.isClosedPolygon - returns true if the provided list of points is a closed polygon.
PolygonUtil.distanceToLine - computes the distance on the sphere between the point p and the line segment start to end.
PolygonUtil.decode - decodes an encoded path string into a sequence of LatLngs.
PolygonUtil.encode - encodes a sequence of LatLngs into an encoded path string.
Features and bugs
Please file feature requests and bugs at the issue tracker.