Henneberg Ellipsoid/Sphere Construction: Curves and Angles

Henneberg Ellipsoid/Sphere Construction: Curves and Angles
Loading the math board and drawing, please wait…
2023-03-15 20:25
In collections geometriadinamica.es
This example demonstrates how to build and visualize a Henneberg-related sphere/ellipsoid geometry in GeoGebra by chaining geometric constraints: it constructs key points on (or associated with) a spherical/ellipsoidal setting, then derives and displays curves, intersections, and angle relationships in a coherent visual construction. The main mathematical ideas include circle and ellipse geometry, orthogonal constructions via perpendicular lines, intersection-driven branching, and curve modeling using Cartesian/parametric-style curve commands; angles between constructed elements are also computed and shown. Construction workflow highlights GeoGebra commands such as Segment, Point, OrthogonalLine, Circle, Intersect, Ellipse, Angle, CurveCartesian, and Sequence. Internally, the construction is organized with multiple named points/parameters (e.g., p, q, P, Q, u, v, Z variants like zz/ZZ) to control the dependency graph, while dedicated objects like zElipse1/zElipse2 and zAngInc manage the ellipse/surface-related curves and the angle visualization. Suitable for high school advanced geometry, undergraduate analytic geometry/solid-geometry visualization, and learning constraint-based geometric modeling using GeoGebra.

