在坐标之间绘制形状
Draw shapes between coordinates
给定一些随机的 w 和 h 以及 4 个坐标 (x1, y1)...(x4, y4) 检查 x, y 计数器是否在这 4 个坐标内。
我正在尝试填充这 4 个坐标之间的 space,它们通常会形成一个矩形,但旋转角度不同。
目前我有一个嵌套的 for 循环来移动我的 "canvas",但我没能找到一种方法来检查我的计数器是否在坐标内。
我已经研究过画线算法来构建它,但到目前为止还没有成功。
有人可以指点我一些资源吗?
要检查一个点是否在三角形内,取方向
(y2 - y1)*(x3 - x2) - (y3 - y2)*(x2 - x1)
如果点是线性的,则符号为零,否则逆时针为负,顺时针为正。如果方向ABC、ABD、ACD相同,则A在三角形BCD中。
所以我们可以首先检查我们的凸包,它可以是直线、三角形或四边形。如果它是一个三角形,我们可以很容易地测试内部的更多点。它是一个凸四边形,测试也可以,但我们必须加一个额外的点。
给定一些随机的 w 和 h 以及 4 个坐标 (x1, y1)...(x4, y4) 检查 x, y 计数器是否在这 4 个坐标内。
我正在尝试填充这 4 个坐标之间的 space,它们通常会形成一个矩形,但旋转角度不同。
目前我有一个嵌套的 for 循环来移动我的 "canvas",但我没能找到一种方法来检查我的计数器是否在坐标内。
我已经研究过画线算法来构建它,但到目前为止还没有成功。
有人可以指点我一些资源吗?
要检查一个点是否在三角形内,取方向
(y2 - y1)*(x3 - x2) - (y3 - y2)*(x2 - x1)
如果点是线性的,则符号为零,否则逆时针为负,顺时针为正。如果方向ABC、ABD、ACD相同,则A在三角形BCD中。
所以我们可以首先检查我们的凸包,它可以是直线、三角形或四边形。如果它是一个三角形,我们可以很容易地测试内部的更多点。它是一个凸四边形,测试也可以,但我们必须加一个额外的点。