C# RectangleF contains始终返回false

C# RectangleF contains始终返回false,c#,system.drawing,C#,System.drawing,我使用的是RectangleF.Contains(PointF),它总是返回false 示例代码: RectangleF bounds = RectangleF.FromLTRB(-180, 90, 180, -90); bounds.Contains(new PointF(0, 0); 我试图让这个四叉树库在Unity中工作。 我使用了Mono文件夹中的System.Drawing.dll 四叉树将用于存储纬度和经度值 这是边界问题吗?还是别的什么东西?和 bounds = Rect

我使用的是
RectangleF.Contains(PointF)
,它总是返回false

示例代码:

  RectangleF bounds = RectangleF.FromLTRB(-180, 90, 180, -90);
  bounds.Contains(new PointF(0, 0);
我试图让这个四叉树库在Unity中工作。 我使用了Mono文件夹中的System.Drawing.dll

四叉树将用于存储纬度和经度值

这是边界问题吗?还是别的什么东西?

bounds = RectangleF.FromLTRB(-180, 90, 180, -90);
创建一个空(或事件“负”)矩形。y坐标在这里工作就像屏幕坐标从上到下上升一样

因此,将矩形定义为

bounds = RectangleF.FromLTRB(-180, -90, 180, 90);

bounds.Contains(新的点f(0,0);
将返回
true

什么是矩形?Unity调用此结构Rect@zambari我使用的是System.Drawing而不是UnityEngine.UI这是一个.net类
unity3d
标记有误。@ReneéVogt这似乎已经解决了这个问题,您可以详细说明一下。为什么顶部和底部颠倒了?最初的监视器是纯文本的监视器由固定的行和列组成,每个单元格包含一个字符。由于文本行是从上到下排列的,因此以这种方式对它们进行编号。后来图形适配器的y坐标也采用了这种方式,以保持一定程度的兼容性。您是否有链接,或者可以详细解释屏幕坐标的工作原理。为什么矩形框会这样呢。@Lonsomell记不起关于这个主题的任何文档,它很常见:屏幕坐标从左上角上升到右下角。
RectangleF
会这样做,因为它是
系统的一部分。Drawing
,一个包含要绘制的方法的名称空间,对于绘制,我们使用这个方向。不知道是谁我已经决定了,但自从我25年前开始编写代码以来就一直是这样。如果它是屏幕绘图API的一部分,这是有意义的。我把它当作一个图形几何API。