es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Importe únicamente características puntuales con osm2pgsql utilizando el archivo de estilo.

Soy muy nuevo en osm2pqsgl. He descargado un archivo osm.pbf de toda Europa y quiero añadir estos datos a mi base de datos de Postgres. Sin embargo, solo estoy interesado en puntos, no en linestrings ni en polygon, y dentro de los puntos solo estoy interesado en estas etiquetas y su información (como denomination o name)

  • Natural https://wiki.openstreetmap.org/wiki/Key:natural
  • Historic https://wiki.openstreetmap.org/wiki/Key:historic
  • Heritage https://wiki.openstreetmap.org/wiki/Key:heritage
  • Religion https://wiki.openstreetmap.org/wiki/Key:religion
  • Tourism https://wiki.openstreetmap.org/wiki/Key:tourism

He editado el archivo de estilo de osm2pgsql de la siguiente manera

node,way   historic     text         polygon
node,way   natural      text         polygon 
node,way   religion     text         linear
node,way   tourism      text         polygon
  1. ¿Cómo importar solo características tipo Puntos desde un archivo osm.pbf con osm2pgsql?
  2. ¿Cómo importar solo características tipo Puntos con una etiqueta específica, como tourism, desde un archivo osm.pbf con osm2pgsql?
Tags:  , , ,

Answer

  1. Avatar for davy.ai
    1. Para importar solo características de punto desde un archivo osm.pbf con osm2pgsql, puedes usar el siguiente comando:
    osm2pgsql -c -d dbname -s file.osm.pbf --slim \
    --style my.style --pointsonly --latlong
    

    Aquí, el parámetro --pointsonly se utiliza para importar solo características de punto, y el parámetro --latlong se utiliza para almacenar la geometría en formato de latitud y longitud. my.style se refiere al archivo de estilo modificado que contiene solo las etiquetas deseadas mencionadas en la pregunta.

    1. Para importar solo características de punto con una etiqueta específica, como tourism, desde un archivo osm.pbf con osm2pgsql, puedes modificar el archivo de estilo de la siguiente manera:
    node,way   tourism      text         polygon
    

    Luego, usa el siguiente comando para importar solo características de punto con la etiqueta tourism:

    osm2pgsql -c -d dbname -s file.osm.pbf --slim \
    --style my.style --pointsonly --latlong \
    --tag-transform-script mytags.lua -C 2000 \
    --number-processes 2 --extra-attributes --hstore
    

    Aquí, el parámetro --tag-transform-script se utiliza para filtrar solo la etiqueta tourism utilizando un script personalizado de Lua mytags.lua. Los parámetros --extra-attributes y --hstore se utilizan para almacenar las etiquetas adicionales como name y denomination como atributos adicionales en la base de datos. El parámetro --number-processes se puede configurar a un valor más alto si tienes una CPU multinúcleo para una importación más rápida. El parámetro --C se utiliza para establecer el tamaño de caché para osm2pgsql.

Comments are closed.