/** 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) { bounds.addPoint(point); if (circlePlane == null) return; bounds.addPlane(planetModel, circlePlane); }
@Override public void getBounds(Bounds bounds) { super.getBounds(bounds); bounds.addPlane(planetModel, plane1, plane2, plane4) .addPlane(planetModel, plane2, plane3, plane1) .addPlane(planetModel, plane3, plane4, plane2) .addPlane(planetModel, plane4, plane1, plane3) .addPoint(point1).addPoint(point2).addPoint(point3).addPoint(point4); }
/** 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) .addPlane(planetModel, normalizedConnectingPlane, startCutoffPlane, endCutoffPlane); }
@Override public void getBounds(Bounds bounds) { super.getBounds(bounds); if (circlePlane == null) { // Entire world; should already be covered return; } bounds.addPoint(center); bounds.addPlane(planetModel, circlePlane); }
@Override public void getBounds(Bounds bounds) { super.getBounds(bounds); for (final Edge startEdge : shapeStartEdges) { Edge currentEdge = startEdge; while (true) { bounds.addPoint(currentEdge.startPoint); bounds.addPlane(this.planetModel, currentEdge.plane, currentEdge.startPlane, currentEdge.endPlane); currentEdge = currentEdge.next; if (currentEdge == startEdge) { break; } } } }
@Override public void getBounds(Bounds bounds) { super.getBounds(bounds); bounds.addPoint(center); for (final CircleSlice slice : circleSlices) { bounds.addPlane(planetModel, slice.circlePlane, slice.plane1, slice.plane2); for (final GeoPoint point : slice.notableEdgePoints) { bounds.addPoint(point); } } }
/** 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); }
bounds.addPlane(planetModel, edge, eitherBounds.get(edge)); final SidedPlane nextEdge = nextBrotherMap.get(edge); bounds.addIntersection(planetModel, edge, nextEdge, prevBrotherMap.get(edge), nextBrotherMap.get(nextEdge));
bounds.addPlane(planetModel, edge, eitherBounds.get(edge));