import 'package:fis_measure/interfaces/date_types/rect_region.dart'; import 'package:fis_measure/interfaces/process/visuals/visual_area.dart'; import 'package:fis_measure/process/visual/time_motion_area.dart'; import 'package:fis_measure/process/visual/tissue_area.dart'; import 'package:vid/us/vid_us_2d_visual.dart'; import 'package:vid/us/vid_us_mode.dart'; import 'package:vid/us/vid_us_visual.dart'; import 'package:vid/us/vid_us_visual_area_type.dart'; import 'visual.dart'; class V2dVisual extends VisualBase { V2dVisual(VidUsVisual visualData, RectRegion region) : super(visualData, region); @override List loadAreas() { List visualAreas = []; for (var areaType in visualData.physicalCoordinates.keys) { IVisualArea? area; switch (areaType) { case VidUsVisualAreaType.Tissue: area = TissueArea(this, areaType, VidUsModeType.Tissue); break; case VidUsVisualAreaType.Flow: area = TissueArea(this, areaType, VidUsModeType.Flow); break; case VidUsVisualAreaType.TimeMotion: case VidUsVisualAreaType.TissueTimeMotion: area = TimeMotionArea(this, areaType, VidUsModeType.TissueTM); break; case VidUsVisualAreaType.Doppler: area = TimeMotionArea(this, areaType, VidUsModeType.Doppler); break; case VidUsVisualAreaType.Trace: case VidUsVisualAreaType.Colorbar: case VidUsVisualAreaType.Tissue3D: case VidUsVisualAreaType.AssociateTissue: case VidUsVisualAreaType.AssociateFlow: case VidUsVisualAreaType.ZoomTissue: case VidUsVisualAreaType.ZoomFlow: break; } if (area != null) { visualAreas.add(area); } } return visualAreas; } @override VidUs2DVisual get visualData => super.visualData as VidUs2DVisual; }