gnssview/lib/Controller/gnss_controller.dart

62 lines
1.6 KiB
Dart
Raw Normal View History

2024-08-06 17:41:15 +08:00
import 'package:flutter/widgets.dart';
import 'package:get/get.dart';
import 'package:gnss/gnss.dart';
class GnssController extends GetxController {
late final Gnss gnss;
LocationData? locationData;
SignalData? signalData;
var locationUpdate = 0.obs;
var signalUpdate = 0.obs;
final baselineX = 0.obs;
// updateSlider(double value) {
// startIndex.value = value.ceil();
// update();
// }
void updateSlider(double newValue) {
baselineX.value = newValue.ceil();
update();
}
Map<String, bool> selectedSignal = {
"GPS": true,
"GLO": true,
"GAL": true,
"BDS": true,
"QZS": true,
}.obs;
// final selectedColorList = <bool>{false, false, false, false, false}.obs;
// final QselectedSignal = <bool>[false, false, false, false, false].obs; //信号质量
Map<Color, String> QselectedSignal = {
Color.fromARGB(255, 255, 0, 0): "GPS",
Color.fromARGB(255, 0, 255, 0): "GLO",
Color.fromARGB(255, 0, 0, 255): "GAL",
Color.fromARGB(255, 146, 73, 206): "BDS",
Color.fromARGB(255, 13, 179, 179): "QZS"
}.obs;
var qselectedSystem = 'GPS'.obs;
@override
void onInit() async {
super.onInit();
gnss = Gnss(port: "/dev/ttysWK2", baudrate: 115200);
// gnss = Gnss(port: "COM1", baudrate: 115200);
gnss.start();
gnss.locationStream.listen((location) {
locationData = location;
locationUpdate++;
});
gnss.signalStream.listen((singnal) {
signalData = singnal;
signalUpdate++;
});
}
@override
void dispose() {
gnss.dispose();
super.dispose();
}
}