use of com.vividsolutions.jts.geom.MultiLineString in project series-rest-api by 52North.
the class GeoJSONTest method testMultiLineStringWithZCoordinate.
@Test
public void testMultiLineStringWithZCoordinate() {
MultiLineString geometry = randomMultiLineString(CRSUtils.EPSG_WGS84);
geometry.apply(new RandomZCoordinateFilter());
geometry.geometryChanged();
readWriteTest(geometry);
}
use of com.vividsolutions.jts.geom.MultiLineString in project series-rest-api by 52North.
the class GeoJSONDecoder method decodeMultiLineString.
protected MultiLineString decodeMultiLineString(JsonNode node, GeometryFactory fac) throws GeoJSONException {
JsonNode coordinates = requireCoordinates(node);
LineString[] lineStrings = new LineString[coordinates.size()];
for (int i = 0; i < coordinates.size(); ++i) {
JsonNode coords = coordinates.get(i);
lineStrings[i] = fac.createLineString(decodeCoordinates(coords));
}
return fac.createMultiLineString(lineStrings);
}
use of com.vividsolutions.jts.geom.MultiLineString in project ddf by codice.
the class TestWfs10JTStoGML200Converter method testGMLToMultiLineStringType.
@Test
public void testGMLToMultiLineStringType() throws JAXBException, SAXException, IOException, ParseException, NullPointerException {
String multiLineStringGML = Wfs10JTStoGML200Converter.convertGeometryToGML(getGeometryFromWkt(MULTILINESTRING));
MultiLineStringType multiLineStringType = (MultiLineStringType) Wfs10JTStoGML200Converter.convertGMLToGeometryType(multiLineStringGML, Wfs10Constants.MULTI_LINESTRING);
List<JAXBElement<? extends GeometryAssociationType>> jaxbElements = multiLineStringType.getGeometryMember();
assertThat(jaxbElements.isEmpty(), is(Boolean.FALSE));
assertThat(jaxbElements.size() == 2, is(Boolean.TRUE));
String coordinates1 = extractLineStringMemberCoordinates(jaxbElements.get(0));
assertThat(coordinates1.isEmpty(), is(Boolean.FALSE));
assertThat(MULTILINESTRING_COORD1.equals(coordinates1), is(Boolean.TRUE));
String coordinates2 = extractLineStringMemberCoordinates(jaxbElements.get(1));
assertThat(coordinates2.isEmpty(), is(Boolean.FALSE));
assertThat(MULTILINESTRING_COORD2.equals(coordinates2), is(Boolean.TRUE));
}
use of com.vividsolutions.jts.geom.MultiLineString in project ddf by codice.
the class TestWfs10JTStoGML200Converter method testMultiLineStringTypeToJAXB.
@Test
public void testMultiLineStringTypeToJAXB() throws JAXBException, SAXException, IOException, ParseException, NullPointerException {
String multiLineString = Wfs10JTStoGML200Converter.convertGeometryToGML(getGeometryFromWkt(MULTILINESTRING));
MultiLineStringType multiLineStringType = (MultiLineStringType) Wfs10JTStoGML200Converter.convertGMLToGeometryType(multiLineString, Wfs10Constants.MULTI_LINESTRING);
JAXBElement<MultiLineStringType> multiLineStringTypeJAXBElement = (JAXBElement<MultiLineStringType>) Wfs10JTStoGML200Converter.convertGeometryTypeToJAXB(multiLineStringType);
JAXB.marshal(multiLineStringTypeJAXBElement, writer);
String xml = writer.toString();
Diff diff = XMLUnit.compareXML(xml, MULTILINESTRING_GML);
assertTrue(XMLUNIT_SIMILAR, diff.similar());
assertThat(diff.similar(), is(Boolean.TRUE));
assertThat(diff.identical(), is(Boolean.FALSE));
}
use of com.vividsolutions.jts.geom.MultiLineString in project ddf by codice.
the class Wfs20JTStoGML321Converter method convertToMultiLineStringType.
// MultiLineStringType maps to MultiCurveType in opengis API
public static MultiCurveType convertToMultiLineStringType(MultiLineString multiLineString, String srsName) {
final MultiCurveType multiCurveType = GML320_OBJECT_FACTORY.createMultiCurveType();
for (int index = 0; index < multiLineString.getNumGeometries(); index++) {
final LineString lineString = (LineString) multiLineString.getGeometryN(index);
multiCurveType.getCurveMember().add(createCurvePropertyType(lineString));
}
multiCurveType.setSrsName(srsName);
return multiCurveType;
}
Aggregations