Calculus & Analysis

Villarceau Circles

Reveal the two circular sections of a ring torus using an exact bitangent plane, 3D and true-plane views, traced points and tangency witnesses.

By Riano · Published · Updated · Report a correction

Two circles hidden in a torus

A horizontal cut through a doughnut-shaped surface suggests concentric circles. Villarceau circles come from a different cut: an oblique plane through the center that is tangent to a regular ring torus at two distinct points. The complete section is a pair of intersecting circles. Their appearance in a perspective drawing can disguise their true shape; the Section plane view removes that projection.

Constructing the bitangent plane

Let R be the distance from the torus center to the center of its tube, and let r be the tube radius, with R > r > 0. The torus satisfies (√(x2 + y2) − R)2 + z2 = r2. Set d = √(R2 − r2). One bitangent plane is r y = d z. Its inclination above the xy-plane is α = arcsin(r/R) = arctan(r/d). Plane azimuth rotates this entire construction around the z-axis.

C±(t) = (±r + R cos t, d sin t, r sin t)
Centers = (±r, 0, 0); circle radius = R
T± = (0, ±d2/R, ±rd/R)

The vectors (R,0,0) and (0,d,r) are perpendicular and both have length R, because d2 + r2 = R2. Thus each parametrization is a genuine circle of radius R, rather than merely a closed curve that looks circular. Its center has distance r from the origin. In the orthonormal coordinates u,v of this plane, the two equations are (u ∓ r)2 + v2 = R2.

To check that these circles lie on the torus, square the horizontal distance ρ from the z-axis. Substitution gives ρ2 = (R ± r cos t)2. Since R > r, the positive square root is ρ = R ± r cos t. Consequently (ρ − R)2 + z2 = r2. Conversely, substituting the plane equation in the torus equation yields the same two circle equations, so they form the complete section.

A 3–4–5 calculation you can check

Choose R = 5 and r = 3, with Plane azimuth 0 and Trace angle 90 degrees. Then d = √(25 − 9) = 4, so the cutting plane is 3y = 4z. The circle radius is 5, even though the tube radius is only 3. The following coordinates come directly from sine and cosine, not from measuring the drawing.

ObjectCalculationExpected value
Inclination above xyarcsin(3/5)36.869898°
C+ at 90°(3 + 5·0, 4·1, 3·1)(3, 4, 3)
C− at 90°(−3 + 5·0, 4·1, 3·1)(−3, 4, 3)
T+(0, 16/5, 12/5)(0, 3.2, 2.4)
T−−T+(0, −3.2, −2.4)
  1. Both traced points satisfy 3y = 4z, since 3·4 = 4·3.
  2. At (3,4,3), ρ = 5, so (ρ − 5)2 + 32 = 9 = r2.
  3. The two circle equations subtract to give u = 0 at their intersections. Then v = ±√(25 − 9) = ±4. Converting back gives the two T points above.
  4. The torus gradient at T+ is (0, −18/5, 24/5), parallel to the plane normal (0,3,−4). Thus the shared points really are tangencies. At T− the normal direction reverses.

At Trace angle 0 the marked points are (8,0,0) and (2,0,0); at 180 they are (−2,0,0) and (−8,0,0). The two circles intersect only at T+ and T−. Sharing a trace angle does not make the two colored moving points meet at a tangency at the same time.

Predict, rotate, and check the section

Open the Villarceau Circles module. The colored dots are points on C+ and C−; the hollow white dots mark the two tangencies. The drawing fits the current torus to the panel, so compare numerical values when changing its size.

  1. Press Reset experiment. Check Major radius R = 5, Tube radius r = 3, Plane azimuth = 0 and Trace angle = 90. Predict d = 4 and the two point coordinates from the worked table, then compare the visible readouts below the drawing.
  2. Set View to Section plane. The axes have equal scale. Locate the centers at u = ±3 and the two white intersections at u = 0, v = ±4; both circles have radius 5.
  3. Move Trace angle to 0 and then 180. Check the pairs (8,0,0)/(2,0,0) and (−2,0,0)/(−8,0,0). The circles stay fixed while their marked points travel.
  4. Return View to 3D view, Trace angle to 90, and set Plane azimuth to 90. A quarter-turn around z sends C+ to (−4,3,3) and C− to (−4,−3,3), while radius and inclination remain unchanged.
  5. Set Plane azimuth back to 0 and Tube radius r to 4. Predict d = 3 and tilt 53.130102°. Check the points (4,3,4) and (−4,3,4). The circle radius remains 5 while the tube becomes thicker.
  6. Set Tube radius r to 0.25, then Major radius R to 2. The ring is still regular. The gap d = √63/4 rounds to 1.984313 and the inclination arcsin(1/8) rounds to 7.180756°. The module excludes the zero-radius tube.
  7. Press Reset experiment, then reduce Major radius R to 2 directly. Tube radius r becomes 1.75 in the same update, keeping a 0.25 gap between the radii. Check d = √15/4 ≈ 0.968246 and tilt ≈ 61.044976°. This automatic clamp prevents a horn or spindle torus.
  8. Press Reset experiment; set Camera azimuth to 75 and Camera elevation to 45. Drag the canvas or focus it and press arrow keys. The coordinates stay fixed. Home or Reset view removes only pan, retaining these camera angles. Reset experiment also restores camera 30/25 and all geometry defaults.

What the views establish

This construction assumes a regular ring torus with R > r > 0. The controls keep 2 ≤ R ≤ 8 and 0.25 ≤ r ≤ R − 0.25. The horn limit R = r merges the two tangencies and is outside the model; spindle tori and a zero-radius tube are also excluded. The plane tilt is determined by the radii, not freely adjustable. Plane azimuth changes its orientation without leaving the family of bitangent planes.

The 3D view is a transparent orthographic projection with a sampled wire mesh, not a solid rendering with hidden-surface removal. Genuine circles can appear elliptical or overlap in that projection. The Section plane view uses an orthonormal basis and uniform scale to show their actual circular geometry. Camera angles affect only 3D; pan and resizing change presentation without changing the experiment. No point dragging or arbitrary-plane intersection solver is provided.

Coordinates are rounded to three decimals, and d, inclination and residuals to six. Binary64 trigonometry can produce tiny nonzero values at whole turns; magnitudes below 10−9 display as zero. The point-plane and point-torus residuals test the two current marked points numerically. They do not prove the entire theorem or replace the algebraic argument. Auto-fit rescales the drawing as R and r change, so apparent pixel diameter is not a measurement of a physical radius.

Sources for the geometry

The definition and analytic construction below support the geometry; the 5/3 worked experiment is calculated here. These sources do not endorse the interface or establish its numerical implementation.

Experience it interactively

Adjust parameters, observe in real time, and build deep intuition with Riano’s interactive Villarceau Circles module.

Try Villarceau Circles on Riano →

More in Calculus & Analysis