Skip to content

Trace a freehand region on the phasor plot - #15

Merged
alex1075 merged 3 commits into
mainfrom
feature/phasor-freehand
Aug 24, 2026
Merged

alex1075 merged 3 commits into
mainfrom
feature/phasor-freehand

Conversation

@alex1075

Copy link
Copy Markdown
Contributor

The bridge has accepted polygon cursors since #6 and nothing could produce one. Draw region turns a drag on the phasor canvas into an outline, which goes on the wire as type: polygon with its vertices in (g, s).

Points closer than three pixels apart are dropped, so a drag doesn't send hundreds of vertices. Fewer than three points isn't a region and says so. The toggle releases itself after each outline, so the plot goes back to placing ellipses. Drawn regions can't be dragged afterwards; remove and redraw.

Building the request body moves to a static helper. Constructing a PhasorWindow needs a JavaFX toolkit, so the instance method can't be tested, and the wire format isn't a UI concern anyway.

Extension suite goes from 30 tests to 39. ./gradlew build succeeds, 232 Python tests pass.

Driven by hand in QuPath against a real file before merging, with the jar installed and the bridge running: drawing a region, applying a filter and an IRF, and creating annotations all work.

This is the last piece of 0.5.0, which is still untagged.

🤖 Generated with Claude Code

alex1075 and others added 2 commits August 24, 2026 10:36
The bridge has accepted polygon cursors since #6 and nothing could
produce one. Draw region turns a drag into an outline, which goes on
the wire as type polygon with its vertices in (g, s).

Building the request body moves to a static helper so it can be tested.
Constructing a PhasorWindow needs a JavaFX toolkit, and the wire format
is not a UI concern.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@alex1075
alex1075 merged commit 9a63e10 into main Aug 24, 2026
7 checks passed
@alex1075
alex1075 deleted the feature/phasor-freehand branch August 24, 2026 13:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant