球面 Voronoi 图:可拖拽点的范区划分

球面 Voronoi 图:可拖拽点的范区划分
几何画板及绘图内容加载中,请稍等……
2021-01-14 16:55
该范例演示如何在球面上用一组可拖拽点生成 Voronoi 图,从而观察每个点对应的“最近区域”随点移动而实时变化。核心数学概念包括球面几何、Voronoi 划分(最近点/支配区域)、球面上的距离分区,以及与单位圆/反射等相关的几何直观(图中可体现分割边界与对称结构)。作图要点:利用 GeoGebra 的 Sequence 生成点集合,并通过 Zip 将若干对象批量封装;先构造 Sphere(球体)与 PointIn(在球面/空间中取点/筛选点);再用 Midpoint 计算中点或用于构造分割边界的辅助几何量;相关对象如 N(点数)、M、Lm、O(原点/参考点)、Pname/PMname(点命名)、Cols/colP(颜色管理)以及一系列 C1…C29(分界/区域相关对象)支撑整个球面 Voronoi 的生成与更新。适合高中到大学的几何建模与可视化教学,也可用于计算几何、空间数据分析的入门演示与课堂实验。

GeoGebra 命令及参数

  1. Sequence(1, M) → Lm
  2. Zip("sphere" + (Text[m]), m, Lm) → Sname
  3. Zip("C" + (Text[m]), m, Lm) → Pname
  4. Zip("M" + (Text[m]), m, Lm) → PMname
  5. Zip(random(), k, Lm) → Cols
  6. Sphere(O, 1) → s
  7. PointIn(s) → C1
  8. PointIn(s) → C2
  9. PointIn(s) → C3
  10. PointIn(s) → C4
  11. PointIn(s) → C5
  12. PointIn(s) → C6
  13. PointIn(s) → C7
  14. PointIn(s) → C8
  15. PointIn(s) → C9
  16. PointIn(s) → C10
  17. PointIn(s) → C11
  18. PointIn(s) → C12
  19. PointIn(s) → C13
  20. PointIn(s) → C14
  21. PointIn(s) → C15
  22. PointIn(s) → C16
  23. PointIn(s) → C17
  24. PointIn(s) → C18
  25. PointIn(s) → C19
  26. PointIn(s) → C20
  27. PointIn(s) → C21
  28. PointIn(s) → C22
  29. PointIn(s) → C23
  30. PointIn(s) → C24
  31. PointIn(s) → C25
  32. PointIn(s) → C26
  33. PointIn(s) → C27
  34. PointIn(s) → C28
  35. PointIn(s) → C29
  36. PointIn(s) → C30
  37. PointIn(s) → C31
  38. PointIn(s) → C32
  39. PointIn(s) → C33
  40. PointIn(s) → C34
  41. PointIn(s) → C35
  42. PointIn(s) → C36
  43. PointIn(s) → C37
  44. PointIn(s) → C38
  45. PointIn(s) → C39
  46. PointIn(s) → C40
  47. PointIn(s) → C41
  48. PointIn(s) → C42
  49. PointIn(s) → C43
  50. PointIn(s) → C44
  51. PointIn(s) → C45
  52. PointIn(s) → C46
  53. PointIn(s) → C47
  54. PointIn(s) → C48
  55. PointIn(s) → C49
  56. PointIn(s) → C50
  57. Midpoint(C1, O) → M1
  58. Midpoint(C2, O) → M2
  59. Midpoint(C3, O) → M3
  60. Midpoint(C4, O) → M4
  61. Midpoint(C5, O) → M5
  62. Midpoint(C6, O) → M6
  63. Midpoint(C7, O) → M7
  64. Midpoint(C8, O) → M8
  65. Midpoint(C9, O) → M9
  66. Midpoint(C10, O) → M10
  67. Midpoint(C11, O) → M11
  68. Midpoint(C12, O) → M12
  69. Midpoint(C13, O) → M13
  70. Midpoint(C14, O) → M14
  71. Midpoint(C15, O) → M15
  72. Midpoint(C16, O) → M16
  73. Midpoint(C17, O) → M17
  74. Midpoint(C18, O) → M18
  75. Midpoint(C19, O) → M19
  76. Midpoint(C20, O) → M20
  77. Midpoint(C21, O) → M21
  78. Midpoint(C22, O) → M22
  79. Midpoint(C23, O) → M23
  80. Midpoint(C24, O) → M24
  81. Midpoint(C25, O) → M25
  82. Midpoint(C26, O) → M26
  83. Midpoint(C27, O) → M27
  84. Midpoint(C28, O) → M28
  85. Midpoint(C29, O) → M29
  86. Midpoint(C30, O) → M30
  87. Midpoint(C31, O) → M31
  88. Midpoint(C32, O) → M32
  89. Midpoint(C33, O) → M33
  90. Midpoint(C34, O) → M34
  91. Midpoint(C35, O) → M35
  92. Midpoint(C36, O) → M36
  93. Midpoint(C37, O) → M37
  94. Midpoint(C38, O) → M38
  95. Midpoint(C39, O) → M39
  96. Midpoint(C40, O) → M40
  97. Midpoint(C41, O) → M41
  98. Midpoint(C42, O) → M42
  99. Midpoint(C43, O) → M43
  100. Midpoint(C44, O) → M44
  101. Midpoint(C45, O) → M45
  102. Midpoint(C46, O) → M46
  103. Midpoint(C47, O) → M47
  104. Midpoint(C48, O) → M48
  105. Midpoint(C49, O) → M49
  106. Midpoint(C50, O) → M50
  107. Sphere(M1, 1 / 2) → sphere1
  108. Sphere(M2, 1 / 2) → sphere2
  109. Sphere(M3, 1 / 2) → sphere3
  110. Sphere(M4, 1 / 2) → sphere4
  111. Sphere(M5, 1 / 2) → sphere5
  112. Sphere(M6, 1 / 2) → sphere6
  113. Sphere(M7, 1 / 2) → sphere7
  114. Sphere(M8, 1 / 2) → sphere8
  115. Sphere(M9, 1 / 2) → sphere9
  116. Sphere(M10, 1 / 2) → sphere10
  117. Sphere(M11, 1 / 2) → sphere11
  118. Sphere(M12, 1 / 2) → sphere12
  119. Sphere(M13, 1 / 2) → sphere13
  120. Sphere(M14, 1 / 2) → sphere14
  121. Sphere(M15, 1 / 2) → sphere15
  122. Sphere(M16, 1 / 2) → sphere16
  123. Sphere(M17, 1 / 2) → sphere17
  124. Sphere(M18, 1 / 2) → sphere18
  125. Sphere(M19, 1 / 2) → sphere19
  126. Sphere(M20, 1 / 2) → sphere20
  127. Sphere(M21, 1 / 2) → sphere21
  128. Sphere(M22, 1 / 2) → sphere22
  129. Sphere(M23, 1 / 2) → sphere23
  130. Sphere(M24, 1 / 2) → sphere24
  131. Sphere(M25, 1 / 2) → sphere25
  132. Sphere(M26, 1 / 2) → sphere26
  133. Sphere(M27, 1 / 2) → sphere27
  134. Sphere(M28, 1 / 2) → sphere28
  135. Sphere(M29, 1 / 2) → sphere29
  136. Sphere(M30, 1 / 2) → sphere30
  137. Sphere(M31, 1 / 2) → sphere31
  138. Sphere(M32, 1 / 2) → sphere32
  139. Sphere(M33, 1 / 2) → sphere33
  140. Sphere(M34, 1 / 2) → sphere34
  141. Sphere(M35, 1 / 2) → sphere35
  142. Sphere(M36, 1 / 2) → sphere36
  143. Sphere(M37, 1 / 2) → sphere37
  144. Sphere(M38, 1 / 2) → sphere38
  145. Sphere(M39, 1 / 2) → sphere39
  146. Sphere(M40, 1 / 2) → sphere40
  147. Sphere(M41, 1 / 2) → sphere41
  148. Sphere(M42, 1 / 2) → sphere42
  149. Sphere(M43, 1 / 2) → sphere43
  150. Sphere(M44, 1 / 2) → sphere44
  151. Sphere(M45, 1 / 2) → sphere45
  152. Sphere(M46, 1 / 2) → sphere46
  153. Sphere(M47, 1 / 2) → sphere47
  154. Sphere(M48, 1 / 2) → sphere48
  155. Sphere(M49, 1 / 2) → sphere49
  156. Sphere(M50, 1 / 2) → sphere50
  157. Zip((sin((π * random())) * cos(((2 * π) * random()))), k, Lm) → Lx
  158. Zip((sin((π * random())) * sin(((2 * π) * random()))), k, Lm) → Ly
  159. Zip(cos((π * random())), k, Lm) → Lz
  160. PointIn(s) → C51
  161. PointIn(s) → C52
  162. PointIn(s) → C53
  163. PointIn(s) → C54
  164. PointIn(s) → C55
  165. PointIn(s) → C56
  166. PointIn(s) → C57
  167. PointIn(s) → C58
  168. PointIn(s) → C59
  169. PointIn(s) → C60
  170. PointIn(s) → C61
  171. PointIn(s) → C62
  172. PointIn(s) → C63
  173. PointIn(s) → C64
  174. PointIn(s) → C65
  175. PointIn(s) → C66
  176. PointIn(s) → C67
  177. PointIn(s) → C68
  178. PointIn(s) → C69
  179. PointIn(s) → C70
  180. PointIn(s) → C71
  181. PointIn(s) → C72
  182. PointIn(s) → C73
  183. PointIn(s) → C74
  184. PointIn(s) → C75
  185. PointIn(s) → C76
  186. PointIn(s) → C77
  187. PointIn(s) → C78
  188. PointIn(s) → C79
  189. PointIn(s) → C80
  190. PointIn(s) → C81
  191. PointIn(s) → C82
  192. PointIn(s) → C83
  193. PointIn(s) → C84
  194. PointIn(s) → C85
  195. PointIn(s) → C86
  196. PointIn(s) → C87
  197. PointIn(s) → C88
  198. PointIn(s) → C89
  199. PointIn(s) → C90
  200. PointIn(s) → C91
  201. PointIn(s) → C92
  202. PointIn(s) → C93
  203. PointIn(s) → C94
  204. PointIn(s) → C95
  205. PointIn(s) → C96
  206. PointIn(s) → C97
  207. PointIn(s) → C98
  208. PointIn(s) → C99
  209. PointIn(s) → C100
  210. Midpoint(C51, O) → M51
  211. Midpoint(C52, O) → M52
  212. Midpoint(C53, O) → M53
  213. Midpoint(C54, O) → M54
  214. Midpoint(C55, O) → M55
  215. Midpoint(C56, O) → M56
  216. Midpoint(C57, O) → M57
  217. Midpoint(C58, O) → M58
  218. Midpoint(C59, O) → M59
  219. Midpoint(C60, O) → M60
  220. Midpoint(C61, O) → M61
  221. Midpoint(C62, O) → M62
  222. Midpoint(C63, O) → M63
  223. Midpoint(C64, O) → M64
  224. Midpoint(C65, O) → M65
  225. Midpoint(C66, O) → M66
  226. Midpoint(C67, O) → M67
  227. Midpoint(C68, O) → M68
  228. Midpoint(C69, O) → M69
  229. Midpoint(C70, O) → M70
  230. Midpoint(C71, O) → M71
  231. Midpoint(C72, O) → M72
  232. Midpoint(C73, O) → M73
  233. Midpoint(C74, O) → M74
  234. Midpoint(C75, O) → M75
  235. Midpoint(C76, O) → M76
  236. Midpoint(C77, O) → M77
  237. Midpoint(C78, O) → M78
  238. Midpoint(C79, O) → M79
  239. Midpoint(C80, O) → M80
  240. Midpoint(C81, O) → M81
  241. Midpoint(C82, O) → M82
  242. Midpoint(C83, O) → M83
  243. Midpoint(C84, O) → M84
  244. Midpoint(C85, O) → M85
  245. Midpoint(C86, O) → M86
  246. Midpoint(C87, O) → M87
  247. Midpoint(C88, O) → M88
  248. Midpoint(C89, O) → M89
  249. Midpoint(C90, O) → M90
  250. Midpoint(C91, O) → M91
  251. Midpoint(C92, O) → M92
  252. Midpoint(C93, O) → M93
  253. Midpoint(C94, O) → M94
  254. Midpoint(C95, O) → M95
  255. Midpoint(C96, O) → M96
  256. Midpoint(C97, O) → M97
  257. Midpoint(C98, O) → M98
  258. Midpoint(C99, O) → M99
  259. Midpoint(C100, O) → M100
  260. Sphere(M51, 1 / 2) → sphere51
  261. Sphere(M52, 1 / 2) → sphere52
  262. Sphere(M53, 1 / 2) → sphere53
  263. Sphere(M54, 1 / 2) → sphere54
  264. Sphere(M55, 1 / 2) → sphere55
  265. Sphere(M56, 1 / 2) → sphere56
  266. Sphere(M57, 1 / 2) → sphere57
  267. Sphere(M58, 1 / 2) → sphere58
  268. Sphere(M59, 1 / 2) → sphere59
  269. Sphere(M60, 1 / 2) → sphere60
  270. Sphere(M61, 1 / 2) → sphere61
  271. Sphere(M62, 1 / 2) → sphere62
  272. Sphere(M63, 1 / 2) → sphere63
  273. Sphere(M64, 1 / 2) → sphere64
  274. Sphere(M65, 1 / 2) → sphere65
  275. Sphere(M66, 1 / 2) → sphere66
  276. Sphere(M67, 1 / 2) → sphere67
  277. Sphere(M68, 1 / 2) → sphere68
  278. Sphere(M69, 1 / 2) → sphere69
  279. Sphere(M70, 1 / 2) → sphere70
  280. Sphere(M71, 1 / 2) → sphere71
  281. Sphere(M72, 1 / 2) → sphere72
  282. Sphere(M73, 1 / 2) → sphere73
  283. Sphere(M74, 1 / 2) → sphere74
  284. Sphere(M75, 1 / 2) → sphere75
  285. Sphere(M76, 1 / 2) → sphere76
  286. Sphere(M77, 1 / 2) → sphere77
  287. Sphere(M78, 1 / 2) → sphere78
  288. Sphere(M79, 1 / 2) → sphere79
  289. Sphere(M80, 1 / 2) → sphere80
  290. Sphere(M81, 1 / 2) → sphere81
  291. Sphere(M82, 1 / 2) → sphere82
  292. Sphere(M83, 1 / 2) → sphere83
  293. Sphere(M84, 1 / 2) → sphere84
  294. Sphere(M85, 1 / 2) → sphere85
  295. Sphere(M86, 1 / 2) → sphere86
  296. Sphere(M87, 1 / 2) → sphere87
  297. Sphere(M88, 1 / 2) → sphere88
  298. Sphere(M89, 1 / 2) → sphere89
  299. Sphere(M90, 1 / 2) → sphere90
  300. Sphere(M91, 1 / 2) → sphere91
  301. Sphere(M92, 1 / 2) → sphere92
  302. Sphere(M93, 1 / 2) → sphere93
  303. Sphere(M94, 1 / 2) → sphere94
  304. Sphere(M95, 1 / 2) → sphere95
  305. Sphere(M96, 1 / 2) → sphere96
  306. Sphere(M97, 1 / 2) → sphere97
  307. Sphere(M98, 1 / 2) → sphere98
  308. Sphere(M99, 1 / 2) → sphere99
  309. Sphere(M100, 1 / 2) → sphere100

AI 绘图提示语参考

画一个单位球面上的球面 Voronoi 图。先放置球心参考点并画出以它为中心、半径为1的球。随后在球面上生成一组可拖拽的“站点”(数量为若干个),让它们作为距离判定依据。用球面度量将球面划分为多个区域,每个区域由距离其最近的站点主导;同时建立若干由站点与球面几何关系确定的分界结构,使区域能随站点拖动实时更新。最后给不同区域上色以强调细胞分割效果。
以上提示语为根据原始绘图命令整理而来,仅供参考。