GeoGebra Commands & Parameters

  1. Segment(Q3, Q4) → p2
  2. Point(p2) → P3
  3. Segment(P3, Q4) → p4
  4. Point(p4) → P4
  5. Segment(Q1, Q2) → p1
  6. Point(p1) → P1
  7. Segment(P1, Q2) → p3
  8. Point(p3) → P2
  9. OrthogonalLine(C, xAxis) → zz2
  10. Circle(C, 0.62) → zz0
  11. Intersect(zz0, zz2, 1) → ZZ4
  12. Intersect(zz0, zz2, 2) → ZZ3
  13. Ellipse(ZZ3, ZZ4, 0.65) → zElipse2
  14. Point(zElipse2) → Z
  15. Intersect(zElipse2, zz2) → ZZ7, ZZ8
  16. Angle(ZZ8, C, Z) → zAngInc
  17. OrthogonalLine(C, yAxis) → zz1
  18. Intersect(zz0, zz1, 2) → ZZ2
  19. Intersect(zz0, zz1, 1) → ZZ1
  20. Ellipse(ZZ1, ZZ2, 0.65) → zElipse1
  21. Point(zElipse1) → XY
  22. Intersect(zElipse1, zz1) → ZZ5, ZZ6
  23. Angle(ZZ6, C, XY) → zAngRot
  24. Segment(Q5, Q6) → p5
  25. Point(p5) → P5
  26. Segment(ZZ5, ZZ6) → zz4
  27. Segment(ZZ7, ZZ8) → zz3
  28. Intersect(zElipse2, zElipse1, 1) → zPunto1
  29. Intersect(zElipse2, zElipse1, 4) → zPunto2
  30. Segment(zPunto1, zPunto2) → zSeg2
  31. CurveCartesian((r / 4 * (((((2 * sinh(u)) * cos(α)) - ((2 * sinh((3 * u))) * cos((3 * α)) / 3)) * sin(zAngRot)) + ((((2 * sinh(u)) * sin(α)) - ((2 * sinh((3 * u))) * sin((3 * α)) / 3)) * cos(zAngRot)))), (r / 4 * ((((-(((2 * sinh(u)) * cos(α)) - ((2 * sinh((3 * u))) * cos((3 * α)) / 3))) * cos(zAngRot)) * sin(zAngInc)) + (((((2 * sinh(u)) * sin(α)) - ((2 * sinh((3 * u))) * sin((3 * α)) / 3)) * sin(zAngRot)) * sin(zAngInc)) + (((2 * cosh((2 * u))) * cos((2 * α))) * cos(zAngInc)))), u, u1, u2) → curva2
  32. CurveCartesian((r / 4 * (((((2 * sinh(β)) * cos(v)) - ((2 * sinh((3 * β))) * cos((3 * v)) / 3)) * sin(zAngRot)) + ((((2 * sinh(β)) * sin(v)) - ((2 * sinh((3 * β))) * sin((3 * v)) / 3)) * cos(zAngRot)))), (r / 4 * ((((-(((2 * sinh(β)) * cos(v)) - ((2 * sinh((3 * β))) * cos((3 * v)) / 3))) * cos(zAngRot)) * sin(zAngInc)) + (((((2 * sinh(β)) * sin(v)) - ((2 * sinh((3 * β))) * sin((3 * v)) / 3)) * sin(zAngRot)) * sin(zAngInc)) + (((2 * cosh((2 * β))) * cos((2 * v))) * cos(zAngInc)))), v, v1, v2) → a1
  33. CurveCartesian((r / 4 * (((((2 * sinh(0.5)) * cos(v)) - ((2 * sinh(3 / 2)) * cos((3 * v)) / 3)) * sin(zAngRot)) + ((((2 * sinh(0.5)) * sin(v)) - ((2 * sinh(3 / 2)) * sin((3 * v)) / 3)) * cos(zAngRot)))), (r / 4 * ((((-(((2 * sinh(0.5)) * cos(v)) - ((2 * sinh(3 / 2)) * cos((3 * v)) / 3))) * cos(zAngRot)) * sin(zAngInc)) + (((((2 * sinh(0.5)) * sin(v)) - ((2 * sinh(3 / 2)) * sin((3 * v)) / 3)) * sin(zAngRot)) * sin(zAngInc)) + (((2 * cosh(1)) * cos((2 * v))) * cos(zAngInc)))), v, v1, v2) → curva1
  34. Sequence(CurveCartesian[(r / 4 * (((((2 * sinh(u)) * cos(v)) - ((2 * sinh((3 * u))) * cos((3 * v)) / 3)) * sin(zAngRot)) + ((((2 * sinh(u)) * sin(v)) - ((2 * sinh((3 * u))) * sin((3 * v)) / 3)) * cos(zAngRot)))), (r / 4 * ((((-(((2 * sinh(u)) * cos(v)) - ((2 * sinh((3 * u))) * cos((3 * v)) / 3))) * cos(zAngRot)) * sin(zAngInc)) + (((((2 * sinh(u)) * sin(v)) - ((2 * sinh((3 * u))) * sin((3 * v)) / 3)) * sin(zAngRot)) * sin(zAngInc)) + (((2 * cosh((2 * u))) * cos((2 * v))) * cos(zAngInc)))), u, u1, u2], v, v1, v2, paso) → list2
  35. Sequence(CurveCartesian[(r / 4 * (((((2 * sinh(u)) * cos(v)) - ((2 * sinh((3 * u))) * cos((3 * v)) / 3)) * sin(zAngRot)) + ((((2 * sinh(u)) * sin(v)) - ((2 * sinh((3 * u))) * sin((3 * v)) / 3)) * cos(zAngRot)))), (r / 4 * ((((-(((2 * sinh(u)) * cos(v)) - ((2 * sinh((3 * u))) * cos((3 * v)) / 3))) * cos(zAngRot)) * sin(zAngInc)) + (((((2 * sinh(u)) * sin(v)) - ((2 * sinh((3 * u))) * sin((3 * v)) / 3)) * sin(zAngRot)) * sin(zAngInc)) + (((2 * cosh((2 * u))) * cos((2 * v))) * cos(zAngInc)))), v, v1, v2], u, u1, u2, paso) → list1

AI Drawing Prompt Reference

The figure consists of two ellipses and parameterized curves, forming a three-dimensional ellipsoid or sphere geometry construction. It is based on circles and perpendicular lines intersecting circles to generate ellipses, and angle calculations show the angles between elements. Parameterized curves describe the surface shape of the ellipsoid, with ellipses and curves interconnected to form a constrained three-dimensional figure. Overall, it demonstrates geometric constraints and visualization through circles, ellipses, angles, and curve modeling.
The prompt above was compiled from the original drawing commands and is for reference only.