Dome with Pendentives: Solid Geometry Construction and Rotational Symmetry

Dome with Pendentives: Solid Geometry Construction and Rotational Symmetry
Loading the math board and drawing, please wait…
2017-02-08 22:03
① This example demonstrates a dome with pendentives, the transitional curved surfaces that connect a square base to a circular dome, typical in Byzantine and Renaissance architecture. ② Core mathematical concepts include solid geometry involving prisms, cylinders, surfaces of revolution (arcs or circles), intersections of planes and surfaces, symmetry transformations, and spatial coordinate positioning. ③ Construction highlights: from the summary, GeoGebra commands such as Segment, Point, Polygon, Prism, Surface, Line, Circle, Cylinder, Midpoint, CircumcircleArc, Rotate, Plane, Intersect, CircleArc, Translate, and Sequence are used. The process builds a prismatic base, generates the dome via cylinders or circular arcs, and creates symmetric pendentive surfaces through rotation and translation, resulting in a complete 3D structure. ④ Suitable for high school or early college solid geometry instruction, architectural mathematics, or CAD demonstrations, helping students understand surface construction and geometric transformations in three-dimensional space.

GeoGebra Commands & Parameters

  1. Segment(A, AA) → f
  2. Point(f) → I
  3. Segment(A, I) → g
  4. Polygon(A, B, C, D) → veelhoek1, a_1, b_1, c, d
  5. Prism(veelhoek1, -1) → e, E, Ribbe1, Ribbe2, Ribbe3, Ribbe4, Ribbe5, Ribbe6, Ribbe7, Ribbe8, F, G, H, zijvlak1, zijvlak2, zijvlak3, zijvlak4, zijvlak5
  6. Surface(cos(α), sin(α), sin(α), α, 0°, 180°, α, 0°, 180°) → b
  7. Surface(cos(α), sin(α), cos(β), α, 0°, 360°, β, 0, 90°) → a
  8. Surface((sqrt(1 - h^(2)) * cos(θ)), (sqrt(1 - h^(2)) * sin(θ)), h, θ, 0, 6.28319, h, 0, 1) → h
  9. Line((0, 0, 0), (0, 0, 2)) → as
  10. Circle(O, 1, as) → k
  11. Cylinder(k, 1.5) → i_3, i_2, i_3
  12. Segment(A, D) → n
  13. Segment(C, D) → i_1
  14. Midpoint(A, B) → W
  15. CircumcircleArc(F, W, E) → p
  16. Rotate(p, 90°, as) → p'
  17. Rotate(p, -90°, as) → p'_1
  18. Rotate(p, 180°, as) → p'_2
  19. Plane((0, 0, -0.2), (0, 1, -0.2), (2, 2, -0.2)) → j
  20. Intersect(j, p') → J, K
  21. Intersect(j, p) → L, M
  22. CircleArc(N, J, M) → q
  23. Translate(j, Vector[(0, 0, 0.1)]) → j'
  24. Intersect(j', p) → P, Q
  25. Intersect(j', p') → R, S
  26. CircleArc((0, 0, -0.1), Q, R, xOyPlane) → r
  27. Translate(j, Vector[(0, 0, -0.1)]) → j'_1
  28. Intersect(j'_1, p) → T, U
  29. Intersect(j'_1, p') → V, Z
  30. CircleArc((0, 0, -0.3), V, U) → s
  31. Translate(j, Vector[(0, 0, -0.2)]) → j'_2
  32. Intersect(j'_2, p) → A_1, B_1
  33. Intersect(j'_2, p') → C_1, D_1
  34. CircleArc((0, 0, -0.4), C_1, B_1) → t
  35. Translate(j, Vector[(0, 0, -0.3)]) → j'_3
  36. Intersect(j'_3, p) → E_1, F_1
  37. Intersect(j'_3, p') → G_1, H_1
  38. CircleArc((0, 0, -0.5), G_1, F_1) → c_1
  39. Translate(j, Vector[(0, 0, -0.4)]) → j'_4
  40. Intersect(j'_4, p) → I_1, J_1
  41. Intersect(j'_4, p') → K_1, L_1
  42. CircleArc((0, 0, -0.6), K_1, J_1) → d_1
  43. Translate(j, Vector[(0, 0, 0.15)]) → j'_5
  44. Intersect(j'_5, p) → M_1, N_1
  45. Intersect(j'_5, p') → O_1, P_1
  46. CircleArc((0, 0, -0.05), O_1, N_1) → e_1
  47. Sequence(Rotate[r, ((hoe * 90))°, as], hoe, 1, 3) → lijst1
  48. Sequence(Rotate[q, ((hoe * 90))°, as], hoe, 1, 3) → lijst2
  49. Sequence(Rotate[s, ((hoe * 90))°, as], hoe, 1, 3) → lijst3
  50. Sequence(Rotate[t, ((hoe * 90))°, as], hoe, 1, 3) → lijst4
  51. Sequence(Rotate[c_1, ((hoe * 90))°, as], hoe, 1, 3) → lijst5
  52. Sequence(Rotate[d_1, ((hoe * 90))°, as], hoe, 1, 3) → lijst6