public SimpleFeatureShapeFigure(SimpleFeature simpleFeature, SceneTransformProvider provider, FigureStyle normalStyle, FigureStyle selectedStyle) { super(getRank(simpleFeature), normalStyle, selectedStyle); this.simpleFeature = simpleFeature; this.geometryType = simpleFeature.getDefaultGeometry().getClass(); this.shape = null; sceneTransformProvider = provider; }
static Rank getRank(SimpleFeature simpleFeature) { final Object geometry = simpleFeature.getDefaultGeometry(); if (!(geometry instanceof Geometry)) { throw new IllegalArgumentException("simpleFeature: geometry type must be a " + Geometry.class); } return getRank((Geometry) geometry); }
public void testRank() { assertEquals(Figure.Rank.POINT, SimpleFeatureShapeFigure.getRank(createPoint())); assertEquals(Figure.Rank.POINT, SimpleFeatureShapeFigure.getRank(createMultiPoint())); assertEquals(Figure.Rank.LINE, SimpleFeatureShapeFigure.getRank(createLineString())); assertEquals(Figure.Rank.LINE, SimpleFeatureShapeFigure.getRank(createLinearRing())); assertEquals(Figure.Rank.LINE, SimpleFeatureShapeFigure.getRank(createMultiLineString())); assertEquals(Figure.Rank.AREA, SimpleFeatureShapeFigure.getRank(createPolygon())); assertEquals(Figure.Rank.AREA, SimpleFeatureShapeFigure.getRank(createMultiPolygon())); assertEquals(Figure.Rank.NOT_SPECIFIED, SimpleFeatureShapeFigure.getRank(createGeometryCollection())); }
public void testSpecificGeometryType() { SimpleFeatureType sft = createPlainFeatureType("Polygon", Polygon.class, DefaultGeographicCRS.WGS84); Polygon polygon = createPolygon(); SimpleFeature simpleFeature = createPlainFeature(sft, "_1", polygon, ""); SimpleFeatureShapeFigure shapeFigure = new SimpleFeatureShapeFigure(simpleFeature, sceneTransformProvider, new DefaultFigureStyle()); assertEquals(polygon, shapeFigure.getGeometry()); assertNotNull(shapeFigure.getShape()); assertEquals(Figure.Rank.AREA, shapeFigure.getRank()); }
public void testMixedGeometries_1() { SimpleFeatureType sft = createPlainFeatureType("Geometry", Geometry.class, DefaultGeographicCRS.WGS84); Geometry geometry; SimpleFeature feature; SimpleFeatureShapeFigure figure; geometry = createPolygon(); feature = createPlainFeature(sft, "_1", geometry, ""); figure = new SimpleFeatureShapeFigure(feature, sceneTransformProvider, new DefaultFigureStyle()); assertEquals(geometry, figure.getGeometry()); assertNotNull(figure.getShape()); assertEquals(Figure.Rank.AREA, figure.getRank()); geometry = createLinearRing(); feature = createPlainFeature(sft, "_2", geometry, ""); figure = new SimpleFeatureShapeFigure(feature, sceneTransformProvider, new DefaultFigureStyle()); assertEquals(geometry, figure.getGeometry()); assertNotNull(figure.getShape()); assertEquals(Figure.Rank.LINE, figure.getRank()); geometry = createLineString(); feature = createPlainFeature(sft, "_3", geometry, ""); figure = new SimpleFeatureShapeFigure(feature, sceneTransformProvider, new DefaultFigureStyle()); assertEquals(geometry, figure.getGeometry()); assertNotNull(figure.getShape()); assertEquals(Figure.Rank.LINE, figure.getRank()); }