private int numberOfTriangleCorners(double ax, double ay, double bx, double by, double cx, double cy) { int containsCount = 0; if (componentContains(ay, ax)) { containsCount++; } if (componentContains(by, bx)) { containsCount++; } if (containsCount == 1) { return containsCount; } if (componentContains(cy, cx)) { containsCount++; } return containsCount; }
private int numberOfCorners(double minLat, double maxLat, double minLon, double maxLon) { int containsCount = 0; if (componentContains(minLat, minLon)) { containsCount++; } if (componentContains(minLat, maxLon)) { containsCount++; } if (containsCount == 1) { return containsCount; } if (componentContains(maxLat, maxLon)) { containsCount++; } if (containsCount == 2) { return containsCount; } if (componentContains(maxLat, minLon)) { containsCount++; } return containsCount; }
/** * Returns true if the point is contained within this polygon. * <p> * See <a href="https://www.ecse.rpi.edu/~wrf/Research/Short_Notes/pnpoly.html"> * https://www.ecse.rpi.edu/~wrf/Research/Short_Notes/pnpoly.html</a> for more information. */ public boolean contains(double latitude, double longitude) { if (latitude <= maxY && longitude <= maxX) { if (componentContains(latitude, longitude)) { return true; } if (left != null) { if (((Polygon2D)left).contains(latitude, longitude)) { return true; } } if (right != null && ((splitX == false && latitude >= minLat) || (splitX && longitude >= minLon))) { if (((Polygon2D)right).contains(latitude, longitude)) { return true; } } } return false; }
private int numberOfTriangleCorners(double ax, double ay, double bx, double by, double cx, double cy) { int containsCount = 0; if (componentContains(ay, ax)) { containsCount++; } if (componentContains(by, bx)) { containsCount++; } if (containsCount == 1) { return containsCount; } if (componentContains(cy, cx)) { containsCount++; } return containsCount; }
private int numberOfCorners(double minLat, double maxLat, double minLon, double maxLon) { int containsCount = 0; if (componentContains(minLat, minLon)) { containsCount++; } if (componentContains(minLat, maxLon)) { containsCount++; } if (containsCount == 1) { return containsCount; } if (componentContains(maxLat, maxLon)) { containsCount++; } if (containsCount == 2) { return containsCount; } if (componentContains(maxLat, minLon)) { containsCount++; } return containsCount; }
/** * Returns true if the point is contained within this polygon. * <p> * See <a href="https://www.ecse.rpi.edu/~wrf/Research/Short_Notes/pnpoly.html"> * https://www.ecse.rpi.edu/~wrf/Research/Short_Notes/pnpoly.html</a> for more information. */ public boolean contains(double latitude, double longitude) { if (latitude <= maxY && longitude <= maxX) { if (componentContains(latitude, longitude)) { return true; } if (left != null) { if (((Polygon2D)left).contains(latitude, longitude)) { return true; } } if (right != null && ((splitX == false && latitude >= minLat) || (splitX && longitude >= minLon))) { if (((Polygon2D)right).contains(latitude, longitude)) { return true; } } } return false; }