Base X Machine Addition: Input-Driven Geometric Construction

Base X Machine Addition: Input-Driven Geometric Construction
Loading the math board and drawing, please wait…
2020-08-10 22:05
This example demonstrates a “Base X Machine” where an input value is transformed into a corresponding geometric configuration, visually conveying an addition/combination relationship. The key math ideas include input-to-geometry mapping (turning numeric choices into geometric objects), construction-based reasoning such as midline and point/segment relationships, and rule-driven variation using conditional logic and randomized selection. From the construction summary, the build relies on GeoGebra commands and objects such as: Join and Polygon to connect points and form polygonal figures; IndexOf and First to locate specific elements within object lists; If to switch constructions depending on conditions; Shuffle and Random to generate different input arrangements that update the diagram; and Textfield to provide user-controlled input. Text labeling (e.g., text1) is used to display intermediate or final quantities. Suitable for high school through early university use in geometry construction, interactive learning, and modeling-style instruction.

GeoGebra Commands & Parameters

  1. Join({x31N, x32N}) → rx3N
  2. Join({x31P, x32P}) → rx3P
  3. Join({x11N, x12N}) → rx1N
  4. Join({x11P, x12P}) → rx1P
  5. Join({x21N, x22N}) → rx2N
  6. Join({x21P, x22P}) → rx2P
  7. Polygon(I_3, J_3, K_3, L_3) → X31, a14, a16, a32, a29
  8. Polygon(L_3, M_3, N_3, K_3) → X21, a1, a27, a28, a3
  9. Polygon(M_3, P_3, O_3, N_3) → X11, a5, a25, a26, a7
  10. Polygon(P_3, Q_3, R_3, O_3) → X01, a9, a17, a24, a10
  11. Polygon(S_3, V_3, U_3, T_3) → X32, a23, a20, a21, a22
  12. Polygon(V_3, W_3, Z_3, U_3) → X22, a11, a19, a18, a12
  13. Polygon(W_3, B_4, A_4, Z_3) → X12, a13, a4, a2, a15
  14. Polygon(B_4, C_4, D_4, A_4) → X02, a31, a6, a8, a30
  15. Polygon(I_3, L_3, U_3, T_3) → Rx3, r11, r10, r9, r7
  16. Polygon(L_3, M_3, Z_3, U_3) → Rx2, r5, r4, r2, r3
  17. Polygon(M_3, P_3, A_4, Z_3) → Rx1, r6, r1, r14, r12
  18. Polygon(P_3, Q_3, D_4, A_4) → Rx0, r16, r15, r13, r8
  19. IndexOf(false, FP) → tmpI
  20. IndexOf(false, FN1) → NDtmpI
  21. First(x31P) → TAtmpI
  22. If(NDtmpI ≟ NDtmpI, true, false) → NDH
  23. If(Length[x31P] - Length[x31N] ≟ Element[Coef1, IndexOf["x^3", Order1]], true, false) → Bx31
  24. If(Length[x21P] - Length[x21N] ≟ Element[Coef1, IndexOf["x^2", Order1]], true, false) → Bx21
  25. If(Length[x11P] - Length[x11N] ≟ Element[Coef1, IndexOf["x", Order1]], true, false) → Bx11
  26. If(Length[x01P] - Length[x01N] ≟ Element[Coef1, IndexOf["", Order1]], true, false) → Bx01
  27. Shuffle({1, 2, 3, 4}) → OrderS, {3, 2, 1, 4}
  28. Random(-5, 5) → L23Co01
  29. Random(-5, 5) → L23Co02
  30. Random(-5, 5) → L23Co32
  31. Random(-5, 5) → L23Co31
  32. Random(-5, 5) → L23Co22
  33. Random(-5, 5) → L23Co21
  34. Random(-5, 5) → L23Co12
  35. Random(-5, 5) → L23Co11
  36. If(Length[x32P] - Length[x32N] ≟ Element[Coef2, IndexOf["x^3", Order2]], true, false) → Bx32
  37. If(Length[x22P] - Length[x22N] ≟ Element[Coef2, IndexOf["x^2", Order2]], true, false) → Bx22
  38. If(Length[x12P] - Length[x12N] ≟ Element[Coef2, IndexOf["x", Order2]], true, false) → Bx12
  39. If(Length[x02P] - Length[x02N] ≟ Element[Coef2, IndexOf["", Order2]], true, false) → Bx02
  40. Join({x01N, x02N}) → rx0N
  41. Join({x01P, x02P}) → rx0P
  42. If(TAPP ≟ true ∧ TANN ≟ true, true, false) → TAPN
  43. First(rx0P) → tmpP
  44. First(rx0N) → tmpN
  45. If(Element[tmpP, 1] ≟ Element[tmpP, 1], true, false) → tP
  46. If(Element[tmpN, 1] ≟ Element[tmpN, 1], true, false) → tN
  47. Textfield(Br3) → Ir3
  48. Textfield(Br2) → Ir2
  49. Textfield(Br1) → Ir1
  50. Textfield(Br0) → Ir0
  51. Random(0, 5) → L1Co01
  52. Random(0, 5) → L1Co02
  53. Random(0, 5) → L1Co11
  54. Random(0, 5) → L1Co12
  55. Random(0, 5) → L1Co21
  56. Random(0, 5) → L1Co22
  57. Random(0, 5) → L1Co31
  58. Random(0, 5) → L1Co32
  59. Random(1, 2) → SignL1
  60. IndexOf(false, FP) → PDtmpI
  61. If(PDtmpI ≟ PDtmpI, true, false) → PDH
  62. If(x12P ≠ {}, true, false) → TAPH
  63. If(x12N ≠ {}, true, false) → TANH

AI Drawing Prompt Reference

Draw a composite figure made of multiple quadrilaterals arranged in two horizontal rows, with four adjacent quadrilaterals in each row. The upper and lower rows share edges, creating a belt-like visual effect. Each quadrilateral contains internal diagonal or connecting lines, and some are shaded or colored differently. On both sides, there are input or control points connected to the inner quadrilaterals via line segments. The construction starts from the left, generating quadrilaterals sequentially to the right, with random values determining some edge lengths or positions, giving the figure a dynamic, variable appearance.
The prompt above was compiled from the original drawing commands and is for reference only.