Geometry Construction Lab
Build a small straightedge-and-compass-style diagram locally. Add free points, lines through two points, circles by center and through point, and intersections of two earlier shapes. Move a free point and every dependent object is recalculated. This is a floating-point exploration, not a symbolic proof or physical construction guarantee.
Key features
- Ordered point, infinite-line, circle and dependent-intersection steps
- Line-line, line-circle and circle-circle intersections with zero, one or two candidates
- Distinct states for parallel or coincident lines, tangency, degeneracy and unavailable dependencies
- Mouse or touch dragging plus coordinate fields and fully textual step/status list
- Strict versioned JSON import/export and standalone SVG drawing export
- Local-only processing with no automatic upload or persistent storage
How to use
- Load the worked example or add two free points using numeric coordinates or canvas placement.
- Construct an infinite line through two points or a circle from its center and a through point.
- Select two earlier lines/circles, preview their intersection count and choose candidate one or two.
- Drag a free point or edit its coordinates to watch dependent shapes and intersection states change.
- Review every step and status in text, then download editable JSON or a snapshot SVG.
Use cases
- Explore how a geometric construction changes as input points move
- Compare secant, tangent, disjoint, parallel and coincident cases
- Save a small reproducible construction for a lesson or worksheet
Frequently asked questions
Are lines finite segments?
No. Each line extends infinitely through two defining points for intersection calculations. The drawing clips it to the canvas rectangle; intersections outside the canvas can still appear in the text list.
What happens when an intersection has zero or two points?
The preview reports zero, one or two candidates. For two, choose candidate one or two. If a selected second candidate disappears after a point moves, that dependent point is marked unavailable instead of silently switching branches.
How are parallel, coincident and tangent states handled?
Nearly parallel lines are classified with a relative tolerance of 1e-9. Coincident lines have infinitely many common points, so no specific dependent point is created. A tangent intersection offers one candidate.
Does this prove a Euclidean construction exactly?
No. Computation uses browser floating-point arithmetic, a relative tolerance of 1e-9 and a minimum primitive span of 1e-7 drawing units. Near-degenerate cases may change classification due to rounding. Use formal geometry tools for proof.
Can I use this without a mouse?
Yes. Numeric coordinate fields create and move free points; native select controls create other steps; the ordered text list provides names, references, coordinates and statuses. The canvas is an optional visual shortcut.
Where is my construction stored?
It stays in the current browser tab. You can download a versioned JSON file to reopen it or an SVG snapshot. Files are processed locally; there is no automatic upload or persistent save.
Privacy
All coordinates and construction steps remain in this browser tab. JSON and SVG files are created only when you choose to download them. Import reads a local file and does not upload it.
Comments & questions