use of org.geotoolkit.storage.feature.FeatureCollection in project geotoolkit by Geomatys.
the class IntersectionTest method buildFeatureInterList.
private static FeatureSet buildFeatureInterList() throws FactoryException {
type = createSimpleType();
final FeatureCollection featureList = FeatureStoreUtilities.collection("noname", type);
Feature myFeature1 = type.newInstance();
LinearRing ring = geometryFactory.createLinearRing(new Coordinate[] { new Coordinate(1.0, 4.0), new Coordinate(1.0, 5.0), new Coordinate(2.0, 5.0), new Coordinate(2.0, 4.0), new Coordinate(1.0, 4.0) });
MultiPoint multPt = geometryFactory.createMultiPoint(new Coordinate[] { // nothing
new Coordinate(1.0, 6.0), // intersection with a point
new Coordinate(3.0, 6.0), // intersection with a polygon
new Coordinate(3.5, 3.5) });
myFeature1.setPropertyValue(AttributeConvention.IDENTIFIER, "id-11");
myFeature1.setPropertyValue("name", "feature11");
myFeature1.setPropertyValue("geom1", geometryFactory.createPolygon(ring, null));
myFeature1.setPropertyValue("geom2", multPt);
featureList.add(myFeature1);
Feature myFeature2 = type.newInstance();
ring = geometryFactory.createLinearRing(new Coordinate[] { new Coordinate(4.0, 2.0), new Coordinate(4.0, 5.0), new Coordinate(7.0, 5.0), new Coordinate(7.0, 2.0), new Coordinate(4.0, 2.0) });
LineString line = geometryFactory.createLineString(new Coordinate[] { new Coordinate(8.0, 4.5), new Coordinate(11.0, 4.5) });
myFeature2.setPropertyValue(AttributeConvention.IDENTIFIER, "id-12");
myFeature2.setPropertyValue("name", "feature12");
myFeature2.setPropertyValue("geom1", geometryFactory.createPolygon(ring, null));
myFeature2.setPropertyValue("geom2", line);
featureList.add(myFeature2);
Feature myFeature3 = type.newInstance();
ring = geometryFactory.createLinearRing(new Coordinate[] { new Coordinate(0.0, 0.0), new Coordinate(0.0, 8.0), new Coordinate(10.0, 8.0), new Coordinate(10.0, 0.0), new Coordinate(0.0, 0.0) });
myFeature3.setPropertyValue(AttributeConvention.IDENTIFIER, "id-13");
myFeature3.setPropertyValue("name", "feature13");
myFeature3.setPropertyValue("geom1", geometryFactory.createPolygon(ring, null));
myFeature3.setPropertyValue("geom2", null);
featureList.add(myFeature3);
return featureList;
}
use of org.geotoolkit.storage.feature.FeatureCollection in project geotoolkit by Geomatys.
the class MergeTest method buildFeatureList4.
private static FeatureCollection buildFeatureList4() throws FactoryException {
type = createSimpleType3();
final FeatureCollection featureList = FeatureStoreUtilities.collection("noname", type);
Feature myFeature1 = type.newInstance();
LinearRing ring = geometryFactory.createLinearRing(new Coordinate[] { new Coordinate(1.0, 4.0), new Coordinate(1.0, 5.0), new Coordinate(2.0, 5.0), new Coordinate(2.0, 4.0), new Coordinate(1.0, 4.0) });
myFeature1.setPropertyValue(AttributeConvention.IDENTIFIER, "id-31");
myFeature1.setPropertyValue("height", 31);
myFeature1.setPropertyValue("color", "grey");
myFeature1.setPropertyValue("geom4", geometryFactory.createPolygon(ring, null));
featureList.add(myFeature1);
Feature myFeature2 = type.newInstance();
ring = geometryFactory.createLinearRing(new Coordinate[] { new Coordinate(4.0, 2.0), new Coordinate(4.0, 5.0), new Coordinate(7.0, 5.0), new Coordinate(7.0, 2.0), new Coordinate(4.0, 2.0) });
myFeature2.setPropertyValue(AttributeConvention.IDENTIFIER, "id-32");
myFeature2.setPropertyValue("height", 32);
myFeature2.setPropertyValue("color", "red");
myFeature2.setPropertyValue("geom4", geometryFactory.createPolygon(ring, null));
featureList.add(myFeature2);
Feature myFeature3 = type.newInstance();
ring = geometryFactory.createLinearRing(new Coordinate[] { new Coordinate(0.0, 0.0), new Coordinate(0.0, 8.0), new Coordinate(10.0, 8.0), new Coordinate(10.0, 0.0), new Coordinate(0.0, 0.0) });
myFeature3.setPropertyValue(AttributeConvention.IDENTIFIER, "id-33");
myFeature3.setPropertyValue("height", 33);
myFeature3.setPropertyValue("color", "blue");
myFeature3.setPropertyValue("geom4", geometryFactory.createPolygon(ring, null));
featureList.add(myFeature3);
return featureList;
}
use of org.geotoolkit.storage.feature.FeatureCollection in project geotoolkit by Geomatys.
the class RegroupTest method testRegroupDefaultGeometry.
@Test
public void testRegroupDefaultGeometry() throws ProcessException, NoSuchIdentifierException, FactoryException {
// Inputs
final FeatureCollection featureList = buildFeatureList();
// Process
ProcessDescriptor desc = ProcessFinder.getProcessDescriptor(GeotkProcessingRegistry.NAME, "vector:regroup");
ParameterValueGroup in = desc.getInputDescriptor().createValue();
in.parameter("feature_in").setValue(featureList);
in.parameter("regroup_attribute").setValue("height");
org.geotoolkit.process.Process proc = desc.createProcess(in);
// Features out
final FeatureCollection featureListOut = (FeatureCollection) proc.call().parameter("feature_out").getValue();
// Expected Features out
final FeatureCollection featureListResult = buildResultList1();
compare(featureListResult, featureListOut);
}
use of org.geotoolkit.storage.feature.FeatureCollection in project geotoolkit by Geomatys.
the class RegroupTest method buildFeatureList.
private static FeatureCollection buildFeatureList() throws FactoryException {
type = createSimpleType();
final FeatureCollection featureList = FeatureStoreUtilities.collection("noname", type);
Feature myFeature1 = type.newInstance();
LinearRing ring = GF.createLinearRing(new Coordinate[] { new Coordinate(3.0, 3.0), new Coordinate(3.0, 4.0), new Coordinate(4.0, 4.0), new Coordinate(4.0, 3.0), new Coordinate(3.0, 3.0) });
myFeature1.setPropertyValue(AttributeConvention.IDENTIFIER, "id-01");
myFeature1.setPropertyValue("color", "grey");
myFeature1.setPropertyValue("height", 9);
myFeature1.setPropertyValue("type", "church");
myFeature1.setPropertyValue("geom1", GF.createPolygon(ring, null));
myFeature1.setPropertyValue("geom2", GF.createPoint(new Coordinate(3.5, 3.5)));
featureList.add(myFeature1);
Feature myFeature2 = type.newInstance();
ring = GF.createLinearRing(new Coordinate[] { new Coordinate(5.0, 6.0), new Coordinate(5.0, 7.0), new Coordinate(6.0, 7.0), new Coordinate(6.0, 6.0), new Coordinate(5.0, 6.0) });
MultiPoint multPt = GF.createMultiPoint(new Coordinate[] { new Coordinate(5.0, 4.0), new Coordinate(3.0, 6.0), new Coordinate(4.0, 7.0), new Coordinate(5.5, 6.5) });
myFeature2.setPropertyValue(AttributeConvention.IDENTIFIER, "id-02");
myFeature2.setPropertyValue("color", "blue");
myFeature2.setPropertyValue("height", 3);
myFeature2.setPropertyValue("type", "office");
myFeature2.setPropertyValue("geom1", GF.createPolygon(ring, null));
myFeature2.setPropertyValue("geom2", multPt);
featureList.add(myFeature2);
Feature myFeature3 = type.newInstance();
ring = GF.createLinearRing(new Coordinate[] { new Coordinate(9.0, 4.0), new Coordinate(9.0, 5.0), new Coordinate(11.0, 5.0), new Coordinate(11.0, 4.0), new Coordinate(9.0, 4.0) });
LineString line = GF.createLineString(new Coordinate[] { new Coordinate(7.0, 0.0), new Coordinate(9.0, 3.0) });
myFeature3.setPropertyValue(AttributeConvention.IDENTIFIER, "id-03");
myFeature3.setPropertyValue("color", "black");
myFeature3.setPropertyValue("height", 2);
myFeature3.setPropertyValue("type", "office");
myFeature3.setPropertyValue("geom1", GF.createPolygon(ring, null));
myFeature3.setPropertyValue("geom2", line);
featureList.add(myFeature3);
Feature myFeature4 = type.newInstance();
ring = GF.createLinearRing(new Coordinate[] { new Coordinate(2.0, 2.0), new Coordinate(2.0, 3.0), new Coordinate(3.0, 3.0), new Coordinate(3.0, 2.0), new Coordinate(2.0, 2.0) });
myFeature4.setPropertyValue(AttributeConvention.IDENTIFIER, "id-04");
myFeature4.setPropertyValue("color", "yellow");
myFeature4.setPropertyValue("height", 2);
myFeature4.setPropertyValue("type", "post office");
myFeature4.setPropertyValue("geom1", GF.createPolygon(ring, null));
myFeature4.setPropertyValue("geom2", GF.createPoint(new Coordinate(10, 5)));
featureList.add(myFeature4);
Feature myFeature5 = type.newInstance();
ring = GF.createLinearRing(new Coordinate[] { new Coordinate(6.0, 7.0), new Coordinate(6.0, 8.0), new Coordinate(7.0, 8.0), new Coordinate(7.0, 7.0), new Coordinate(6.0, 7.0) });
line = GF.createLineString(new Coordinate[] { new Coordinate(8.0, 0.0), new Coordinate(5.0, 3.0) });
myFeature5.setPropertyValue(AttributeConvention.IDENTIFIER, "id-05");
myFeature5.setPropertyValue("color", "yellow");
myFeature5.setPropertyValue("height", 9);
myFeature5.setPropertyValue("type", "office");
myFeature5.setPropertyValue("geom1", GF.createPolygon(ring, null));
myFeature5.setPropertyValue("geom2", line);
featureList.add(myFeature5);
Feature myFeature6 = type.newInstance();
ring = GF.createLinearRing(new Coordinate[] { new Coordinate(15.0, 10.0), new Coordinate(15.0, 11.0), new Coordinate(16.0, 11.0), new Coordinate(16.0, 10.0), new Coordinate(15.0, 10.0) });
LinearRing ring2 = GF.createLinearRing(new Coordinate[] { new Coordinate(8.0, 0.0), new Coordinate(9.0, 6.0), new Coordinate(10.0, 2.0), new Coordinate(8.0, 0.0) });
myFeature6.setPropertyValue(AttributeConvention.IDENTIFIER, "id-06");
myFeature6.setPropertyValue("color", "black");
myFeature6.setPropertyValue("height", 2);
myFeature6.setPropertyValue("type", "church");
myFeature6.setPropertyValue("geom1", GF.createPolygon(ring, null));
myFeature6.setPropertyValue("geom2", GF.createPolygon(ring2, null));
featureList.add(myFeature6);
return featureList;
}
use of org.geotoolkit.storage.feature.FeatureCollection in project geotoolkit by Geomatys.
the class RegroupTest method buildResultList1.
private static FeatureCollection buildResultList1() throws FactoryException {
type = createSimpleResultType();
final FeatureCollection featureList = FeatureStoreUtilities.collection("noname", type);
Feature myFeature1 = type.newInstance();
LinearRing ring = GF.createLinearRing(new Coordinate[] { new Coordinate(5.0, 6.0), new Coordinate(5.0, 7.0), new Coordinate(6.0, 7.0), new Coordinate(6.0, 6.0), new Coordinate(5.0, 6.0) });
myFeature1.setPropertyValue(AttributeConvention.IDENTIFIER, "height-3");
myFeature1.setPropertyValue("height", 3);
myFeature1.setPropertyValue("geom1", GF.createPolygon(ring, null));
featureList.add(myFeature1);
Feature myFeature2 = type.newInstance();
LinearRing ring1 = GF.createLinearRing(new Coordinate[] { new Coordinate(6.0, 7.0), new Coordinate(6.0, 8.0), new Coordinate(7.0, 8.0), new Coordinate(7.0, 7.0), new Coordinate(6.0, 7.0) });
LinearRing ring2 = GF.createLinearRing(new Coordinate[] { new Coordinate(3.0, 3.0), new Coordinate(3.0, 4.0), new Coordinate(4.0, 4.0), new Coordinate(4.0, 3.0), new Coordinate(3.0, 3.0) });
Polygon poly1 = GF.createPolygon(ring1, null);
Polygon poly2 = GF.createPolygon(ring2, null);
myFeature2.setPropertyValue(AttributeConvention.IDENTIFIER, "height-9");
myFeature2.setPropertyValue("height", 9);
myFeature2.setPropertyValue("geom1", GF.createMultiPolygon(new Polygon[] { poly1, poly2 }));
featureList.add(myFeature2);
Feature myFeature3 = type.newInstance();
ring = GF.createLinearRing(new Coordinate[] { new Coordinate(15.0, 10.0), new Coordinate(15.0, 11.0), new Coordinate(16.0, 11.0), new Coordinate(16.0, 10.0), new Coordinate(15.0, 10.0) });
ring1 = GF.createLinearRing(new Coordinate[] { new Coordinate(9.0, 4.0), new Coordinate(9.0, 5.0), new Coordinate(11.0, 5.0), new Coordinate(11.0, 4.0), new Coordinate(9.0, 4.0) });
ring2 = GF.createLinearRing(new Coordinate[] { new Coordinate(2.0, 2.0), new Coordinate(2.0, 3.0), new Coordinate(3.0, 3.0), new Coordinate(3.0, 2.0), new Coordinate(2.0, 2.0) });
poly1 = GF.createPolygon(ring, null);
poly2 = GF.createPolygon(ring1, null);
Polygon poly3 = GF.createPolygon(ring2, null);
myFeature3.setPropertyValue(AttributeConvention.IDENTIFIER, "height-2");
myFeature3.setPropertyValue("height", 2);
myFeature3.setPropertyValue("geom1", GF.createMultiPolygon(new Polygon[] { poly1, poly2, poly3 }));
featureList.add(myFeature3);
return featureList;
}
Aggregations