Eov magassági korrekció rácshálóból (gtx)
This commit is contained in:
@@ -21,6 +21,7 @@ import 'package:permission_handler/permission_handler.dart'
|
||||
as permission_handler;
|
||||
import 'package:share_plus/share_plus.dart';
|
||||
import 'package:supabase_flutter/supabase_flutter.dart';
|
||||
import 'package:terepi_seged/controls/geoid_grid.dart';
|
||||
import 'package:terepi_seged/eov/convert_coordinate.dart';
|
||||
import 'package:terepi_seged/eov/eov.dart';
|
||||
import 'package:terepi_seged/gnss_sentences/gngga.dart';
|
||||
@@ -78,6 +79,8 @@ class MapViewController extends GetxController {
|
||||
RxDouble gpsAltitudeError = 0.0.obs;
|
||||
Rx<DateTime> gpsDateTime = DateTime(2000).obs;
|
||||
Rx<Eov> eov = Eov(0, 0).obs;
|
||||
Rx<double?> eovHeight = 0.0.obs;
|
||||
|
||||
RxInt latDegree = 0.obs;
|
||||
RxInt latMin = 0.obs;
|
||||
RxDouble latSec = 0.0.obs;
|
||||
@@ -99,6 +102,8 @@ class MapViewController extends GetxController {
|
||||
RxInt pointsToMeasureSelectedValue = (-1).obs;
|
||||
RxDouble distance = 0.0.obs;
|
||||
|
||||
late GeoidGrid geoidGrid;
|
||||
|
||||
TextEditingController pointIdController = TextEditingController();
|
||||
TextEditingController pointDescriptionController = TextEditingController();
|
||||
TextEditingController gpsHeightController = TextEditingController();
|
||||
@@ -180,6 +185,8 @@ class MapViewController extends GetxController {
|
||||
})
|
||||
.subscribe();
|
||||
|
||||
geoidGrid = await GeoidGrid.load('assets/Grids/geoid_eht2014.gtx');
|
||||
|
||||
mapController = MapController();
|
||||
|
||||
// riveGpsIconController = RiveUtils.getRiveController(Artboard(),
|
||||
@@ -482,6 +489,11 @@ class MapViewController extends GetxController {
|
||||
gpsQuality.value = sentence.gpsQualityIndicator;
|
||||
eov.value = ConvertCoordinate.ConvertWgsToEov(
|
||||
gpsLatitude.value, gpsLongitude.value);
|
||||
eovHeight.value = geoidGrid?.toEovHeight(
|
||||
gpsLatitude.value,
|
||||
gpsLongitude.value,
|
||||
gpsAltitude.value,
|
||||
gpsGeoidSeparation.value);
|
||||
|
||||
if (pointsToMeasureSelectedValue.value >= 0) {
|
||||
double coordX =
|
||||
|
||||
Reference in New Issue
Block a user