Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
if (needsGeometryCut) {
const nearest = lats.indexOf(isNorthPole ? lmax : lmin);
if (nearest !== 0) {
for (let i = 0; i < nearest; i++) {
points.push(points.shift() as GeoCoordinates);
}
}
}
}
if (needsGeometryCut) {
const centerX = (box.min.x + box.max.x) / 2;
const centerY = (box.min.y + box.max.y) / 2;
const center = srcProjection.unprojectPoint(new THREE.Vector3(centerX, centerY, 0));
TransverseMercatorUtils.alignLongitude(points, center);
// points aligned as follows:
// a - nearest to the pole, always in
// b - next to nearest
// c - farthes from the pole, always out
// d - prev from nearest
const a = points[0];
const b = points[1];
const c = points[2];
const d = points[3];
const inPointB = Math.abs(b.latitude) >= maxLat;
const inPointD = Math.abs(d.latitude) >= maxLat;
const cutStart = inPointB
? this.intersectEdge(poleLat, b, c)