function testGeoPolygonGeoPolygon(geopolygon1, geopolygon2) {
  const rect1 = geopolygon1.boundingRect();
  const rect2 = geopolygon2.boundingRect();
  if (!testRectRect(rect1, rect2)) {
    return false;
  }
  if (testRectContainsRect(rect2, rect1)) {
    return testGeoPolygonGeoPolygonSubCase(geopolygon2, geopolygon1);
  }
  return testGeoPolygonGeoPolygonSubCase(geopolygon1, geopolygon2);
}
/**
 * Test if a geopolygon intersects another geopolygon.
 * @private
 * @param {object} geopolygon
 * @param {object} geopolygon
 * @returns {boolean} True if there is an intersection, false otherwise
 */
Test if a geopolygon intersects another geopolygon.
@private
@param {object} geopolygon
@param {object} geopolygon
@returns {boolean} True if there is an intersection, false otherwise
Test if a geopolygon intersects another geopolygon . @private @param { object } geopolygon @param { object } geopolygon @returns { boolean } True if there is an intersection false otherwise
function testGeoPolygonGeoPolygon(geopolygon1, geopolygon2) {
  const rect1 = geopolygon1.boundingRect();
  const rect2 = geopolygon2.boundingRect();
  if (!testRectRect(rect1, rect2)) {
    return false;
  }
  if (testRectContainsRect(rect2, rect1)) {
    return testGeoPolygonGeoPolygonSubCase(geopolygon2, geopolygon1);
  }
  return testGeoPolygonGeoPolygonSubCase(geopolygon1, geopolygon2);
}
function testGeoPolygonGeoPolygon ( geopolygon1 , geopolygon2 ) { const rect1 = geopolygon1 . boundingRect ( ) ; const rect2 = geopolygon2 . boundingRect ( ) ; if ( ! testRectRect ( rect1 , rect2 ) ) { return false ; } if ( testRectContainsRect ( rect2 , rect1 ) ) { return testGeoPolygonGeoPolygonSubCase ( geopolygon2 , geopolygon1 ) ; } return testGeoPolygonGeoPolygonSubCase ( geopolygon1 , geopolygon2 ) ; }
Test if a geopolygon intersects another geopolygon.
Test if a geopolygon intersects another geopolygon .