【发布时间】:2012-07-04 08:55:03
【问题描述】:
我必须在 openGL 中制作太阳系。问题是实际的行星距离和大小是如此不同,以至于很难画出来。我在想一定有某种方法可以“压缩”一系列数字,以便数字变得更接近,但它们的相对差异保持不变。因此,例如,在天平的一端,数字将保持原样,在天平的另一端,所有数字将收敛到相同的值。我知道这只是缩放然后添加/减去数量但不知道如何继续的情况。
【问题讨论】:
-
什么是“难”?您需要更高的精度还是需要更大的范围?您使用什么语言?
-
比如太阳比冥王星大600倍,所以画出来就意味着整个屏幕都被太阳填满了,你就看不到冥王星了
-
请注意,如果您要使用适当的长度刻度,您不能同时看到两个行星。 (当然。甚至几乎没有。)此外,如果您只想在 2D 屏幕(即在桌子上)上并排绘制所有行星(和太阳),您也不能(合理地)使用它们的“直径”的适当比例。
-
我在大学有同样的项目,我想我作弊了,因为我使用不同的比例参数来缩放行星的大小和它们之间的距离。对我来说,很难想象如何以合适的比例将它放在屏幕上。
-
Most depictions of planets to scale 使用多个视图,其中每个视图都有前一个视图中最大的行星和当前视图中最小的行星。不确定这是否有帮助。
标签: math