Self-Dual Tetrahedron

Self-Dual Tetrahedron
Loading the math board and drawing, please wait…
2023-03-14 00:34
In collections geometriadinamica.es
This example illustrates the self-dual property of a tetrahedron. It involves the properties of triangles and parametric equations. Using GeoGebra commands such as OrthogonalLine, Circle, and Intersect, the dual image of the tetrahedron can be constructed. Suitable for high school geometry learners and math enthusiasts.

GeoGebra Commands & Parameters

  1. OrthogonalLine(C, xAxis) → e
  2. Circle(C, 9.5) → d
  3. Intersect(d, e, 2) → H
  4. Point(d) → G
  5. Angle(G, C, H) → ang
  6. If(t < 3, (abs(sgn(t)) * (sgn(t) - 1) / -2), Min[t - 3, 1]) → t4
  7. If(t < 2, 0, Min[t - 2, 1]) → t3
  8. If(t < 1, (abs(sgn(t)) * (sgn(t) - 1) / -2), Min[t - 1, 1]) → t2
  9. Ellipse(O_r - (0, 0.95), O_r + (0, 0.95), 1) → mira2
  10. Point(mira2) → B
  11. Ellipse(O_r - (0.95, 0), O_r + (0.95, 0), 1) → mira1
  12. Point(mira1) → A
  13. punto3d(A, B, M, O_0, O_r, -1, 1, 1, U, L) → V3
  14. punto3d(A, B, M, O_0, O_r, 1, 1, -1, U, L) → V1
  15. punto3d(A, B, M, O_0, O_r, -1, -1, -1, U, L) → V4
  16. Baricentro1(V1, V4, V3) → C4
  17. punto3d(A, B, M, O_0, O_r, 1, -1, 1, U, L) → V2
  18. Baricentro1(V1, V2, V4) → C2
  19. Midpoint(C2, C4) → S6
  20. Baricentro1(V1, V2, V3) → C1
  21. Midpoint(C1, C4) → S3
  22. Midpoint(C1, C2) → S4
  23. Baricentro1(S4, S3, S6) → S346
  24. If(t5 < 4, 0, t5 - 4) → t6
  25. Midpoint(V1, V4) → octV6'
  26. Midpoint(V1, V2) → octV1'
  27. Midpoint(V1, V3) → octV2'
  28. Midpoint(V4, V3) → octV3'
  29. Midpoint(V2, V4) → octV4'
  30. Midpoint(V2, V3) → octV5'
  31. If(t < 0, t + 5, t) → t5'
  32. If(t > 2, 2, 1) → t32
  33. If(t < 1, 0, If[t > 2, 3 - t, t - 1]) → t2'
  34. If(t > 2, (t2' - 1) / 2, 0) → t31
  35. Intersect(mira1, mira2) → Mira1, Mira2, Mira3, Mira4
  36. Angle(M, O_r, B) → θ
  37. Angle(U, O_r, A) → φ
  38. Vector(O_r, O_0) → u
  39. Translate(Xr, u) → X0
  40. Translate(Zr, u) → Z0
  41. Translate(Yr, u) → Y0
  42. Vector(O_0, Z0) → v
  43. Vector(O_0, Y0) → w
  44. Vector(O_0, X0) → z
  45. Circle(O_0, L) → c
  46. Line(O_0, Y0) → a
  47. Line(O_0, yAxis) → b
  48. Line(O_0, X0) → g
  49. Line(Z0, O_0) → j
  50. Translate(P1r, u) → P1
  51. Segment(Mira3, Mira2) → k
  52. Segment((-1, 0), U) → l
  53. Segment((0, -1), M) → m
  54. If(t1 > 0 ∧ t2 ≟ 0, true, false) → ver1
  55. If(t > 1 ∧ t ≤ 2, true, false) → ver2
  56. If(t3 > 0 ∧ t3 ≤ 1 ∧ t4 ≟ 0, true, false) → ver3
  57. If(t4 > 0 ∧ t6 ≟ 0, true, false) → ver4
  58. If(t6 > 0, true, false) → ver5
  59. Intersect(d, e, 2) → E
  60. Intersect(d, e, 1) → F
  61. Rotate(H, 324°, C) → I
  62. Rotate(H, 252°, C) → J
  63. Rotate(H, 108°, C) → K
  64. Rotate(H, 36°, C) → N
  65. Rotate(H, 210°, C) → O
  66. Rotate(H, 132°, C) → P
  67. Rotate(H, 64.5°, C) → Q
  68. Rotate(H, 277.00000000000006°, C) → R
  69. Angle(I, C, H) → α
  70. Angle(J, C, H) → β
  71. Angle(H, C, K) → γ
  72. Angle(H, C, N) → δ
  73. Angle(O, C, H) → ε
  74. Angle(P, C, H) → ζ
  75. Angle(Q, C, H) → η
  76. Angle(R, C, H) → ι
  77. OrthogonalLine(C, yAxis) → h
  78. CircleArc(C, N, I) → f
  79. CircleArc(C, I, N) → p
  80. Baricentro(V2c, V2b, V3c, V3b, V1b, V1c) → H4
  81. Midpoint(V2, V3) → A1
  82. Baricentro(V2a, V2c, V1c, V1a, V4a, V4b) → H1
  83. Baricentro(V3a, V3c, V2b, V2a, V4b, V4c) → H2
  84. Baricentro(V1a, V1b, V3b, V3a, V4c, V4a) → H3
  85. Midpoint(V1, V4) → A2
  86. Midpoint(V1, V2) → A3
  87. Midpoint(V1, V3) → A4
  88. Midpoint(V2, V4) → A5
  89. Midpoint(V4, V3) → A6
  90. Baricentro1(A2, A4, A3) → B1
  91. Baricentro1(A1, A3, A5) → B2
  92. Baricentro1(A4, A6, A1) → B3
  93. Baricentro1(A1, A3, A4) → B4
  94. Baricentro1(A5, A6, A1) → B5
  95. Baricentro1(A5, A6, A2) → B6
  96. Baricentro1(A3, A5, A2) → B7
  97. Baricentro1(A6, A4, A2) → B8
  98. Baricentro(B8c, B5c, B5b, B7c, B7a, B8a) → HE1
  99. Baricentro(B4a, B5a, B5b, B7c, B7b, B4b) → HE2
  100. Baricentro(B7b, B4b, B4c, B8b, B8a, B7a) → HE3
  101. Baricentro(B8b, B8c, B5c, B5a, B4a, B4c) → HE4
  102. Baricentro1(V2, V3, V4) → C3
  103. Baricentro(C1c, C3c, C4c, C1b, C3a, C4a) → HEX1
  104. Baricentro(C2a, C4a, C1c, C2c, C4b, C3b) → HEX2
  105. Baricentro(C1a, C3b, C2a, C2b, C3a, C1b) → HEX3
  106. Baricentro(C4c, C2b, C3c, C2c, C4b, C3b) → HEX4
  107. Midpoint(C1, C3) → S1
  108. Midpoint(C3, C4) → S2
  109. Midpoint(C2, C3) → S5
  110. Baricentro1(S5, S1, S4) → S145
  111. Baricentro1(S5, S2, S6) → S256
  112. Baricentro1(S1, S2, S3) → S123
  113. Baricentro(P2b, P2a, P1a, P1c, P3a, P3b) → HEXA1
  114. Baricentro(P4c, P3c, P3b, P2b, P2c, P4b) → HEXA2
  115. Baricentro(P4a, P1b, P1c, P3a, P3c, P4c) → HEXA3
  116. Baricentro(P4b, P4a, P1b, P1a, P2a, P2c) → HEXA4
  117. Angle(V4a, H1, V1a) → angH1
  118. Angle(V4b, H2, V2a) → angH2
  119. Angle(V3b, H3, V1b) → angH3
  120. Angle(V1b, H4, V3b) → angH4
  121. Angle(V1a, V1c, V1b) → angV1
  122. Angle(V2c, V2a, V2b) → angV2
  123. Angle(V3c, V3a, V3b) → angV3
  124. Angle(V4a, V4c, V4b) → angV4
  125. Angle(B4c, B4b, B4a) → angTR1
  126. Angle(B7a, B7c, B7b) → angTR2
  127. Angle(B8c, B8a, B8b) → angTR3
  128. Angle(B5a, B5b, B5c) → angTR4
  129. Angle(B7a, HE1, B7c) → angHE1
  130. Angle(B4b, HE2, B4a) → angHE2
  131. Angle(B4c, HE3, B4b) → angHE3
  132. Angle(B8c, HE4, B5c) → angHE4
  133. Angle(C3c, HEX1, C4c) → angHEX1
  134. Angle(C4b, HEX2, C2c) → angHEX2
  135. Angle(C1a, HEX3, C2a) → angHEX3
  136. Angle(C2c, HEX4, C4b) → angHEX4
  137. Angle(C4a, C2a, C3a) → angTRI1
  138. Angle(C4b, C3b, C1a) → angTRI2
  139. Angle(C2c, C1c, C3c) → angTRI3
  140. Angle(C2b, C4c, C1b) → angTRI4
  141. Angle(P3b, HEXA1, P3a) → angHEXA1
  142. Angle(P2b, HEXA2, P2c) → angHEXA2
  143. Angle(P1b, HEXA3, P1c) → angHEXA3
  144. Angle(P1a, HEXA4, P1b) → angHEXA4
  145. Angle(P2b, P2c, P2a) → angTRIA1
  146. Angle(P1b, P1c, P1a) → angTRIA2
  147. Angle(P3a, P3c, P3b) → angTRIA3
  148. Angle(P4a, P4b, P4c) → angTRIA4
  149. Angle(Q2, Q1, Q4) → angPL1
  150. Angle(Q3, Q1, Q2) → angPL2
  151. Angle(Q3, Q4, Q1) → angPL3
  152. Angle(Q2, Q4, Q3) → angPL4
  153. Segment(V4, V3) → v34'
  154. Segment(V2, V1) → v12'
  155. Segment(V1, V3) → v13'
  156. Segment(V4, V1) → v14'
  157. Segment(V2, V4) → v24'
  158. Segment(V2, V3) → v23'
  159. Polygon(B8a, B8c, B5c, B5b, B7c, B7a) → he1, tr3he1', he14', tr4he1', he12', tr2he1', he13'
  160. Polygon(B4a, B5a, B5b, B7c, B7b, B4b) → he2, he24, tr4he2', he12, tr2he2', he23, tr1he2'
  161. Polygon(B7a, B8a, B8b, B4c, B4b, B7b) → he3, he13, tr3he3', he34', tr1he3', he23', tr2he3'
  162. Polygon(B8b, B8c, B5c, B5a, B4a, B4c) → he4, tr3he4', he14, tr4he4', he24', tr1he4', he34
  163. Polygon(C2a, C3a, C4a) → tri1, tri1hex3, tri1hex1, tri1hex2
  164. Polygon(C3b, C1a, C4b) → tri2, tri2hex3, tri2hex2, tri2hex4
  165. Polygon(C2c, C1c, C3c) → tri3, tri3hex2, tri3hex1, tri3hex4
  166. Polygon(C2b, C1b, C4c) → tri4, tri4hex3, tri4hex1, tri4hex4
  167. Polygon(C1c, C3c, C4c, C1b, C3a, C4a) → hex1, tri3hex1', hex14', tri4hex1', hex13', tri1hex1', hex12'
  168. Polygon(C2a, C1a, C4b, C2c, C1c, C4a) → hex2, hex23, tri2hex2', hex24', tri3hex2', hex12, tri1hex2'
  169. Polygon(C1b, C3a, C2a, C1a, C3b, C2b) → hex3, hex13, tri1hex3', hex23', tri2hex3', hex34', tri4hex3'
  170. Polygon(C2b, C3b, C4b, C2c, C3c, C4c) → hex4, hex34, tri2hex4', hex24, tri3hex4', hex14, tri4hex4'
  171. Polygon(P2b, P2a, P2c) → tria1, tria11, tria14, tria12
  172. Polygon(P1c, P1a, P1b) → tria2, tria21, tria24, tria23
  173. Polygon(P3b, P3c, P3a) → tria3, tria32, tria33, tria31
  174. Polygon(P4c, P4b, P4a) → tria4, tria42, tria44, tria43
  175. Polygon(P1a, P1c, P3a, P3b, P2b, P2a) → hexa1, tria21', hexa13, tria31', hexa12, tria11', hexa14
  176. Polygon(P3c, P4c, P4b, P2c, P2b, P3b) → hexa2, hexa23, tria42', hexa24, tria12', hexa12', tria32'
  177. Polygon(P3c, P3a, P1c, P1b, P4a, P4c) → hexa3, tria33', hexa13', tria23', hexa34', tria43', hexa23'
  178. Polygon(P4a, P4b, P2c, P2a, P1a, P1b) → hexa4, tria44', hexa24', tria14', hexa14', tria24', hexa34
  179. Polygon(Q2, Q4, Q1) → poly1, q14, q13, q12
  180. Polygon(Q2, Q3, Q1) → poly2, q24, q23, q12'
  181. Polygon(Q4, Q3, Q1) → poly3, q34, q23', q13'
  182. Polygon(Q2, Q3, Q4) → poly4, q24', q34', q14'
  183. Segment(V2, V1) → v12
  184. Segment(V1, V3) → v13
  185. Segment(V4, V1) → v14
  186. Segment(V2, V3) → v23
  187. Segment(V2, V4) → v24
  188. Segment(V4, V3) → v34
  189. Polygon(V1c, V2c, V2a, V4b, V4a, V1a) → h1, a14, a1t2', a12, a1t4', a13, a1t1'
  190. Polygon(V2a, V2b, V3c, V3a, V4c, V4b) → h2, a2t2', a24, a2t3', a23, a2t4', a12'
  191. Polygon(V1b, V3b, V3a, V4c, V4a, V1a) → h3, a43, a3t3', a23', a3t4', a13', a3t1'
  192. Polygon(V2c, V2b, V3c, V3b, V1b, V1c) → h4, a4t2', a24', a4t3', a43', a4t1', a14'
  193. Polygon(V2c, V2a, V2b) → t02, a1t2, a2t2, a4t2
  194. Polygon(V1a, V1b, V1c) → t01, a3t1, a4t1, a1t1
  195. Polygon(V4a, V4b, V4c) → t04, a1t4, a2t4, a3t4
  196. Polygon(V3a, V3b, V3c) → t03, a3t3, a4t3, a2t3
  197. Polygon(B4b, B4a, B4c) → tr1, tr1he2, tr1he4, tr1he3
  198. Polygon(B5b, B5a, B5c) → t4', tr4he2, tr4he4, tr4he1
  199. Polygon(B7b, B7c, B7a) → tr2, tr2he2, tr2he1, tr2he3
  200. Polygon(B8a, B8c, B8b) → tr3, tr3he1, tr3he4, tr3he3
  201. Segment(B5, B7) → i
  202. Segment(B5, B8) → n
  203. Segment(B5, B4) → q
  204. Segment(B7, B4) → r
  205. Segment(B4, B8) → s
  206. Segment(B8, B7) → a1
  207. Angle(V2, V1, V4) → ang1
  208. Angle(V2, V3, V1) → ang2
  209. Angle(V4, V1, V3) → ang3
  210. Angle(V2, V4, V3) → ang4
  211. Angle(H, O_0, G) → κ

AI Drawing Prompt Reference

Construct a self-dual tetrahedron in three-dimensional space. Begin by defining coordinate axes with the origin as center, and create a large auxiliary circle. Select two moving points on this circle to serve as control parameters. Using these points, construct two perpendicular ellipses and take points on them as additional controls. Generate four vertices through a custom 3D point function, then connect these vertices to form the six edges of a tetrahedron. Further construct the centroids of each face and the midpoints of each edge, then find the centroid of these midpoints. Finally, display the coordinate axes, auxiliary circle, both ellipses, and all vertices and edges of the tetrahedron to illustrate the self-dual relationship.
The prompt above was compiled from the original drawing commands and is for reference only.