12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- import 'package:fis_measure/interfaces/process/items/item.dart';
- import 'package:fis_measure/interfaces/process/items/item_metas.dart';
- import 'package:fis_measure/process/calcuators/flow.dart';
- import 'package:fis_measure/process/calcuators/sv.dart';
- import 'package:fis_measure/process/items/top_item.dart';
- import 'package:fis_measure/process/items/top_item_feature.dart';
- import '../multi_method/multiple_trace.dart';
- import '../straightline.dart';
- class Sv extends TopMeasureItem<SvFeature> {
- late final StraightLine l;
- late final MultiTrace trace;
- Sv(super.meta) {
- final metaDiam = meta.childItems[0];
- final metaTA = meta.childItems[1];
- l = StraightLine.createDistance(metaDiam, this);
- trace = MultiTrace.createTrace(metaTA, this);
- childItems.add(l);
- childItems.add(trace);
- isCrossAreaMode = true;
- // canChildOutputSelf = false;
- }
- @override
- bool get finishAfterUnactive => true;
- @override
- SvFeature buildFeature() => SvFeature(this);
- static Sv createSV(ItemMeta meta, [IMeasureItem? parent]) {
- var sv = Sv(meta);
- sv.calculator = SvCal(sv);
- return sv;
- }
- static Sv createFlowVol(ItemMeta meta, [IMeasureItem? parent]) {
- var sv = Sv(meta);
- sv.calculator = FlowVolumeCal(sv);
- return sv;
- }
- }
- class SvFeature extends TopMeasureItemFeature {
- SvFeature(
- ITopMeasureItem refItem,
- ) : super(refItem);
- }
|