/** Get the bounds for a segment endpoint. *@param planetModel is the planet model. *@param bounds are the bounds to be modified. */ public void getBounds(final PlanetModel planetModel, Bounds bounds) { // We need to do all bounding planes as well as corner points bounds.addPoint(start).addPoint(end) .addPoint(ULHC).addPoint(URHC).addPoint(LRHC).addPoint(LLHC) .addPlane(planetModel, upperConnectingPlane, lowerConnectingPlane, startCutoffPlane, endCutoffPlane) .addPlane(planetModel, lowerConnectingPlane, upperConnectingPlane, startCutoffPlane, endCutoffPlane) .addPlane(planetModel, startCutoffPlane, endCutoffPlane, upperConnectingPlane, lowerConnectingPlane) .addPlane(planetModel, endCutoffPlane, startCutoffPlane, upperConnectingPlane, lowerConnectingPlane) .addIntersection(planetModel, upperConnectingPlane, startCutoffPlane, lowerConnectingPlane, endCutoffPlane) .addIntersection(planetModel, startCutoffPlane, lowerConnectingPlane, endCutoffPlane, upperConnectingPlane) .addIntersection(planetModel, lowerConnectingPlane, endCutoffPlane, upperConnectingPlane, startCutoffPlane) .addIntersection(planetModel, endCutoffPlane, upperConnectingPlane, startCutoffPlane, lowerConnectingPlane); }
@Override public void getBounds(Bounds bounds) { super.getBounds(bounds); bounds.isWide() .addVerticalPlane(planetModel, leftLon, leftPlane) .addVerticalPlane(planetModel, rightLon, rightPlane) .addIntersection(planetModel, leftPlane, rightPlane) .addPoint(planetModel.NORTH_POLE) .addPoint(planetModel.SOUTH_POLE); }
@Override public void getBounds(Bounds bounds) { super.getBounds(bounds); bounds.isWide() .addHorizontalPlane(planetModel, bottomLat, bottomPlane, eitherBound) .addVerticalPlane(planetModel, leftLon, leftPlane, bottomPlane) .addVerticalPlane(planetModel, rightLon, rightPlane, bottomPlane) .addIntersection(planetModel, leftPlane, rightPlane, bottomPlane) .addPoint(LLHC).addPoint(LRHC).addPoint(planetModel.NORTH_POLE); }
@Override public void getBounds(Bounds bounds) { super.getBounds(bounds); bounds.isWide() .addHorizontalPlane(planetModel, topLat, topPlane, eitherBound) .addVerticalPlane(planetModel, rightLon, rightPlane, topPlane) .addVerticalPlane(planetModel, leftLon, leftPlane, topPlane) .addIntersection(planetModel, leftPlane, rightPlane, topPlane) .addPoint(ULHC).addPoint(URHC).addPoint(planetModel.SOUTH_POLE); }
bounds.addPlane(planetModel, edge, eitherBounds.get(edge)); final SidedPlane nextEdge = nextBrotherMap.get(edge); bounds.addIntersection(planetModel, edge, nextEdge, prevBrotherMap.get(edge), nextBrotherMap.get(nextEdge));
@Override public void getBounds(Bounds bounds) { super.getBounds(bounds); bounds.isWide() .addHorizontalPlane(planetModel, topLat, topPlane, bottomPlane, eitherBound) .addVerticalPlane(planetModel, rightLon, rightPlane, topPlane, bottomPlane) .addHorizontalPlane(planetModel, bottomLat, bottomPlane, topPlane, eitherBound) .addVerticalPlane(planetModel, leftLon, leftPlane, topPlane, bottomPlane) .addIntersection(planetModel, leftPlane, rightPlane, topPlane, bottomPlane) .addPoint(ULHC).addPoint(URHC).addPoint(LRHC).addPoint(LLHC); }
bounds.addIntersection(planetModel, invertedEdge, nextEdge, prevBrotherMap.get(invertedEdge), nextBrotherMap.get(nextEdge));