Эх сурвалжийг харах

fix 0018914: 【图像测量】【小动物】选择测量项EF,子测量项(LVIDd、LVIDs)开始测量后,生成的测量结果**cm,此时切换测量单位(mm,int, ft),数值没有发生变化

Melon 10 сар өмнө
parent
commit
28e1e4769e

+ 1 - 7
lib/process/calcuators/time_motion.dart

@@ -23,13 +23,7 @@ class VerticalDistanceCal extends Calculator<StraightLine, double> {
     final pp2 = viewport.convert(p2);
 
     final value = (pp2.y - pp1.y).abs();
-    // updateFloatValue(value);
-    final ouput = ref.meta.outputs.first;
-    feature.updateFloatValue(
-      ouput,
-      value,
-      viewport.yUnit,
-    );
+    updateFloatValue(value, useUnitY: true);
   }
 }
 

+ 13 - 1
lib/process/primitives/combos/two_straightline.dart

@@ -1,11 +1,13 @@
 import 'package:fis_measure/interfaces/process/items/item.dart';
 import 'package:fis_measure/interfaces/process/items/item_metas.dart';
+import 'package:fis_measure/interfaces/process/workspace/application.dart';
 import 'package:fis_measure/process/calcuators/a_b_ratio.dart';
 import 'package:fis_measure/process/calcuators/stenosis.dart';
 import 'package:fis_measure/process/calcuators/tei_index.dart';
 import 'package:fis_measure/process/calcuators/two_distance.dart';
 import 'package:fis_measure/process/items/top_item_feature.dart';
 import 'package:fis_measure/process/primitives/straightline.dart';
+import 'package:get/get.dart';
 
 import 'two_length.dart';
 
@@ -130,7 +132,8 @@ class TwoStraightLine extends TwoLengthAbstract<TwoStraightLineFeature> {
   }
 
   static TwoStraightLine createEfTeich(ItemMeta meta, [IMeasureItem? parent]) {
-    var twoStraightline = TwoStraightLine(meta);
+    final isModeBelow = _checkIsModeBelow();
+    var twoStraightline = TwoStraightLine(meta, ifVertical: isModeBelow);
     twoStraightline.calculator = EfTeichCal(twoStraightline);
     return twoStraightline;
   }
@@ -146,6 +149,15 @@ class TwoStraightLine extends TwoLengthAbstract<TwoStraightLineFeature> {
     twoStraightline.calculator = RvStudyCal(twoStraightline);
     return twoStraightline;
   }
+
+  static bool _checkIsModeBelow() {
+    if (Get.isRegistered<IApplication>()) {
+      final app = Get.find<IApplication>();
+      final mode = app.currentMode.name.toLowerCase();
+      return ["m", "pw"].contains(mode);
+    }
+    return false;
+  }
 }
 
 class TwoStraightLineFeature extends TopMeasureItemFeature {