@Test public void testDefaultGeometry() throws IOException { FeatureTypeInfo featureType = getCatalog().getResourceByName("cdf", "Nulls", FeatureTypeInfo.class); GeometryDescriptor schemaDefaultGeometry = featureType.getFeatureType().getGeometryDescriptor(); FeatureIterator i = featureType.getFeatureSource(null, null).getFeatures().features(); GeometryDescriptor featureDefaultGeometry = i.next().getDefaultGeometryProperty().getDescriptor(); assertNotNull(schemaDefaultGeometry); assertNotNull(featureDefaultGeometry); assertEquals("pointProperty", schemaDefaultGeometry.getLocalName()); assertEquals(schemaDefaultGeometry, featureDefaultGeometry); } }
public void testDefaultGeometryProperty() { assertTrue( "expected GeometryAttribute, got " + feature.getProperty("the_geom").getClass().getName(), feature.getProperty("the_geom") instanceof GeometryAttribute); GeometryAttribute defaultGeometryProperty = feature.getDefaultGeometryProperty(); assertNotNull(defaultGeometryProperty); assertNull(defaultGeometryProperty.getValue()); assertNotNull(defaultGeometryProperty.getDescriptor()); assertTrue(defaultGeometryProperty.getDescriptor() instanceof GeometryDescriptor); }
CoordinateReferenceSystem crs = ((GeometryAttribute) property) .getDescriptor() .getCoordinateReferenceSystem(); Map<Object, Object> userData = new HashMap<Object, Object>();
public SimpleFeature bufferFeature(SimpleFeature feature, Measure<Double, Length> distance) { // extract the geometry GeometryAttribute gProp = feature.getDefaultGeometryProperty(); CoordinateReferenceSystem origCRS = gProp.getDescriptor().getCoordinateReferenceSystem(); Geometry geom = (Geometry) feature.getDefaultGeometry(); Geometry pGeom = geom; MathTransform toTransform, fromTransform = null; // reproject the geometry to a local projection if (!(origCRS instanceof ProjectedCRS)) { double x = geom.getCoordinate().x; double y = geom.getCoordinate().y; String code = "AUTO:42001," + x + "," + y; // System.out.println(code); CoordinateReferenceSystem auto; try { auto = CRS.decode(code); toTransform = CRS.findMathTransform(DefaultGeographicCRS.WGS84, auto); fromTransform = CRS.findMathTransform(auto, DefaultGeographicCRS.WGS84); pGeom = JTS.transform(geom, toTransform); } catch (MismatchedDimensionException | TransformException | FactoryException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
CoordinateReferenceSystem sourceCrs = simpleFeature.getDefaultGeometryProperty().getDescriptor().getCoordinateReferenceSystem(); CoordinateReferenceSystem targetCrs = DefaultGeographicCRS.WGS84;
CoordinateReferenceSystem sourceCrs = simpleFeature.getDefaultGeometryProperty().getDescriptor().getCoordinateReferenceSystem(); CoordinateReferenceSystem targetCrs = DefaultGeographicCRS.WGS84;
CoordinateReferenceSystem origCRS = gProp.getDescriptor() .getCoordinateReferenceSystem();