Observed
UX on TestBuilder RC1. CircularString draw tool.
First: CIRCULARSTRING (6 73, 51 75, 80 15).
Then a second intersecting arc. Intended third click POINT (46 91).
Got:
MULTICURVE (
CIRCULARSTRING (6 73, 51 75, 80 15),
CIRCULARSTRING (38 27, 35 71, 35.4 72.6))
The second arc is cut off near the second control (35 71 → 35.4 72.6). The line toward (46 91) shows as a chord, not a circle-segment preview.
Expected
- Click-only control points. Drag must not stream extra CircularString vertices (that is LineString stream-draw).
- Second component:
CIRCULARSTRING (38 27, 35 71, 46 91) — full arc through the clicked third point.
- In-progress preview of a complete (start, mid, mouse) triple is an arc, not a leftover chord.
- Combining intersecting CircularStrings must not clip them.
Cause (code)
CircularStringTool extends AbstractStreamDrawTool. mouseLocationChanged adds coordinates while BUTTON1 is down. A slight drag after the second click inserts (35.4 72.6), completes a 3-point string prematurely, and the real third click becomes an even leftover (chord preview; dropped on bandFinished).
Not
Observed
UX on TestBuilder RC1. CircularString draw tool.
First:
CIRCULARSTRING (6 73, 51 75, 80 15).Then a second intersecting arc. Intended third click
POINT (46 91).Got:
The second arc is cut off near the second control (35 71 → 35.4 72.6). The line toward (46 91) shows as a chord, not a circle-segment preview.
Expected
CIRCULARSTRING (38 27, 35 71, 46 91)— full arc through the clicked third point.Cause (code)
CircularStringToolextendsAbstractStreamDrawTool.mouseLocationChangedadds coordinates while BUTTON1 is down. A slight drag after the second click inserts (35.4 72.6), completes a 3-point string prematurely, and the real third click becomes an even leftover (chord preview; dropped onbandFinished).Not