12345678910111213141516171819202122232425262728293031323334353637383940 |
- 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/types.dart';
- import 'package:fis_measure/process/calcuators/lv_study.dart';
- import 'package:fis_measure/process/items/top_item.dart';
- import 'package:fis_measure/process/items/top_item_feature.dart';
- import 'package:fis_measure/process/primitives/straightline.dart';
- class StraightLineGroup extends TopMeasureItem<StraightLineGroupFeature> {
- StraightLineGroup(ItemMeta meta) : super(meta) {
- for (final childMeta in meta.childItems) {
- final childItem = StraightLine.createDistance(childMeta, this);
- childItems.add(childItem);
- }
- }
- @override
- bool get finishAfterUnactive => true;
- @override
- StraightLineGroupFeature buildFeature() => StraightLineGroupFeature(this);
- static StraightLineGroup createLvStudy(ItemMeta meta,
- [IMeasureItem? parent]) {
- if (meta.measureType != MeasureTypes.LvStudyByLineGroupTissue) {
- throw ArgumentError();
- }
- var ins = StraightLineGroup(meta);
- ins.isCrossFrameMode = true;
- ins.calculator = LvStudyDistanceGroupCal(ins);
- return ins;
- }
- }
- class StraightLineGroupFeature extends TopMeasureItemFeature {
- StraightLineGroupFeature(
- ITopMeasureItem refItem,
- ) : super(refItem);
- }
|