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; } }
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());
org.geojson.Point geoJsonPoint = (org.geojson.Point) geoJsonGeom; return gf.createPoint(new Coordinate(geoJsonPoint.getCoordinates().getLongitude(), geoJsonPoint .getCoordinates().getLatitude()));
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; }
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; }
private static Polygon toJts(List<LngLatAlt> geoJsonExtRing, GeometryFactory gf) { List<Coordinate> coordinates = geoJsonExtRing.stream() .map(lla -> new Coordinate(lla.getLongitude(), lla.getLatitude())).collect(Collectors.toList()); return gf.createPolygon(coordinates.toArray(new Coordinate[coordinates.size()])); }
/** * {@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()); } }
private Optional<LatLonArea> computeAveragePosition( final List<LngLatAlt> coordinates, final int numberCoordinates) { double lat = 0; double lon = 0; double minLat = 180; double maxLat = -180; double minLon = 180; double maxLon = -180; for (int i = 0; i < numberCoordinates; i++) { final LngLatAlt c = coordinates.get(i); lat += c.getLatitude(); lon += c.getLongitude(); minLat = minLat < c.getLatitude() ? minLat : c.getLatitude(); maxLat = maxLat > c.getLatitude() ? maxLat : c.getLatitude(); minLon = minLon < c.getLongitude() ? minLon : c.getLongitude(); maxLon = maxLon > c.getLongitude() ? maxLon : c.getLongitude(); } final double dLat = Math.abs(maxLat - minLat); final double dLon = Math.abs(maxLon - minLon); // This area is very crude but... final double area = dLat * dLon; return Optional.of(new LatLonArea(lat / numberCoordinates, lon / numberCoordinates, area)); }
@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(); } }
private Optional<LatLon> toGeoLocation(final LngLatAlt coordinates) { return Optional.of(new LatLon(coordinates.getLatitude(), coordinates.getLongitude())); } }
@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(); } }
/** * Create a LatLng from a GeoJSON LngLatAlt. * * @param lla the LngLatAlt * @return the LatLng */ default LatLng toLatLng(final LngLatAlt lla) { if (lla == null) { return null; } return new LatLng(lla.getLatitude(), lla.getLongitude()); }
private List<NavigationPosition> extractPositions(List<Feature> features) { List<NavigationPosition> result = new ArrayList<>(features.size()); for (Feature feature : features) { GeoJsonObject geometry = feature.getGeometry(); if (!(geometry instanceof Point)) continue; Point point = (Point) geometry; LngLatAlt lngLatAlt = point.getCoordinates(); String type = feature.getProperty("osm_key"); result.add(new SimpleNavigationPosition(lngLatAlt.getLongitude(), lngLatAlt.getLatitude(), null, getDisplayName(feature) + " (" + type + ")")); } return result; }
private static POI toPoi(Feature feature) { LngLatAlt coordinates = ((Point)feature.getGeometry()).getCoordinates(); Map<String, String> osmTags = feature.getProperty("osmTags"); if (osmTags == null) osmTags = new HashMap<>(); String openingHours = osmTags.get("opening_hours"); if (openingHours != null) openingHours = openingHours.replaceAll("; *", "\n"); String website = feature.getProperty("website"); if (TextUtils.isEmpty(website)) website = osmTags.get("url"); return new POI(Integer.parseInt(feature.getProperty("id")), feature.getProperty("name"), feature.getProperty("notes"), website, osmTags.get("phone"), openingHours, coordinates.getLatitude(), coordinates.getLongitude()); }
southwest.getLatitude(), northeast.getLongitude(), northeast.getLatitude() }; final Polygon polygon = new Polygon();
return new PlaceInfo(item.getPlaceName(), location.getLatitude(), location.getLongitude());
private static GeoPlace toGeoPlace(Feature feature) { LngLatAlt coordinates = ((Point)feature.getGeometry()).getCoordinates(); return new GeoPlace(new GeoPoint(coordinates.getLatitude(), coordinates.getLongitude()), (String)feature.getProperty("name"), (String)feature.getProperty("near")); } }
private static Photo toPhoto(Feature feature) { LngLatAlt coordinates = ((Point)feature.getGeometry()).getCoordinates(); GeoPoint geoPoint = new GeoPoint(coordinates.getLatitude(), coordinates.getLongitude()); return new Photo(propertyOrDefault(feature, "id", -1), propertyOrDefault(feature, "categoryId", "Not known"), propertyOrDefault(feature, "metacategoryId", "Not known"), (String)feature.getProperty("caption"), (String)feature.getProperty("shortlink"), (String)feature.getProperty("thumbnailUrl"), geoPoint, toVideos(propertyOrDefault(feature, "videoFormats", Collections.<String, Object>emptyMap()))); }
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; }
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; }