Monsters Distribution

Monsters Distribution
Loading the math board and drawing, please wait…
2018-11-29 08:31
This example demonstrates generating multiple monsters in 3D space and calculating the number of intersections with a specific plane. Core math concepts include Hypothesis Testing, Surfaces, Linear Programming, Limits, and Probability & Statistics. GeoGebra commands and objects used in construction are Intersect, Polygon, Circle, CountIf, Midpoint, Vector, Translate, and If. Suitable for high school and above learners to understand the integration of spatial geometry and probability statistics.

GeoGebra Commands & Parameters

  1. Intersect(xAxis, yAxis) → C_2
  2. Polygon(C_2, C_1, 10) → poly1, f, p, C_{10}, C_{9}, C_8, C_7, C_6, C_5, C_4, C_3, g, h, i, j, k, l, m, n
  3. Circle(C_6, 0.4) → e_6
  4. CountIf(IsInRegion[T, e_6], T, {C_1M3, C_2M3, C_3M3}) → count_{e6}M3
  5. CountIf(IsInRegion[T, e_6], T, {C_1M1, C_2M1, C_3M1, C_4M1}) → count_{e6}M1
  6. CountIf(IsInRegion[T, e_6], T, {C_1M2, C_2M2, C_3M2}) → count_{e6}M2
  7. Circle(C_{10}, 0.4) → e_x
  8. CountIf(IsInRegion[T, e_x], T, {C_1M1, C_2M1, C_3M1, C_4M1}) → count_{ex}M1
  9. CountIf(IsInRegion[T, e_x], T, {C_1M2, C_2M2, C_3M2}) → count_{ex}M2
  10. CountIf(IsInRegion[T, e_x], T, {C_1M3, C_2M3, C_3M3}) → count_{ex}M3
  11. Circle(C_{9}, 0.4) → e_9
  12. CountIf(IsInRegion[T, e_9], T, {C_1M1, C_2M1, C_3M1, C_4M1}) → count_{e9}M1
  13. CountIf(IsInRegion[T, e_9], T, {C_1M3, C_2M3, C_3M3}) → count_{e9}M3
  14. CountIf(IsInRegion[T, e_9], T, {C_1M2, C_2M2, C_3M2}) → count_{e9}M2
  15. Circle(C_8, 0.4) → e_8
  16. CountIf(IsInRegion[T, e_8], T, {C_1M1, C_2M1, C_3M1, C_4M1}) → count_{e8}M1
  17. CountIf(IsInRegion[T, e_8], T, {C_1M3, C_2M3, C_3M3}) → count_{e8}M3
  18. CountIf(IsInRegion[T, e_8], T, {C_1M2, C_2M2, C_3M2}) → count_{e8}M2
  19. Circle(C_3, 0.4) → e_3
  20. CountIf(IsInRegion[T, e_3], T, {C_1M1, C_2M1, C_3M1, C_4M1}) → count_{e3}M1
  21. CountIf(IsInRegion[T, e_3], T, {C_1M3, C_2M3, C_3M3}) → count_{e3}M3
  22. CountIf(IsInRegion[T, e_3], T, {C_1M2, C_2M2, C_3M2}) → count_{e3}M2
  23. Circle(C_4, 0.4) → e_4
  24. CountIf(IsInRegion[T, e_4], T, {C_1M1, C_2M1, C_3M1, C_4M1}) → count_{e4}M1
  25. CountIf(IsInRegion[T, e_4], T, {C_1M3, C_2M3, C_3M3}) → count_{e4}M3
  26. CountIf(IsInRegion[T, e_4], T, {C_1M2, C_2M2, C_3M2}) → count_{e4}M2
  27. Circle(C_5, 0.4) → e_5
  28. CountIf(IsInRegion[T, e_5], T, {C_1M1, C_2M1, C_3M1, C_4M1}) → count_{e5}M1
  29. CountIf(IsInRegion[T, e_5], T, {C_1M3, C_2M3, C_3M3}) → count_{e5}M3
  30. CountIf(IsInRegion[T, e_5], T, {C_1M2, C_2M2, C_3M2}) → count_{e5}M2
  31. Circle(C_7, 0.4) → e_7
  32. CountIf(IsInRegion[T, e_7], T, {C_1M1, C_2M1, C_3M1, C_4M1}) → count_{e7}M1
  33. CountIf(IsInRegion[T, e_7], T, {C_1M3, C_2M3, C_3M3}) → count_{e7}M3
  34. CountIf(IsInRegion[T, e_7], T, {C_1M2, C_2M2, C_3M2}) → count_{e7}M2
  35. Circle(C_2, 0.4) → e_2
  36. CountIf(IsInRegion[T, e_2], T, {C_1M1, C_2M1, C_3M1, C_4M1}) → count_{e2}M1
  37. CountIf(IsInRegion[T, e_2], T, {C_1M2, C_2M2, C_3M2}) → count_{e2}M2
  38. CountIf(IsInRegion[T, e_2], T, {C_1M3, C_2M3, C_3M3}) → count_{e2}M3
  39. Circle(C_1, 0.4) → e_1
  40. CountIf(IsInRegion[T, e_1], T, {C_1M2, C_2M2, C_3M2}) → count_{e1}M2
  41. CountIf(IsInRegion[T, e_1], T, {C_1M3, C_2M3, C_3M3}) → count_{e1}M3
  42. CountIf(IsInRegion[T, e_1], T, {C_1M1, C_2M1, C_3M1, C_4M1}) → count_{e1}M1
  43. Circle(C_1, 1.5) → c_1
  44. Circle(C_2, 1.5) → c_2
  45. Circle(C_3, 1.5) → c_3
  46. Circle(C_4, 1.5) → c_4
  47. Circle(C_5, 1.5) → c_5
  48. Circle(C_6, 1.5) → c_6
  49. Circle(C_7, 1.5) → c_7
  50. Circle(C_8, 1.5) → c_8
  51. Circle(C_{9}, 1.5) → c_9
  52. Circle(C_{10}, 1.5) → c_{10}
  53. Circle(C_5, 1.5) → d_5
  54. Circle(C_6, 1.5) → d_6
  55. Circle(C_7, 1.5) → d_7
  56. Circle(C_8, 1.5) → d_8
  57. Circle(C_{9}, 1.5) → d_9
  58. Circle(C_{10}, 1.5) → d_{10}
  59. Circle(C_1, 1.5) → d_1
  60. Circle(C_2, 1.5) → d_2
  61. Circle(C_3, 1.5) → d_3
  62. Circle(C_4, 1.5) → d_4
  63. Polygon(Q_1, Q_2, 4) → poly2, q, r, s, t, Q_3, Q_4
  64. Midpoint(Q_4, Q_2) → Q_0
  65. Vector(Q_0, Q_1) → u
  66. Translate(C_2, u) → A_2
  67. Translate(C_3, u) → A_3
  68. Translate(C_4, u) → A_4
  69. Translate(C_5, u) → A_5
  70. Translate(C_6, u) → A_6
  71. Translate(C_7, u) → A_7
  72. Translate(C_8, u) → A_8
  73. Translate(C_{9}, u) → A_9
  74. Translate(C_{10}, u) → A_{10}
  75. Translate(C_1, u) → A_1
  76. If(count_{e1}M1 ≟ 1 ∧ count_{e1}M2 ≟ 0 ∧ count_{e1}M3 ≟ 0, 1, If[count_{e1}M1 ≟ 0 ∧ count_{e1}M2 ≟ 1 ∧ count_{e1}M3 ≟ 0, 2, If[count_{e1}M1 ≟ 0 ∧ count_{e1}M2 ≟ 0 ∧ count_{e1}M3 ≟ 1, 3, 0]]) → n_1
  77. If(count_{e2}M1 ≟ 1 ∧ count_{e2}M2 ≟ 0 ∧ count_{e2}M3 ≟ 0, 1, If[count_{e2}M1 ≟ 0 ∧ count_{e2}M2 ≟ 1 ∧ count_{e2}M3 ≟ 0, 2, If[count_{e2}M1 ≟ 0 ∧ count_{e2}M2 ≟ 0 ∧ count_{e2}M3 ≟ 1, 3, 0]]) → n_2
  78. If(count_{e3}M1 ≟ 1 ∧ count_{e3}M2 ≟ 0 ∧ count_{e3}M3 ≟ 0, 1, If[count_{e3}M1 ≟ 0 ∧ count_{e3}M2 ≟ 1 ∧ count_{e3}M3 ≟ 0, 2, If[count_{e3}M1 ≟ 0 ∧ count_{e3}M2 ≟ 0 ∧ count_{e3}M3 ≟ 1, 3, 0]]) → n_3
  79. If(count_{e4}M1 ≟ 1 ∧ count_{e4}M2 ≟ 0 ∧ count_{e4}M3 ≟ 0, 1, If[count_{e4}M1 ≟ 0 ∧ count_{e4}M2 ≟ 1 ∧ count_{e4}M3 ≟ 0, 2, If[count_{e4}M1 ≟ 0 ∧ count_{e4}M2 ≟ 0 ∧ count_{e4}M3 ≟ 1, 3, 0]]) → n_4
  80. If(count_{e5}M1 ≟ 1 ∧ count_{e5}M2 ≟ 0 ∧ count_{e5}M3 ≟ 0, 1, If[count_{e5}M1 ≟ 0 ∧ count_{e5}M2 ≟ 1 ∧ count_{e5}M3 ≟ 0, 2, If[count_{e5}M1 ≟ 0 ∧ count_{e5}M2 ≟ 0 ∧ count_{e5}M3 ≟ 1, 3, 0]]) → n_5
  81. If(count_{e6}M1 ≟ 1 ∧ count_{e6}M2 ≟ 0 ∧ count_{e6}M3 ≟ 0, 1, If[count_{e6}M1 ≟ 0 ∧ count_{e6}M2 ≟ 1 ∧ count_{e6}M3 ≟ 0, 2, If[count_{e6}M1 ≟ 0 ∧ count_{e6}M2 ≟ 0 ∧ count_{e6}M3 ≟ 1, 3, 0]]) → n_6
  82. If(count_{e7}M1 ≟ 1 ∧ count_{e7}M2 ≟ 0 ∧ count_{e7}M3 ≟ 0, 1, If[count_{e7}M1 ≟ 0 ∧ count_{e7}M2 ≟ 1 ∧ count_{e7}M3 ≟ 0, 2, If[count_{e7}M1 ≟ 0 ∧ count_{e7}M2 ≟ 0 ∧ count_{e7}M3 ≟ 1, 3, 0]]) → n_7
  83. If(count_{e8}M1 ≟ 1 ∧ count_{e8}M2 ≟ 0 ∧ count_{e8}M3 ≟ 0, 1, If[count_{e8}M1 ≟ 0 ∧ count_{e8}M2 ≟ 1 ∧ count_{e8}M3 ≟ 0, 2, If[count_{e8}M1 ≟ 0 ∧ count_{e8}M2 ≟ 0 ∧ count_{e8}M3 ≟ 1, 3, 0]]) → n_8
  84. If(count_{e9}M1 ≟ 1 ∧ count_{e9}M2 ≟ 0 ∧ count_{e9}M3 ≟ 0, 1, If[count_{e9}M1 ≟ 0 ∧ count_{e9}M2 ≟ 1 ∧ count_{e9}M3 ≟ 0, 2, If[count_{e9}M1 ≟ 0 ∧ count_{e9}M2 ≟ 0 ∧ count_{e9}M3 ≟ 1, 3, 0]]) → n_9
  85. If(count_{ex}M1 ≟ 1 ∧ count_{ex}M2 ≟ 0 ∧ count_{ex}M3 ≟ 0, 1, If[count_{ex}M1 ≟ 0 ∧ count_{ex}M2 ≟ 1 ∧ count_{ex}M3 ≟ 0, 2, If[count_{ex}M1 ≟ 0 ∧ count_{ex}M2 ≟ 0 ∧ count_{ex}M3 ≟ 1, 3, 0]]) → n_{10}
  86. CountIf(T ≟ 1, T, alln) → contandoM_1
  87. CountIf(T ≟ 2, T, alln) → contandoM_2
  88. CountIf(T ≟ 3, T, alln) → contandoM_3
  89. Translate(C_1M1, w) → C_1M1'
  90. Translate(C_1M1', v) → C_1M1''
  91. Circle(C_1M1, 1.2) → c_{1M1}
  92. Translate(C_2M1, w) → C_2M1'
  93. Translate(C_2M1', v) → C_2M1''
  94. Circle(C_2M1, 1.2) → c_{2M1}
  95. Translate(C_3M1, w) → C_3M1'
  96. Translate(C_4M1, w) → C_4M1'
  97. Translate(C_3M1', v) → C_3M1''
  98. Translate(C_4M1', v) → C_4M1''
  99. Circle(C_3M1, 1.2) → c_{3M1}
  100. Circle(C_4M1, 1.2) → c_{4M1}
  101. Translate(C_1M2, w) → C_1M2'
  102. Translate(C_2M2, w) → C_2M2'
  103. Translate(C_3M2, w) → C_3M2'
  104. Translate(C_1M2', v) → C_1M2''
  105. Translate(C_2M2', v) → C_2M2''
  106. Translate(C_3M2', v) → C_3M2''
  107. Circle(C_1M2, 1.2) → c_{1M2}
  108. Circle(C_2M2, 1.2) → c_{2M2}
  109. Circle(C_3M2, 1.2) → c_{3M2}
  110. Translate(C_1M3, w) → C_1M3'
  111. Translate(C_2M3, w) → C_2M3'
  112. Translate(C_3M3, w) → C_3M3'
  113. Translate(C_1M3', v) → C_1M3''
  114. Translate(C_2M3', v) → C_2M3''
  115. Translate(C_3M3', v) → C_3M3''
  116. Circle(C_1M3, 1.2) → c_{1M3}
  117. Circle(C_2M3, 1.2) → c_{2M3}
  118. Circle(C_3M3, 1.2) → c_{3M3}
  119. If(n_1 ≠ 0 ∧ n_2 ≠ 0 ∧ n_3 ≠ 0 ∧ n_4 ≠ 0 ∧ n_5 ≠ 0 ∧ n_6 ≠ 0 ∧ n_7 ≠ 0 ∧ n_8 ≠ 0 ∧ n_9 ≠ 0 ∧ n_{10} ≠ 0, 1, 0) → all_nnull