pymmcore-plus / useq-schema

An implementation agnostic schema for describing a sequence of events during a multi-dimensional imaging acquisition.
https://pymmcore-plus.github.io/useq-schema/
BSD 3-Clause "New" or "Revised" License
14 stars 5 forks source link

refactor: multi-point-plan #176

Closed tlambert03 closed 1 week ago

tlambert03 commented 1 week ago

This PR goes farther to formalize the relationship between all of the values in a well_points_plan, namely, they are all RelativeMultiPointPlan where

RelativeMultiPointPlan = Union[
    GridRowsColumns, GridWidthHeight, RandomPoints, RelativePosition
]

and they all support

    def __iter__(self) -> Iterator[RelativePosition]: ...
    def num_positions(self) -> int: ...

it also adds fov_height and width to the RelativePosition

codecov[bot] commented 1 week ago

Codecov Report

Attention: Patch coverage is 98.07692% with 1 line in your changes missing coverage. Please review.

Project coverage is 95.90%. Comparing base (7cc1c96) to head (8b16c1b).

Files Patch % Lines
src/useq/_plate.py 66.66% 1 Missing :warning:
Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #176 +/- ## ========================================== + Coverage 95.70% 95.90% +0.20% ========================================== Files 16 16 Lines 1070 1075 +5 ========================================== + Hits 1024 1031 +7 + Misses 46 44 -2 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.