如何检查X,Y点是否在由4个X,Y点组成的正方形内?

时间:2019-01-30 00:25:36

标签: for-loop f# geometry point

我正在尝试检查是否存在正方形的一部分,如果有的话,我会像将X,Y绘制到位图上一样。

困难的部分是,正方形不一定是完美的。它可能会倾斜。我在下面的代码中创建的正方形就是一个例子。我想对X然后Y进行循环,看看这些点是否在正方形内。最终,我希望能够使用Z坐标来确定该点的接近程度,以确定位图上像素的亮/暗。

这是我现在拥有的代码:

open System

type Point =
    { X : int
      Y : int
      Z : int }

type Square =
    { P1 : Point
      P2 : Point
      P3 : Point
      P4 : Point }

let square =
    { P1 = { X = 10; Y = 10; Z = 0 }
      P2 = { X = 90; Y = 10; Z = 0 }
      P3 = { X = 20; Y = 80; Z = 0 }
      P4 = { X = 80; Y = 80; Z = 0 } }

for x in 0 .. 99 do
    for y in 0 .. 99 do
        // do something

1 个答案:

答案 0 :(得分:3)

这是在here之前被问到的, 这是一个受欢迎的问题point in a polygon的子集。

顺便说一句,您描述的形状称为四边形。