123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- import 'package:fis_measure/interfaces/date_types/point.dart';
- import 'package:fis_measure/interfaces/process/items/item.dart';
- import 'package:fis_measure/interfaces/process/items/item_metas.dart';
- import 'package:fis_measure/process/items/item.dart';
- import 'package:fis_measure/process/items/item_feature.dart';
- abstract class AreaItemAbstract extends MeasureItem<AreaItemFeatureAbstract> {
- bool _isClosed = true;
- double _splineTension = 0.0;
- AreaItemAbstract(ItemMeta meta, IMeasureItem? parent) : super(meta, parent);
- bool get isClosed => _isClosed;
- set isClosed(bool val) {
- if (val != _isClosed) {
- _isClosed = val;
- }
- }
- double get splineTension => _splineTension;
- set splineTension(double val) {
- if (val != _splineTension) {
- _splineTension = val;
- }
- }
- }
- abstract class AreaItemFeatureAbstract extends MeasureItemFeature {
- bool isSnapped = false;
- AreaItemFeatureAbstract(AreaItemAbstract refItem) : super(refItem);
- @override
- AreaItemAbstract get refItem => super.refItem as AreaItemAbstract;
- double get splineTension => refItem.splineTension;
- bool get isClosed => refItem.isClosed;
- DPoint get startPoint => innerPoints.first;
- DPoint get endPoint => innerPoints.last;
- /// 接收新坐标
- void adopt(DPoint point) {
- innerPoints.add(point);
- }
- }
|