java neo4j neo4j-spatial

java - Neo4j-spatial importando vértices MissMatch OSM encontrados



(1)

Este es mi método para importar osmdata:

private void importOSM(String osm){ OSMImporter importer = new OSMImporter(osm); importer.setCharset(Charset.forName("UTF-8")); try{ importer.importFile(graphDb,osm,false,5000,true); importer.reIndex(graphDb,10000); }catch(Exception e){ System.out.println("__________Import Error!! "+e.getMessage()); e.printStackTrace(); } }

Cuando importo un osmdata obtengo esto:

Mismatching vertices size for Polygon:Node[1799298]: 1 != 2 Mismatching vertices size for LineString:Node[2118494]: 14 != 23 Mismatching vertices size for Polygon:Node[1776324]: 1 != 2 Mismatching vertices size for Polygon:Node[1886154]: 1 != 2 Mismatching vertices size for Polygon:Node[2124799]: 1 != 6 Mismatching vertices size for LineString:Node[2207017]: 60 != 85 Mismatching vertices size for LineString:Node[2207587]: 45 != 154 Mismatching vertices size for LineString:Node[2213928]: 8 != 16 Mismatching vertices size for LineString:Node[2213939]: 8 != 16 Mismatching vertices size for LineString:Node[2212505]: 3 != 14 Mismatching vertices found 100 times Mismatching vertices found 200 times Mismatching vertices found 300 times Mismatching vertices found 400 times Mismatching vertices found 500 times Mismatching vertices found 600 times Mismatching vertices found 700 times Mismatching vertices found 800 times Mismatching vertices found 900 times Mismatching vertices found 1000 times Mismatching vertices found 1100 times

Creo que esto se debe a que la osmdata que importé es solo un extracto y algunas calles no se pueden importar como un todo. Importé san-francisco.osm desde http://metro.teczno.com/#san-francisco (21 MB bzip''ed datos XML OSM). Entonces mi pregunta es, ¿hay algo mal en mi código o con los datos que estoy importando o es esto normal?

saludos


Sí, esto es normal y tu explicación es correcta. Cuando se genera un volcado de OSM, se realiza mediante nodos de nodo dentro de los límites. Estos mismos nodos pertenecen a formas y relaciones que se extienden más allá de los límites, por lo que siempre se recortan muchas Geometrías y, como consecuencia, muchas advertencias como esta del código espacial de Neo4j que intenta dar sentido al archivo OSM.

Verás advertencias como esta para los datos OSM incluidos en los casos de prueba también. Es difícil encontrar datos OSM que se hayan limpiado por completo para que todas las Geometrías estén totalmente contenidas.

Es posible, sin embargo, que los errores reales puedan causar las mismas advertencias. Pero recuerdo que rastreé muchas de estas advertencias cuando manejé por primera vez el importador OSM, y siempre encontré que se debían a formas que se cortaron durante la exportación.