public static CRSEnvelope bbox2bbox(BoundingBoxType bbox) { return new CRSEnvelope( bbox.getCrs(), (Double) bbox.getLowerCorner().get(0), (Double) bbox.getLowerCorner().get(1), (Double) bbox.getUpperCorner().get(0), (Double) bbox.getUpperCorner().get(1)); } }
Map<String, CRSEnvelope> boundingBoxes = new HashMap<>(); for (BoundingBoxType bbox : bboxes) { boundingBoxes.put(bbox.getCrs(), bbox2bbox(bbox));
public static CRSEnvelope bbox2bbox(BoundingBoxType bbox) { return new CRSEnvelope( bbox.getCrs(), (Double) bbox.getLowerCorner().get(0), (Double) bbox.getLowerCorner().get(1), (Double) bbox.getUpperCorner().get(0), (Double) bbox.getUpperCorner().get(1)); } }
private Object toTargetType(BoundingBoxType bbox) throws Exception { CoordinateReferenceSystem crs = null; if(bbox.getCrs() != null) { crs = CRS.decode(bbox.getCrs()); } double[] lower = ordinates(bbox.getLowerCorner()); double[] upper = ordinates(bbox.getUpperCorner()); if(ReferencedEnvelope.class.isAssignableFrom(getType()) || BoundingBox.class.isAssignableFrom(getType())) { return new ReferencedEnvelope(lower[0], upper[0], lower[1], upper[1], crs); } else if(Envelope.class.isAssignableFrom(getType())) { return new Envelope(lower[0], upper[0], lower[1], upper[1]); } else if(org.opengis.geometry.Envelope.class.isAssignableFrom(getType())) { GeneralEnvelope ge = new GeneralEnvelope(lower, upper); ge.setCoordinateReferenceSystem(crs); return ge; } else { throw new WPSException("Failed to convert from OWS 1.1 Bounding box type " + "to the internal representation: " + getType()); } }
private Object toTargetType(BoundingBoxType bbox) throws Exception { CoordinateReferenceSystem crs = null; if (bbox.getCrs() != null) { crs = CRS.decode(bbox.getCrs()); } double[] lower = ordinates(bbox.getLowerCorner()); double[] upper = ordinates(bbox.getUpperCorner()); if (ReferencedEnvelope.class.isAssignableFrom(getType()) || BoundingBox.class.isAssignableFrom(getType())) { return new ReferencedEnvelope(lower[0], upper[0], lower[1], upper[1], crs); } else if (Envelope.class.isAssignableFrom(getType())) { return new Envelope(lower[0], upper[0], lower[1], upper[1]); } else if (org.opengis.geometry.Envelope.class.isAssignableFrom(getType())) { GeneralEnvelope ge = new GeneralEnvelope(lower, upper); ge.setCoordinateReferenceSystem(crs); return ge; } else { throw new WPSException( "Failed to convert from OWS 1.1 Bounding box type " + "to the internal representation: " + getType()); } }
ReferencedEnvelope toEnvelope(String xml) throws Exception { Parser p = new Parser(new OWSConfiguration()); Object parsed = p.parse(new ByteArrayInputStream(xml.getBytes())); assertTrue(parsed instanceof BoundingBoxType); BoundingBoxType box = (BoundingBoxType) parsed; ReferencedEnvelope re; if(box.getCrs() != null) { re = new ReferencedEnvelope(CRS.decode(box.getCrs())); } else { re = new ReferencedEnvelope(); } re.expandToInclude((Double) box.getLowerCorner().get(0), (Double) box.getLowerCorner().get(1)); re.expandToInclude((Double) box.getUpperCorner().get(0), (Double) box.getUpperCorner().get(1)); return re; }
@Test public void test2DNoCrs() throws Exception { BoundingBoxType bbox = (BoundingBoxType) parser.parse("10,20,15,30,EPSG:4326"); assertEquals(2, bbox.getLowerCorner().size()); assertEquals(10.0, bbox.getLowerCorner().get(0)); assertEquals(20.0, bbox.getLowerCorner().get(1)); assertEquals(2, bbox.getUpperCorner().size()); assertEquals(15.0, bbox.getUpperCorner().get(0)); assertEquals(30.0, bbox.getUpperCorner().get(1)); assertEquals("EPSG:4326", bbox.getCrs()); }
@Test public void testNoCrs() throws Exception { BoundingBoxType bbox = (BoundingBoxType) parser.parse("10,20,15,30"); assertEquals(2, bbox.getLowerCorner().size()); assertEquals(10.0, bbox.getLowerCorner().get(0)); assertEquals(20.0, bbox.getLowerCorner().get(1)); assertEquals(2, bbox.getUpperCorner().size()); assertEquals(15.0, bbox.getUpperCorner().get(0)); assertEquals(30.0, bbox.getUpperCorner().get(1)); assertNull(bbox.getCrs()); }
@Test public void testWgs84FullExtent() throws Exception { BoundingBoxType bbox = (BoundingBoxType) parser.parse("-180,-90,180,90,urn:ogc:def:crs:EPSG:4326"); assertEquals(2, bbox.getLowerCorner().size()); assertEquals(-180.0, bbox.getLowerCorner().get(0)); assertEquals(-90.0, bbox.getLowerCorner().get(1)); assertEquals(2, bbox.getUpperCorner().size()); assertEquals(180.0, bbox.getUpperCorner().get(0)); assertEquals(90.0, bbox.getUpperCorner().get(1)); assertEquals("urn:ogc:def:crs:EPSG:4326", bbox.getCrs()); } }
@Test public void test3DNoCrs() throws Exception { BoundingBoxType bbox = (BoundingBoxType) parser.parse("10,20,15,30,40,50,EPSG:4979"); assertEquals(3, bbox.getLowerCorner().size()); assertEquals(10.0, bbox.getLowerCorner().get(0)); assertEquals(20.0, bbox.getLowerCorner().get(1)); assertEquals(15.0, bbox.getLowerCorner().get(2)); assertEquals(3, bbox.getUpperCorner().size()); assertEquals(30.0, bbox.getUpperCorner().get(0)); assertEquals(40.0, bbox.getUpperCorner().get(1)); assertEquals(50.0, bbox.getUpperCorner().get(2)); assertEquals("EPSG:4979", bbox.getCrs()); }
Map<String, CRSEnvelope> boundingBoxes = new HashMap<>(); for (BoundingBoxType bbox : bboxes) { boundingBoxes.put(bbox.getCrs(), bbox2bbox(bbox));
if (bbox.getCrs() == null) { destinationEnvelope.setCoordinateReferenceSystem(nativeCRS); destinationEnvelopeInSourceCRS = destinationEnvelope; } else { final CoordinateReferenceSystem bboxCRS = CRS.decode(bbox.getCrs()); destinationEnvelope.setCoordinateReferenceSystem(bboxCRS); final MathTransform bboxToNativeTx = CRS.findMathTransform(bboxCRS, nativeCRS,
if (bbox.getCrs() == null) { requestedEnvelope.setCoordinateReferenceSystem(nativeCRS); requestedEnvelopeInNativeCRS = requestedEnvelope; } else { final CoordinateReferenceSystem bboxCRS = CRS.decode(bbox.getCrs()); requestedEnvelope.setCoordinateReferenceSystem(bboxCRS); if (!CRS.equalsIgnoreMetadata(bboxCRS, nativeCRS)) {
assertEquals("wcs:BlueMarble", gc.getIdentifier().getValue()); assertEquals( "urn:ogc:def:crs:EPSG:6.6:4326", gc.getDomainSubset().getBoundingBox().getCrs()); assertEquals( Arrays.asList(-90.0, -180.0),