与常规数学坐标系相比,为什么软件经常使用逆坐标系?

时间:2015-07-19 03:16:12

标签: math coordinate-systems coords

您可能知道,在c#中,飞机的原点(0,0)是左上角。向右和/或向下被认为是+,而向左和/或向上是 - 。反对这是常规数学协调系统:

(0,0)=飞机中部,上/右= +,下/左= - 。

这有点违反直觉,有时可能很烦人,因为我们(多年来)使用常规数学坐标,你也必须重新计算坐标。

这是一个基本的设计缺陷吗?一段时间后你会习惯吗?还有哪些其他语言使用不同的coord系统,如c#?

3 个答案:

答案 0 :(得分:8)

不是C#,而是使用反向坐标系的显示器,这来自使用CRT绘制显示器的日子,图像是从上到下,从左到右绘制的。这就是坐标系OS的用途与之匹配的原因。

像C#这样的语言只是包装底层操作系统的API,这就是C#也使用它的原因。

答案 1 :(得分:1)

数学图形平面是虚拟的东西,它可以无限制地向所有方向扩展。

屏幕是真实的东西,它根本无法真正扩展。

相反,我们使用滚动的概念,我们习惯从起点开始执行。

因此,从概念上讲,图形系统都使用与书中的(从左到右和从上到下)文本块或页面相同的系统。它是关于我们如何滚动以扩展/推进显示区域。

可以以任何其他方式定义;毕竟,例如负坐标确实有意义,而不是负数。

答案 2 :(得分:0)

如果您不喜欢屏幕上的坐标系,您可以创建包装方法,以任意方式重新绘制坐标。