roi = roi.intersect(roiGeometry); } catch (TopologyException tpe) { if (LOGGER.isLoggable(Level.FINE)) { g = new GeometrySnapper(g).snapTo(g, tol).buffer(0); roiGeometry = new ROIGeometry(g, setupJAIHints(hints)); roi = roi.intersect(roiGeometry); } else if (roi instanceof ROIGeometry) { g = ((ROIGeometry) roi).getAsGeometry(); g = new GeometrySnapper(g).snapTo(g, tol).buffer(0); roi = new ROIGeometry(g, setupJAIHints(hints)); roi = roi.intersect(roiGeometry);
AffineTransform inv = (AffineTransform) inverse; reprojectedROI = reprojectedROI.transform(inv); newROI = reprojectedROI.intersect((ROI) property); AffineTransform inverse = sTx.createInverse(); ROI newROI = this.roi != null ? this.roi.transform(inverse) : null; this.roi = newROI.intersect(r); } catch (NoninvertibleTransformException e) { LOGGER.log(Level.SEVERE, e.getMessage(), e); try { ROI newROI = computeScaledROI(scalingParams); this.roi = newROI.intersect(r); } catch (NoninvertibleTransformException e) { LOGGER.log(Level.SEVERE, e.getMessage(), e);
if (roi != null) { if (roiProperty != null) { roi = roi.intersect(roiProperty);
newROI = roiParam; } else { newROI = roiParam != null ? innerROI.intersect(roiParam) : innerROI;
roi = newROI; } else { roi = roi.intersect(newROI);
roi = roi != null ? roi.intersect(property) : property;
roi = roi != null ? roi.intersect(property) : property;
imageROI = footprint; } else { imageROI = imageROI.intersect(footprint);
finalROI = finalROI.intersect(internalROI); } else if (internalROI != null) { finalROI = internalROI;
/** * Returns a new instance which is the intersection of this ROI and {@code roi}. * This is only possible if {@code roi} is an instance of ROIGeometry * or {@link ROIShape}. * * @param roi the ROI to intersect with * @return the intersection as a new instance */ @Override public ROI intersect(ROI roi) { try { final Geometry geom = getGeometry(roi); if (geom != null) { Geometry intersect = geom.intersection(theGeom.getGeometry()); return buildROIGeometry(intersect); } } catch(TopologyException e) { if(LOGGER.isLoggable(Level.FINE)) { LOGGER.log(Level.FINE, "Failed to perform operation using geometries, falling back on raster path", e); } } // fallback on robust path return super.intersect(roi); }
/** * Returns a new instance which is the intersection of this ROI and {@code roi}. * This is only possible if {@code roi} is an instance of ROIGeometry * or {@link ROIShape}. * * @param roi the ROI to intersect with * @return the intersection as a new instance */ @Override public ROI intersect(ROI roi) { try { final Geometry geom = getGeometry(roi); if (geom != null) { Geometry intersect = geom.intersection(theGeom.getGeometry()); return buildROIGeometry(intersect); } } catch(TopologyException e) { if(LOGGER.isLoggable(Level.FINE)) { LOGGER.log(Level.FINE, "Failed to perform operation using geometries, falling back on raster path", e); } } // fallback on robust path return super.intersect(roi); }
srcROI = srcROI.intersect(new ROIShape(srcBounds));
srcROI = srcROI.intersect(new ROIShape(srcBounds));
srcROI = srcROI.intersect(new ROIShape(srcBounds));
srcROI = srcROI.intersect(new ROIShape(srcBounds));