private static Coordinate[] convertPath(List<LngLatAlt> path) { Coordinate[] coords = new Coordinate[path.size()]; int i = 0; for (LngLatAlt p : path) { coords[i++] = new Coordinate(p.getLatitude(), p.getLongitude()); } return coords; } }
List<LngLatAlt> shell = new ArrayList<LngLatAlt>(); for (Coordinate c : polygons[i].getExteriorRing().getCoordinates()) { shell.add(new LngLatAlt(c.x, c.y));
@Override public void serialize(LngLatAlt value, JsonGenerator jgen, SerializerProvider provider) throws IOException { jgen.writeStartArray(); jgen.writeNumber(value.getLongitude()); jgen.writeNumber(value.getLatitude()); if (value.hasAltitude()) { jgen.writeNumber(value.getAltitude()); for (double d : value.getAdditionalElements()) { jgen.writeNumber(d); } } jgen.writeEndArray(); } }
southwest.getLongitude(), southwest.getLatitude(), northeast.getLongitude(), northeast.getLatitude() }; final Polygon polygon = new Polygon(); polygon.setBbox(bbox); final List<LngLatAlt> elements = new ArrayList<>(5); elements.add(new LngLatAlt(bbox[SW_LNG], bbox[SW_LAT])); elements.add(new LngLatAlt(bbox[NE_LNG], bbox[SW_LAT])); elements.add(new LngLatAlt(bbox[NE_LNG], bbox[NE_LAT])); elements.add(new LngLatAlt(bbox[SW_LNG], bbox[NE_LAT])); elements.add(new LngLatAlt(bbox[SW_LNG], bbox[SW_LAT])); polygon.add(elements); feature.setBbox(bbox);
protected LngLatAlt deserializeArray(JsonParser jp, DeserializationContext ctxt) throws IOException { LngLatAlt node = new LngLatAlt(); node.setLongitude(extractDouble(jp, ctxt, false)); node.setLatitude(extractDouble(jp, ctxt, false)); node.setAltitude(extractDouble(jp, ctxt, true)); List<Double> additionalElementsList = new ArrayList<Double>(); while (jp.hasCurrentToken() && jp.getCurrentToken() != JsonToken.END_ARRAY) { double element = extractDouble(jp, ctxt, true); if (!Double.isNaN(element)) { additionalElementsList.add(element); } } double[] additionalElements = new double[additionalElementsList.size()]; for (int i = 0; i < additionalElements.length; i++) { additionalElements[i] = additionalElementsList.get(i); } node.setAdditionalElements(additionalElements); return node; }
private void checkAltitudeAndAdditionalElements() { if (!hasAltitude() && hasAdditionalElements()) { throw new IllegalArgumentException("Additional Elements are only valid if Altitude is also provided."); } } }
@Override public void serialize(LngLatAlt value, JsonGenerator jgen, SerializerProvider provider) throws IOException { jgen.writeStartArray(); jgen.writeNumber(value.getLongitude()); jgen.writeNumber(value.getLatitude()); if (value.hasAltitude()) { jgen.writeNumber(value.getAltitude()); for (double d : value.getAdditionalElements()) { jgen.writeNumber(d); } } jgen.writeEndArray(); } }
protected LngLatAlt deserializeArray(JsonParser jp, DeserializationContext ctxt) throws IOException { LngLatAlt node = new LngLatAlt(); node.setLongitude(extractDouble(jp, ctxt, false)); node.setLatitude(extractDouble(jp, ctxt, false)); node.setAltitude(extractDouble(jp, ctxt, true)); List<Double> additionalElementsList = new ArrayList<Double>(); while (jp.hasCurrentToken() && jp.getCurrentToken() != JsonToken.END_ARRAY) { double element = extractDouble(jp, ctxt, true); if (!Double.isNaN(element)) { additionalElementsList.add(element); } } double[] additionalElements = new double[additionalElementsList.size()]; for (int i = 0; i < additionalElements.length; i++) { additionalElements[i] = additionalElementsList.get(i); } node.setAdditionalElements(additionalElements); return node; }
private void checkAltitudeAndAdditionalElements() { if (!hasAltitude() && hasAdditionalElements()) { throw new IllegalArgumentException("Additional Elements are only valid if Altitude is also provided."); } } }
Point p = (Point) geom; GeocoderResult res = new GeocoderResult(); res.setLat(p.getCoordinates().getLatitude()); res.setLng(p.getCoordinates().getLongitude()); res.setDescription(feature.getProperties().get("label").toString());
private List<EventProperty> parseGeometryField(Feature geoFeature) { List<EventProperty> eventProperties = new LinkedList<>(); if(geoFeature.getGeometry() instanceof Point) { Point point = (Point) geoFeature.getGeometry(); eventProperties.add(getEventPropertyGeoJson("longitude", point.getCoordinates().getLongitude(), SO.Longitude)); eventProperties.add(getEventPropertyGeoJson("latitude", point.getCoordinates().getLatitude(), SO.Latitude)); if (point.getCoordinates().hasAltitude()) { eventProperties.add(getEventPropertyGeoJson("altitude", point.getCoordinates().getAltitude(), SO.Altitude)); } } else if (geoFeature.getGeometry() instanceof LineString) { LineString lineString = (LineString) geoFeature.getGeometry(); eventProperties.add(JsonEventProperty.getEventProperty("coorindatesLineString", lineString.getCoordinates())); } else if (geoFeature.getGeometry() instanceof Polygon) { Polygon polygon = (Polygon) geoFeature.getGeometry(); eventProperties.add(JsonEventProperty.getEventProperty("coorindatesPolygon", polygon.getCoordinates())); } else if (geoFeature.getGeometry() instanceof MultiPoint) { MultiPoint multiPoint = (MultiPoint) geoFeature.getGeometry(); eventProperties.add(JsonEventProperty.getEventProperty("coorindatesMultiPoint", multiPoint.getCoordinates())); } else if (geoFeature.getGeometry() instanceof MultiLineString) { MultiLineString multiLineString = (MultiLineString) geoFeature.getGeometry(); eventProperties.add(JsonEventProperty.getEventProperty("coorindatesMultiLineString", multiLineString.getCoordinates())); } else if (geoFeature.getGeometry() instanceof MultiPolygon) { MultiPolygon multiPolygon = (MultiPolygon) geoFeature.getGeometry(); eventProperties.add(JsonEventProperty.getEventProperty("coorindatesMultiPolygon", multiPolygon.getCoordinates())); } else { logger.error("No geometry field found in geofeature: " + geoFeature.toString()); } return eventProperties; }
/** * Create a GeoJSON Point from a LatLng. * * @param latLng the LatLng * @return the GeoServiceLatLng */ default LngLatAlt toLngLatAlt(final LatLng latLng) { if (latLng == null) { return null; } return new LngLatAlt(latLng.lng, latLng.lat); } }
if (geoJsonGeom instanceof org.geojson.Point) { org.geojson.Point geoJsonPoint = (org.geojson.Point) geoJsonGeom; return gf.createPoint(new Coordinate(geoJsonPoint.getCoordinates().getLongitude(), geoJsonPoint .getCoordinates().getLatitude()));
private List<EventProperty> parseGeometryField(Feature geoFeature) { List<EventProperty> eventProperties = new LinkedList<>(); if(geoFeature.getGeometry() instanceof Point) { Point point = (Point) geoFeature.getGeometry(); eventProperties.add(getEventPropertyGeoJson("longitude", point.getCoordinates().getLongitude(), SO.Longitude)); eventProperties.add(getEventPropertyGeoJson("latitude", point.getCoordinates().getLatitude(), SO.Latitude)); if (point.getCoordinates().hasAltitude()) { eventProperties.add(getEventPropertyGeoJson("altitude", point.getCoordinates().getAltitude(), SO.Altitude)); } } else if (geoFeature.getGeometry() instanceof LineString) { LineString lineString = (LineString) geoFeature.getGeometry(); eventProperties.add(JsonEventProperty.getEventProperty("coorindatesLineString", lineString.getCoordinates())); } else if (geoFeature.getGeometry() instanceof Polygon) { Polygon polygon = (Polygon) geoFeature.getGeometry(); eventProperties.add(JsonEventProperty.getEventProperty("coorindatesPolygon", polygon.getCoordinates())); } else if (geoFeature.getGeometry() instanceof MultiPoint) { MultiPoint multiPoint = (MultiPoint) geoFeature.getGeometry(); eventProperties.add(JsonEventProperty.getEventProperty("coorindatesMultiPoint", multiPoint.getCoordinates())); } else if (geoFeature.getGeometry() instanceof MultiLineString) { MultiLineString multiLineString = (MultiLineString) geoFeature.getGeometry(); eventProperties.add(JsonEventProperty.getEventProperty("coorindatesMultiLineString", multiLineString.getCoordinates())); } else if (geoFeature.getGeometry() instanceof MultiPolygon) { MultiPolygon multiPolygon = (MultiPolygon) geoFeature.getGeometry(); eventProperties.add(JsonEventProperty.getEventProperty("coorindatesMultiPolygon", multiPolygon.getCoordinates())); } else { logger.error("No geometry field found in geofeature: " + geoFeature.toString()); } return eventProperties; }
public Point(double longitude, double latitude, double altitude, double... additionalElements) { coordinates = new LngLatAlt(longitude, latitude, altitude, additionalElements); }
private static Coordinate[] convertPath(List<LngLatAlt> path) { Coordinate[] coords = new Coordinate[path.size()]; int i = 0; for (LngLatAlt p : path) { coords[i++] = new Coordinate(p.getLatitude(), p.getLongitude()); } return coords; }
public Point(double longitude, double latitude) { coordinates = new LngLatAlt(longitude, latitude); }
private static Coordinate[] convertPath(List<LngLatAlt> path) { Coordinate[] coords = new Coordinate[path.size()]; int i = 0; for (LngLatAlt p : path) { coords[i++] = new Coordinate(p.getLatitude(), p.getLongitude()); } return coords; }
public Point(double longitude, double latitude) { coordinates = new LngLatAlt(longitude, latitude); }
/** * {@inheritDoc} */ @Override public String toString() { if (placeName == null) { return String.format( "{ \"placeName\":null, " + "\"latitude\":%4.6f, \"longitude\":%4.6f }", location.getLatitude(), location.getLongitude()); } return String.format( "{ \"placeName\":\"%s\", " + "\"latitude\":%4.6f, \"longitude\":%4.6f, " + "\"southwest\": { \"latitude\":%4.6f," + " \"longitude\":%4.6f }, " + "\"northeast\": { \"latitude\":%4.6f," + " \"longitude\":%4.6f } }", placeName, location.getLatitude(), location.getLongitude(), southwest.getLatitude(), southwest.getLongitude(), northeast.getLatitude(), northeast.getLongitude()); } }