HomeOperatorsPoint/Intof,L,C

Point/Intof,L,C

Line / Circle Intersection

Creates a point at the intersection of a line and a circle. A direction selector is required to specify which of the two intersection points to create.

What It Does

A line and a circle can intersect at two points. The Point/Intof,L,C operator computes both intersection points analytically and creates the one specified by the direction selector.

The result is an exact analytic point — computed from the line equation and circle equation simultaneously. No iteration, no approximation, no tolerance.

Construction Tier: The created point is a construction entity. It can be deleted freely after the product geometry (lines, arcs, toolpaths) built from it is complete.

Syntax

Point/XLarge|XSmall|YLarge|YSmall, Intof, L, C
ParameterDescriptionRequired
SelectorXLarge, XSmall, YLarge, or YSmall — selects which intersection point to create✓ Yes
LReference number of the line (e.g. L0, L1, L2…)✓ Yes
CReference number of the circle (e.g. C0, C1, C2…)✓ Yes

Quick Input Panel

L: [line reference] C: [circle reference] Z: 0 Dir: ● XL ○ XS ○ YL ○ YS

Direction Selector

The direction selector tells XyzPilot which of the two intersection points to create:

SelectorPicksUse When
XLargeThe intersection point with the largest X coordinateYou want the right-side intersection
XSmallThe intersection point with the smallest X coordinateYou want the left-side intersection
YLargeThe intersection point with the largest Y coordinateYou want the upper intersection
YSmallThe intersection point with the smallest Y coordinateYou want the lower intersection
Important: Use the selector on the axis where the two solutions differ. If both intersections have the same X coordinate (vertical line), use YLarge/YSmall. If both have the same Y coordinate (horizontal line), use XLarge/XSmall.

Worked Examples

Example 1 — Horizontal Line and Circle

Setup: L0 = Horizontal line through Y=50 C0 = Centre (75, 50), Radius 25 Point/XLarge, Intof, L0, C0 → P2 = (100, 50) ← right intersection Point/XSmall, Intof, L0, C0 → P3 = (50, 50) ← left intersection

Example 2 — Vertical Line and Circle

Setup: L0 = Vertical line through X=10 C0 = Centre (0, 0), Radius 20 Point/YLarge, Intof, L0, C0 → P4 = (10, 17.321) ← upper intersection Point/YSmall, Intof, L0, C0 → P5 = (10, -17.321) ← lower intersection

Example 3 — Angled Line and Circle

Setup: L0 = Line at 45° through origin C0 = Centre (50, 50), Radius 30 Point/XLarge, Intof, L0, C0 → P6 = (71.213, 71.213) ← far intersection Point/XSmall, Intof, L0, C0 → P7 = (28.787, 28.787) ← near intersection

Analytic Rule

XyzPilot computes the intersection by solving the line equation and circle equation simultaneously:

Line equation: ax + by + c = 0 Circle equation: (x - cx)² + (y - cy)² = r² Substituting the line into the circle equation produces a quadratic in one variable. The two roots give the two intersection points. The direction selector picks which root to use. Result: Exact analytic coordinates — no iteration, no approximation, no tolerance accumulation.
Determinism: The same line and circle always produce the same two intersection points. The direction selector permanently records which solution was chosen.

FAQ

What if the line does not intersect the circle?

If the line does not intersect the circle (the discriminant is negative), XyzPilot returns an error. No point is created. Check that the line passes through or intersects the circle before using this operator.

What if the line is tangent to the circle?

If the line is tangent to the circle (discriminant = 0), both intersection points are the same. Use Point/Tanto,L,C instead — it is the correct operator for tangent points.

Why does the canvas preview show the wrong point?

While the selector is being chosen, the transient preview may show a point in the wrong position. This is a preview only — the point has not been created yet. Always confirm your selector choice before committing.

Can I use this operator with an arc instead of a circle?

Use Point/Intof,L,A for line/arc intersections. The arc operator respects the arc's start and end angles.