我必须用openGL制作太阳能系统。问题是实际的行星距离和尺寸是如此不同以至于难以绘制。我当时认为必须有一些“压缩”一系列数字的方法,以便数字变得更接近,但它们的相对差异保持不变。因此,例如在比例的一端,数字将如它们那样,在比例的另一端,所有数字将会聚合在相同的值上。我知道这只是缩放然后添加/减去金额但不确定如何继续的情况。
答案 0 :(得分:2)
您刚才描述的是logrithmic scale。
我不确定这是否是最好的选择。一个更好的选择就是拥有一个良好的用户界面 - 用某种视觉指示器(比如说,一个空心的绿色圆圈;或者一张放大镜的图片)来绘制行星的尺寸行星是。当用户将鼠标悬停在可视指示器上时,放大行星,或者在点击行星时放大行星。
或者,让他们选择使用鼠标滚轮放大。
或者,简单地注视它,确保较小的行星看起来更小,而较大的行星看起来更大,并注意行星不会按比例缩放。
作为参考,here是一个典型的教科书图像,行星不按比例缩放,而this是他们想要缩放的行星(行星,至少不是它们的轨道)。