1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- import 'package:fis_measure/interfaces/process/calculators/values.dart';
- 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/items/terms.dart';
- import 'package:fis_measure/process/calcuators/pisa.dart';
- import 'package:fis_measure/process/items/top_item.dart';
- import 'package:fis_measure/process/items/top_item_feature.dart';
- import 'package:vid/us/vid_us_unit.dart';
- import '../multi_method/multiple_trace.dart';
- import '../straightline.dart';
- class Pisa extends TopMeasureItem<PisaFeature> {
- late final StraightLine radius;
- late final MultiTrace trace;
- late final FloatValue _alsVel;
- Pisa(super.meta) {
- final metaRadius = meta.childItems[0];
- final metaTrace = meta.childItems[1];
- radius = StraightLine.createDistance(metaRadius, this);
- trace = MultiTrace.createTrace(metaTrace, this);
- childItems.add(radius);
- childItems.add(trace);
- isCrossAreaMode = true;
- canChildOutputSelf = false;
- final alsVelOutputMeta =
- ItemOutputMeta(MeasureTerms.AlsVel, "Als.Vel", VidUsUnit.cms);
- _alsVel = FloatValue(alsVelOutputMeta, 65.0, alsVelOutputMeta.unit);
- // _alsVel = FloatValue(alsVelOutputMeta, 65.9, alsVelOutputMeta.unit);
- }
- @override
- bool get finishAfterUnactive => true;
- FloatValue get alsVel => _alsVel;
- @override
- PisaFeature buildFeature() => PisaFeature(this);
- void updateAlsVel(double val) {
- _alsVel.value = val;
- calculator?.calculate();
- update();
- }
- static Pisa createPisa(ItemMeta meta, [IMeasureItem? parent]) {
- var pisa = Pisa(meta);
- pisa.calculator = PisaCal(pisa);
- return pisa;
- }
- }
- class PisaFeature extends TopMeasureItemFeature {
- PisaFeature(
- ITopMeasureItem refItem,
- ) : super(refItem);
- }
|