12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- import 'package:fis_measure/interfaces/date_types/point.dart';
- import 'package:fis_measure/interfaces/date_types/rect_region.dart';
- import 'package:fis_measure/interfaces/process/visuals/visual_area.dart';
- import 'package:flutter/painting.dart';
- import 'package:vid/us/vid_us_unit.dart';
- import '../physical_coordinates/physical_coordinate.dart';
- import 'image_boundary.dart';
- /// 测量视口
- abstract class IViewPort {
- IVisualArea get area;
- /// 物理坐标协调器
- IPhysicalCoordinate? get physical;
- /// 所在区域(相对于整个图像)
- RectRegion get region;
- /// 图像区域(可能会超出[region])
- IImageBoundary get imageBoundary;
- /// 是否水平翻转
- bool get isFlipHorizontal;
- /// 是否垂直翻转
- bool get isFlipVertical;
- /// X轴单位
- VidUsUnit get xUnit;
- /// Y轴单位
- VidUsUnit get yUnit;
- /// 转换标准区间
- Size get convertBoundary;
- /// 转换为[region]中的逻辑化坐标点
- DPoint convert(DPoint point);
- /// 将逻辑化坐标点转换为相对于与[region]的规范化坐标点
- DPoint convertBack(DPoint point);
- }
|