trace.dart 998 B

123456789101112131415161718192021222324252627
  1. import 'package:fis_measure/interfaces/process/items/terms.dart';
  2. import 'package:fis_measure/process/primitives/multi_method/multiple_trace.dart';
  3. import 'calculator.dart';
  4. class TraceCal extends Calculator<TraceItemAbstract, double> {
  5. TraceCal(TraceItemAbstract ref) : super(ref);
  6. @override
  7. void calculate() {
  8. if (ref.feature == null) return;
  9. final feature = ref.feature!;
  10. final viewport = feature.hostVisualArea!.viewport!;
  11. final points = feature.innerPoints.map((e) => viewport.convert(e)).toList();
  12. double fakeOutputDate = 0;
  13. for (var output in ref.meta.outputs) {
  14. if (output.name == MeasureTerms.Slope) {
  15. feature.updateFloatValue(output, fakeOutputDate, output.unit);
  16. } else if (output.name == MeasureTerms.Timespan) {
  17. feature.updateFloatValue(output, fakeOutputDate, output.unit);
  18. } else if (output.name == MeasureTerms.Distance) {
  19. feature.updateFloatValue(output, fakeOutputDate, output.unit);
  20. }
  21. }
  22. }
  23. }