我有一组X和Y点来构建一个形状,我需要知道一个对象是否在其中,或者它的计算是什么?
X和Y坐标示例:
522.56055 2389.885
544.96 2386.3406
554.18616 2369.2385
535.21814 2351.396
497.5552 2355.8396
Run Code Online (Sandbox Code Playgroud)
我对数学并不是很好:(所以我希望得到一些支持,以了解它是如何完成的.
我到目前为止的例子,但似乎不太可靠:
private boolean isInsideShape(Zone verifyZone, Position object)
{
int corners = verifyZone.getCorners();
float[] xCoords = verifyZone.getxCoordinates();
float[] yCoords = verifyZone.getyCoordinates();
float x = object.getX();
float y = object.getY();
float z = object.getZ();
int i, j = corners - 1;
boolean inside = false;
for(i = 0; i < corners; i++)
{
if(yCoords[i] < y && yCoords[j] >= y || yCoords[j] < y && yCoords[i] >= y)
if(xCoords[i] …Run Code Online (Sandbox Code Playgroud)