pnorman / ogr2osm Goto Github PK
View Code? Open in Web Editor NEWThis project forked from andrewguertin/ogr2osm
pnorman's version of UVM's Rewrite of ogr2osm
License: Other
This project forked from andrewguertin/ogr2osm
pnorman's version of UVM's Rewrite of ogr2osm
License: Other
File "ogr2osm/ogr2osm.py", line 579
featuresmap = {feature.geometry : feature for feature in features}
^
SyntaxError: invalid syntax
Python version 2.6.6, stable version in debian. The ^ is actually pointing at the "for".
Better results are obtained using an explicit utf-8 encoding of tag values:
f.write(etree.tostring(xmlobject, pretty_print=True,encoding='UTF-8'))
I have cloned the project in Mac. write a translation file which is as follows. Note that my shapefile column names are almost identical to osm tags.
def filterTags(attrs):
if not attrs:
return
tags = {}
if 'name' in attrs:
tags['name'] = attrs['name'].strip()
if 'oneway' in attrs:
tags['oneway'] = attrs['oneway'].strip()
if 'osm_id' in attrs:
tags['osm_id'] = attrs['osm_id'].strip()
if 'fclass' in attrs:
tags['highway'] = attrs['fclass'].strip()
if 'ref' in attrs:
tags['ref'] = attrs['ref'].strip()
if 'maxspeed' in attrs:
tags['maxspeed'] = attrs['maxspeed'].strip()
if 'layer' in attrs:
tags['layer'] = attrs['layer'].strip()
if 'bridge' in attrs:
tags['bridge'] = attrs['bridge'].strip()
if 'tunnel' in attrs:
tags['tunnel'] = attrs['tunnel'].strip()
if 'road_type' in attrs:
tags['rnh:roadtype'] = attrs['road_type'].strip()
tags['source'] = 'OWN Data'
return tags
Now I am using the following command but its not returning any output osm file.
./ogr2osm.py -t translations/road_translation.py -o roads.osm -f -v --no-upload-false --never-download --never-upload Road/Road.shp
Where am I doing wrong?
The convention is to return None
when you want your translation to skip an object. That seems to cause an error in 9c4b6ea:
Merging points
Making list
Checking list
Merging duplicate points in ways
Outputting XML
Traceback (most recent call last):
File "ogr2osm.py", line 616, in <module>
output()
File "ogr2osm.py", line 563, in output
for (key, value) in featuresmap[node].tags.items():
AttributeError: 'NoneType' object has no attribute 'items'
Frequently leading or trailing spaces are found in some fields coming from ESRI tools. These spaces are not intentional and should be stripped
See http://lists.openstreetmap.org/pipermail/imports/2013-January/001749.html for more information.
In trying to reproduce the steps described at this mechanical import proposal page I use this command line, similar to what they reccommend
python ogr2osm.py -v -f 493011_ctr/CTR_493011_pol.shp -e 32633 --no-upload-false
but I get a lot of errors like this
unhandled geometry, type: 3003
and the resulting file is empty
I m on Fedora 27, I installed gdal with dnf and checked out ogr2osm through git
You can gat the shape files I am using here
If Big polygon that contain multiple ways , and inside is not any inner element, return type Multipolygon/Relation but do not apply any tags on multipolygon. tags only on ways. When display it's not correct, Example big river polygon that contains multiple ways but do not has inner element did not display correctly
running ogr2osm.py --help displays the help message then reports
free(): invalid pointer
Aborted (core dumped)
Running python 3.8 in Fedora. I believe I have all of the import modules needed.
if OPTIONS.saveid: with open(OPTIONS.saveid, 'wb') as ff: ff.write(str(Geometry.elementIdCounter))
if open(...,"wb") then not str(), if str() then "w" and write in textmode
BTW - Nice work :)
addparent is not called on new relation members in splitWayInRelation.
It's also not called on the feature-geometry pairs in splitWay (in contrast to parseFeature).
Neither is a serious issue, the opposite connections are readily accessible.
Hello everybody,
I am looking fro a way to convert DWG data into OSM XML format inorder to import it later in a project based on the openstreetmap-website project. According to the list stated on this wiki-site, ogr2osm should be able to consume AutoCad DWG data.
When I try to convert a DWG-file with the help of osm2ogr, I get this error:
"OGR failed to open ../path/to/myFile.dwg, format may be unsupported"
Am I missing something? Any help would be more than appreciated!
Thanks in advance!
I use 256G memory and 21T free disk space to run 9G a.gdb. After 9 hours running ,It occurs "killed".
How could this happen?What can i do to fix this? Thanks for any help.
Sometimes shapefiles have nodes that are a couple of mm apart and should be turned into shared ways. It would be useful to be able to specify a tolerance for matching nodes for these cases.
It would be useful to be able to pass config options to translations modules. This would allow for more generalized translations as well as debug code in translation modules that is later disabled.
When converting .shp to .osm it happens that the result has some shared borders that are represented as duplicated wasy
JOSM validator reports;
I was using my translation rules:
https://github.com/stefanb/ogr2osm-translations/blob/master/raba-kgz.py
but that is probably irrelevant.
The same problems appears when opening a shapefile directly in JOSM (no ogr2osm involved) due to shapefile structure. Reported an issue 10743
filterTags KeyError exceptions don't seem to make their way up
Some wasy are too long in the source shapefile and Ogr2osm preserves that as it is. During the transformation they sould be split into no more than 2000 node part so that it would be acceptable by the OSM API.
Pushing the limit and splitting it at exactly 2000 nodes mark might represent a problem for users when adding a new node in the way (eg a new crossing etc). This is why OSM Inspector is raising warnings for all ways that are more than 1900 nodes long:
Long ways with more than 1900 nodes are shown in blue. These should probably be split up into smaller parts. The OSM API allows a way to have up to 2000 nodes.
Ogr2osm should thus split at 1900 or slightly lower limit, eg 1800.
Still with http://people.debian.org/~naoliv/misc/shape-ogr2osm.tar.bz2 it seems that there is a problem when using PROJ.4 strings.
Normal run:
$ ./ogr2osm.py ../SP_USINAS.SHP
running with lxml.etree
Preparing to convert file '/tmp/d/SP_USINAS.SHP' to '/tmp/d/ogr2osm/SP_USINAS.osm'.
Will try to detect projection from source metadata, or fall back to EPSG:4326
Using default translations
Using default filterLayer
Using default filterFeature
Using default filterTags
Using default filterFeaturePost
Using default preOutputTransform
Parsing data
Detected projection metadata:
GEOGCS["GCS_South_American_1969",
DATUM["South_American_Datum_1969",
SPHEROID["GRS_1967_Modified",6378160.0,298.25]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]]
Merging points
Making list
Checking list
Outputting XML
With string:
$ ./ogr2osm.py -v -p "+proj=utm +zone=23 +south +ellps=GRS67 +towgs84=-66.87,4.37,-38.52" ../SP_USINAS.SHP
running with lxml.etree
Preparing to convert file '/tmp/d/SP_USINAS.SHP' to '/tmp/d/ogr2osm/SP_USINAS.osm'.
Will use the PROJ.4 string: +proj=utm +zone=23 +south +ellps=GRS67 +towgs84=-66.87,4.37,-38.52
Using default translations
Using default filterLayer
Using default filterFeature
Using default filterTags
Using default filterFeaturePost
Using default preOutputTransform
Parsing data
Merging points
Making list
Checking list
Outputting XML
and the result is very different. Nothing visible with JOSM and only this inside the file:
<?xml version="1.0"?>
<osm version="0.6" upload="false" generator="uvmogr2osm"><node lat="-89.999400039" visible="true" lon="176.260998507" id="-1"><tag k="USINA_ID" v=" 37"/><tag k="NOME" v="3 IRMAOS"/><tag k="PROPRIET_R" v="CESP - COMPANHIA ENERGÉTICA DE SÃO PAULO"/><tag k="LONGITUDE" v=" -51.312800"/><tag k="GEO_ID" v=" 37"/><tag k="SITUA__O" v="EM CONSTRUÇÃO"/><tag k="LATITUDE" v=" -20.680400"/><tag k="POT_NCIA" v="1.292.000 kM"/></node></osm>
Dear Mr Norman,
I'm on a mission to convert a Shapefile supplied by Nokia HERE (Microsoft) for use in the open source Navit satnav application. Navit have their own Planet Extractor website where users can download OSM derived .bin files for use with Navit. I have also successfully used Maptool to convert both OSM XML and OSM Protobuf files from Geofabrik to the .bin format required by Navit. However the OSM map for Northern Ireland is missing a lot of crucial data, for example most speed limit information etc.
The steps I have taken so far (Lubuntu 16.04.1 LTS 64bit, 8GB Physical + 8GB swapfile) have been as follows:
1: Convert the HERE Shapefile folder to a single .osm file using your ogr2osm utility: SUCCESS
2: Compress .osm file to bz2 as required by Maptool: SUCCESS
3: Convert osm.bz2 file to Navit friendly .bin file using Maptool: FAIL
The message I get is as follows:
peter@peter-desktop:~$ cd ogr2osm
peter@peter-desktop:~/ogr2osm$ bzcat hereni.osm.bz2 | maptool hereni.bin
PROGRESS: Phase 1: reading input data 0:00 0 MB
PROGRESS1: Processed 0 nodes (0 out) 0 ways 0 relations 0 tiles 0:00 0 MB
INFO: Nodes out of sequence (new 4294967293 vs old 4294967294), adding hash
INFO: Ways out of sequence (new -55 vs old -1), adding hash
FATAL: wrong line in input data (does not start with '<'): >
This does not look like a valid OSM file.
Note that maptool can only process OSM files without wrapped or empty lines.
peter@peter-desktop:~/ogr2osm$ "
As I said, I've used Maptool to convert OSM files (osm.bz2) from Geofabrik into the required .bin files without any problems, and they work, but it's not happy with the one I created myself from a HERE shapefile using ogr2osm. The process of using ogr2osm went smoothly without any errors.
Any interpretation of the error message above will be most gratefully received!!!
Regards,
Peter McKinley
Hello there,
I'm using python 3.4 on Windows with GDAL installed. To be sure of that, I run:
c:\Users\arlindo.pereira\Downloads>python
Python 3.4.0b1 (v3.4.0b1:3405dc9a6afa, Nov 24 2013, 19:18:21) [MSC v.1600 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import gdal
>>> ^Z
Now, when I try to run ogr2osm without no arguments (should only see the readme file) I get this:
c:\Users\arlindo.pereira\Downloads\ogr2osm>python ogr2osm.py
File "ogr2osm.py", line 320
reproject = lambda(geometry): None
^
SyntaxError: invalid syntax
Hello everyone. I have use
python ogr2osm.py /root/PycharmProjects/GDB/aaa.gdb -f -o /root/PycharmProjects/GDB/a.osm"
It present as follow:
running with lxml.etree
Preparing to convert '/root/PycharmProjects/GDB/aaa.gdb' to '/root/PycharmProjects/GDB/a.osm'.
Will try to detect projection from source metadata, or fall back to EPSG:4326
Using default translations
Using default filterLayer
Using default filterFeature
Using default filterTags
Using default filterFeaturePost
Using default preOutputTransform
Parsing data
Detected projection metadata:
GEOGCS["GCS_WGS_1984",
DATUM["WGS_1984",
SPHEROID["WGS_84",6378137.0,298.257223563]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]]
Merging points
Making list
Checking list
Merging duplicate points in ways
Outputting XML
when open in Qgis ,I find the direction is error. Data in aaa.gdb is two cross line ,one is from west to east, the other is from north to south.
However,the a.osm reprsent two cross line like this:
How can this happen? Thanks for any help.
More a remark than an issue: JOSM displays a warning dialog if a specific upload prohibited flag is set in an .osm
file to avoid accidental uploads. See http://josm.openstreetmap.de/ticket/4043 for details. This might be of interest for ogr2osm
โฆ
I am trying to make garmin maps for my own use incorporating the park boundaries in
NPS_-_Land_Resources_Division_Boundary_and_Tract_Data_Service-shp.zip,
which can be downloaded at
https://www.nps.gov/subjects/gisandmapping/tools-and-data.htm. For brevity, call the unzipped shapefile "NPS.shp".
This is a single layer shapefile of polygons of national park boundaries (WGS 84 with coordinates in meters, aka, "metres"). Converting to osm with
ogr2osm.py --positive-id -t nps_boundary.py -o nps.osm NPS.shp
some polygons are successfully translated to a tagged relation of untagged ways, but others are rendered as several tagged lines. I have extracted an example of each: Yosemite National Park is correctly rendered, but Sequoia National Park comes out as three tagged lines. Each of the three ends with a point that begins another, like they should in a multipolygon.
I have tried with GDAL 2.4.0 and 3.1.4 and with python 3.7 and 3.9 with the same results. If the problem is with the data, I haven't found it. Yosemite and Sequoia look like the same sort of objects in the shapefile dbf. I don't know how to read shp directly, but I've attached a GML version with the geometry edited out and they look the same there.
I have attached in a single zipfile:
sequoia-yosemite.zip
sequioa-yosemite.{shp,shx,dbf,prj} -- shapefile of just these two features extracted from NPS.shp
sequoia-yosemite.nogeom.gml -- GML version of the sequoia-yosemite.shp with the geometry edited out.
nps_boundary.py -- my translation script
sequoia-yosemite.osm -- the output from "ogr2osm.py --positive-id -t nps_boundary.py -o sequoia-yosemite.osm sequoia-yosemite.shp
Thank very much for any help!
If filterTags does not include a return statement, ogr2osm blows up
Traceback (most recent call last):
File "./ogr2osm.py", line 570, in <module>
output()
File "./ogr2osm.py", line 528, in output
for (key, value) in featuresmap[node].tags.items():
AttributeError: 'NoneType' object has no attribute 'items'
I wonder, what exactly is the difference and how should these be used properly?
Currently it is not possible to use the current layer in filterTags. This should be added, but in a backwards compatible way
It will be possible to add a switch to disable duplicated points removal?
And it will be possible to remove duplicated points only if it have same tags?
Thank you!
I have been able to convert a custom road network in shapefile format to .osm data. The original shapefile contains a column "source" and a column "target" to indicate the node id's. After the conversion to .osm format however, these node id's appear to have lost. Instead, new node id's have been chronologically numbered in the .osm file (see below). Is there a way to transfer the original node id's from the shapefile to the .osm file?
the error
error: Could not load translation method '%s'. Translation script must be in your current directory, or in the translations/ subdirectory of your current or ogr2osm.py directory.
does not reflect where we look for translation scripts
ogr supports postgresql/postgis data sources
There is currently no way to specify a non-file datasource.
@pnorman has put out a request seeking a new maintainer for ogr2osm
I'm currently maintainer of https://github.com/pnorman/ogr2osm, but I no
longer have the interest or time to keep up with issues filed and PRs.
If someone is interested in maintaining it, please let me know and I can
transfer the repo.
Source: https://lists.openstreetmap.org/pipermail/dev/2021-March/031105.html
Hi,
I'm having a strange issue with ogr2osm. We are using it to prepare the Belgian open address database shapefile for loading into PSQL using OSM toolset in the following manner:
Download of the address list:
https://downloadagiv.blob.core.windows.net/crab-adressenlijst/Shapefile/CRAB_Adressenlijst.zip
It's not too big imho. And this used to work without a glitch a few months ago (it's automated), both the code of ogr2osm and the wrapper script have not changed since then (the data however did of course)
After zip extraction we first use ogr2ogr on it:
/usr/local/bin/ogr2ogr -s_srs EPSG:31370 -t_srs EPSG:4326 CrabAdr_parsed CRAB/Shapefile/CrabAdr.shp -overwrite
that step works, then we use ogr2osm like:
/usr/local/bin/ogr2osm/ogr2osm.py --idfile=ogr2osm.id --positive-id --saveid=ogr2osm.id CrabAdr_parsed/CrabAdr.shp
This keeps on going until we reach this state of the machine:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
30559 glenn 20 0 15.793g 0.015t 26116 R 100.0 60.7 24:56.03 python
The machine still has lots of memory available:
KiB Mem : 26754664 total, 789720 free, 16448580 used, 9516364 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 3797372 avail Mem
the memory growth stops at that point, 1 cpu is 100% busy and it never stops , I left it running for over 18 hours (which is already abnormal as it used to be less than half hour). So it hangs.
I can't seem to strace this process either, I've never seen this error message before when stracing it:
root@grb-db-0:/usr/local/src/grb# strace -fp 26878
strace: Process 26878 attached
strace: [ Process PID=26878 runs in x32 mode. ]
and then it stays silent. I've never seen that x32 mode messages before and I've been around unix for more than 20 years.
CTRL-C works however and shows this :
Traceback (most recent call last):
File "/usr/local/bin/ogr2osm/ogr2osm.py", line 723, in <module>
mergePoints()
File "/usr/local/bin/ogr2osm/ogr2osm.py", line 559, in mergePoints
parent.replacejwithi(pointsatloc[0], point)
File "/usr/local/bin/ogr2osm/geom.py", line 65, in replacejwithi
j.removeparent(self)
File "/usr/local/bin/ogr2osm/geom.py", line 23, in removeparent
Geometry.geometries.remove(self)
KeyboardInterrupt
which tells me this happens in mergePoints() function
I also tried using python 3.5 instead of 2.7 , same symptom.
This is part of an automated toolstack using terraform with google cloud to crunch the data, you could reproduce the entire thing building an exact same machine as we are using now with the repository below
https://github.com/gplv2/crab-osm-qa
The bash script that contains this code is here : https://github.com/gplv2/crab-osm-qa/blob/master/helpers/process_source.sh
Could you shed your 2 cents on this issue please ? I've always had success using ogr2osm tool, in fact, in the same script, we parse the open belgian road database as well and this passes fine. It's just the address database that is showing this behavior.
Would love to get some suggestions at this point. Appreciate this a lot. Thank you for your work as well, it's proven to be essential for the Belgian OSM community.
Greetings,
Glenn
Hi Paul,
I try ogr2osm with a large shp file of a country detailed road network and python stops at 'Parsing data' with 'MemoryError'.
The shp file has size: shp is 180MB and dbf is 1.4GB with over 1.1 million records.
I use Python 2.7.3 32bit at Win7 64bit.
I only managed to produce the osm by using the java shp-to-osm https://github.com/iandees/shp-to-osm which produces many osm files having as option the max nodes per osm file.
At http://wiki.openstreetmap.org/wiki/Ogr2osm I read "In March 2010 Ivansanchez was reported to be working on a revamped version of ogr2osm that would be much slower (10x) but would hold all the data in a SQLite database instead of in memory. pnorman's ogr2osm will work on very large files, given enough ram."
Is there actually a version which works with very large files?
What are the file limits of your version or any way to process large files?
Thanks!
Currently we test if the translation functions exist by calling them. We should test if they are of the function type instead.
Recently I have made an update from macOS Catalina to Big Sur. My current GDAL/ogr2ogr 3.1.3
I am trying to convert a Shapefile to OSM with the following code
./ogr2osm.py -t translations/my_data.py -o my_data.osm -f -v --no-upload-false --never-download --never-upload --verbose data_dir/my_data.shp
Which is returning the following error
Traceback (most recent call last):
File "./ogr2osm.py", line 51, in <module>
from osgeo import ogr
ImportError: No module named osgeo
I'm thinking of making a PR to separate the main function into one function for parsing CLI args, and then a main flow function that takes those CLI args as function argument(s). The aim here would be to make that main flow function easily importable to other scripts. I have one such script for PyQGIS that currently calls ogr2osm
as a subprocess, and would like to instead import it as a module.
Would such a PR be welcome? It isn't guaranteed that I'll have the time to write this, but I'd like to look into it.
While trying to translate addresses for Spokane county I found that 2043 nodes were being dropped before making it to the xml. They are all nodes that are very close to one another. It's been confirmed that after moving the points away from each other ogr2osm will output the points normally.
Confirmed with custom translation and default translation.
Source:
spokane_co_addresses.geojson.gz
XML output:
spokane_co_addresses_fake_version.osm.gz
While trying to use ogr2osm witht this shapefile http://people.debian.org/~naoliv/misc/shape-ogr2osm.tar.bz2 I got this:
$ ./ogr2osm.py -p "+proj=utm +zone=23 +south +ellps=GRS67 +towgs84=-66.87,4.37,-38.52" ../SP_USINAS.SHP
running with ElementTree on Python 2.5+
Preparing to convert file '/tmp/d/SP_USINAS.SHP' to '/tmp/d/ogr2osm/SP_USINAS.osm'.
Will use the PROJ.4 string: +proj=utm +zone=23 +south +ellps=GRS67 +towgs84=-66.87,4.37,-38.52
Using default translations
Using default filterLayer
Using default filterFeature
Using default filterTags
Using default filterFeaturePost
Using default preOutputTransform
Parsing data
Merging points
Making list
Checking list
Outputting XML
Traceback (most recent call last):
File "./ogr2osm.py", line 636, in <module>
output()
File "./ogr2osm.py", line 591, in output
1 ./SP_USINAS.DBF
2 ./SP_USINAS.PRJ
3 ./SP_USINAS.SBN
4 ./SP_USINAS.SBX
5 ./SP_USINAS.SHP
f.write(etree.tostring(xmlobject))
File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1127, in tostring
ElementTree(element).write(file, encoding, method=method)
File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 821, in write
serialize(write, self._root, encoding, qnames, namespaces)
File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 940, in _serialize_xml
_serialize_xml(write, e, encoding, qnames, None)
File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 933, in _serialize_xml
v = _escape_attrib(v, encoding)
File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1091, in _escape_attrib
return text.encode(encoding, "xmlcharrefreplace")
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 22: ordinal not in range(128)
Then installed python-lxml but it still fails:
$ ./ogr2osm.py -p "+proj=utm +zone=23 +south +ellps=GRS67 +towgs84=-66.87,4.37,-38.52" ../SP_USINAS.SHP
running with lxml.etree
Preparing to convert file '/tmp/d/SP_USINAS.SHP' to '/tmp/d/ogr2osm/SP_USINAS.osm'.
Will use the PROJ.4 string: +proj=utm +zone=23 +south +ellps=GRS67 +towgs84=-66.87,4.37,-38.52
Using default translations
Using default filterLayer
Using default filterFeature
Using default filterTags
Using default filterFeaturePost
Using default preOutputTransform
Parsing data
Merging points
Making list
Checking list
Outputting XML
Traceback (most recent call last):
File "./ogr2osm.py", line 636, in <module>
output()
File "./ogr2osm.py", line 588, in output
tag = etree.Element('tag', {'k':key, 'v':value})
File "lxml.etree.pyx", line 2570, in lxml.etree.Element (src/lxml/lxml.etree.c:52973)
File "apihelpers.pxi", line 156, in lxml.etree._makeElement (src/lxml/lxml.etree.c:11834)
File "apihelpers.pxi", line 144, in lxml.etree._makeElement (src/lxml/lxml.etree.c:11709)
File "apihelpers.pxi", line 299, in lxml.etree._initNodeAttributes (src/lxml/lxml.etree.c:13280)
File "apihelpers.pxi", line 1369, in lxml.etree._utf8 (src/lxml/lxml.etree.c:22147)
ValueError: All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters
Currently we catch all exceptions during the testing of translation functions. Although this specific case needs changing to avoid exceptions in bug #6 there may be other cases where we are catching all exceptions. exceptions caught should be more limited in scope.
Shapefile encodings are difficult to deal with. The default encoding is Latin-1, not UTF-8 and there is no way to detect the encoding from within ogr2osm. The testcases would be more reliable as KML.
See ual@c64ad0a and issue #21
Hi all!
I'm processing shapefiles with org2osm to feed the resulting data to osmosis (to create an android map with the mapfile-writer plugin). I found that I needed to include bounding box information in the XML file to have it processed. I've modified ogr2osm to accept a parameter '--add-bounds', which makes the script add an XML element 'bounds', like
<bounds maxlat="46.432232" maxlon="8.332256" minlat="46.399087" minlon="8.285852"/>
I have a git branch here containing the changes which I'd push to the repo, but I don't have permission. I've attached my new version so you can check if you'd be happy with the changes - rather than doing it the long way by creating a pull request etc., you may find my contribution acceptable and take it in like that. You may use my code freely. I had to change the extension to .txt, since uploading .py files is not supported...
Kay
ogr2osm.txt
Hello @roelderickx Thanks for the nice repository.
I have a question.
I have a shp zip file which contains multiple shp files with other files like prj, shx.
Can I convert this zip file to OSM without loosing any information?
Is it possible?
If I can then can you give me some hint such?
Thank you
The OGR shapefile driver can treat a whole directory of shapefiles as a dataset (http://www.gdal.org/ogr/drv_shapefile.html)
When a directory is passed to ogr2osm.py it results in the error
ogr2osm.py: error: the file '/home/pnorman/osm/imports/nhd/NHDH1711_clip.shp' does not exist
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.