visual_area.dart 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import 'package:fis_measure/interfaces/date_types/rect_region.dart';
  2. import 'package:fis_measure/interfaces/process/visuals/visual.dart';
  3. import 'package:fis_measure/process/physical_coordinates/empty_tissue.dart';
  4. import 'package:fis_measure/process/visual/tissue_area.dart';
  5. import 'package:fis_measure/process/workspace/third_part/visual.dart';
  6. import 'package:vid/us/vid_us_unit.dart';
  7. import 'package:vid/us/vid_us_visual_area_type.dart';
  8. import 'package:vid/us/vid_us_mode.dart';
  9. import 'viewport.dart';
  10. class ThirdPartVisualArea extends TissueArea {
  11. ThirdPartVisualArea(IVisual visual)
  12. : super(
  13. visual,
  14. VidUsVisualAreaType.Tissue,
  15. VidUsModeType.Tissue,
  16. );
  17. @override
  18. void loadData() {
  19. layoutRegion = RectRegion.fill(0, 0, 1, 1);
  20. final application = (visual as ThirdPartVisual).application;
  21. final frame = application.frameData!;
  22. final pixelLength = application.standardLine.perPixelPhysicalLength;
  23. final width = frame.width * pixelLength;
  24. final height = frame.height * pixelLength;
  25. RectRegion region = RectRegion.fill(0, 0, width, height);
  26. viewport = ThirdPartViewPort(
  27. this,
  28. EmptyTissuePhysicalCoordinate(),
  29. VidUsUnit.cm,
  30. VidUsUnit.cm,
  31. region,
  32. );
  33. }
  34. }