use of com.revolsys.geometry.model.LineJoin in project com.revolsys.open by revolsys.
the class BufferTest method suite.
public static Test suite() {
final TestSuite suite = new TestSuite("Buffer");
int i = 0;
try (MapReader reader = MapReader.newMapReader(new ClassPathResource("/com/revolsys/jts/test/geometry/operation/buffer.csv"))) {
for (final Map<String, Object> map : reader) {
i++;
final int srid = Maps.getInteger(map, "srid", 0);
final int axisCount = Maps.getInteger(map, "axisCount", 2);
final double scaleXy = Maps.getDouble(map, "scaleXy", 0.0);
final double scaleZ = Maps.getDouble(map, "scaleZ", 0.0);
final double[] scales = { scaleXy, scaleXy, scaleZ };
final GeometryFactory geometryFactory = GeometryFactory.fixed(srid, axisCount, scales);
final String sourceWkt = (String) map.get("sourceWkt");
final Geometry sourceGeometry = geometryFactory.geometry(sourceWkt);
final double distance = Maps.getDouble(map, "bufferDistance", 0.0);
final int quadrantSegments = Maps.getInteger(map, "quadrantSegments", BufferParameters.DEFAULT_QUADRANT_SEGMENTS);
final LineCap endCapStyle = LineCap.fromGeometryValue(Maps.getInteger(map, "endCapStyle", LineCap.ROUND.getGeometryValue()));
final LineJoin joinStyle = LineJoin.fromGeometryValue(Maps.getInteger(map, "joinStyle", LineJoin.ROUND.getGeometryValue()));
final double mitreLimit = Maps.getDouble(map, "mitreLimit", BufferParameters.DEFAULT_MITRE_LIMIT);
final BufferParameters parameters = new BufferParameters(quadrantSegments, endCapStyle, joinStyle, mitreLimit);
final Boolean expectedEmpty = Maps.getBoolean(map, "expectedEmpty");
final Boolean expectedHoles = Maps.getBoolean(map, "expectedHoles");
final Boolean expectedContains = Maps.getBoolean(map, "expectedContains");
final Double expectedArea = Maps.getDouble(map, "expectedArea");
final String expectedWkt = (String) map.get("expectedWkt");
final Geometry expectedGeometry = geometryFactory.geometry(expectedWkt);
final BufferTest test = new BufferTest(i, sourceGeometry, distance, parameters, expectedEmpty, expectedHoles, expectedContains, expectedArea, expectedGeometry);
suite.addTest(test);
}
}
return suite;
}
Aggregations