使用图形的六边形部分球体表示

Partial sphere representation with hexes using graphs

问题:不能仅使用六边形瓷砖对球体进行镶嵌。

目标:创建一个地球地图,由离散的六角形区域组成。

要求

一个。 globe/sphere/planet 的图形表示。

b。将区域细分为六角形。

c。十六进制可能包含一些东西。

d。瓷砖的数量应在 1 000 到 10 000 之间。

e。合理的不准确性是可以的。

想法

  1. 创建一个表示六边形的无向图。因为六边形必须始终恰好有 6 个邻居,所以该图需要是 6-regular 并且包含 1 000 < N < 10 000 个顶点和 3N 条边(来自握手引理)。它可以存储为带有指向顶点实例的指针的邻接矩阵。

  2. 顶点实例填充了信息。例如,在游戏中,这可能是单位。

  3. 视觉呈现:没有屏幕可以一次显示整个地球。因此,为了显示我们地球的一部分,我们首先 select 应该位于显示中间的顶点并将其显示为十六进制。然后,从邻接矩阵中,我们拉出它的直接邻居并将它们定位为六边形。对于这些邻居中的每一个,我们拉起下一层邻居,依此类推,直到屏幕被填满。

问题

I 是否有一种算法可以用来构造1中描述的图?

II 我可以证明直到 selected 邻居深度,不会出现使图形表示不可能的冲突吗?显然,至少 1 + 6 个六角形的显示深度不会出现冲突。

if I&II:
    Do you think the described approach is promising enough to try and implement?

从来没有人回答过,但答案是这是不可能的。覆盖球体的有限图的欧拉特性必须为 2(欧拉特性参见 http://en.wikipedia.org/wiki/Euler_characteristic),而由六边形构成的图的欧拉特性始终为 0.

你必须在某个地方有不同大小的形状。