-
Notifications
You must be signed in to change notification settings - Fork 0
Parse a Landform Panorama DXF file and output SQL create a PostGIS database table
License
keithsharp/lfp2pgsql
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
1) Introduction. lfp2pgsql is a small, commandline, application to parse a Land Form Panorama[1] DXF file as released by the UK Ordnance Survey under their Opendata program[2] and load the data into a Postgres/PostGIS database. The application is modelled on shp2pgsql[3] and builds upon initial work by Nick Whitelegg[4][5]. 2) Compiling You have probably got this code by checking out a git repository so you will need to perform the following commands: autoreconf --force --install configure make make install Full build documentation can be found in the INSTALL file. 3) Usage Running the program is as simple as: lfp2pgsql nn00.dxf contours This will print SQL statements to standard out which will create a new table called contours and then insert all of the features from the DXF file into the contour table. You can pipe the SQL directly into the psql command, assuming you already have a database called opendata: lfp2pgsql nn00.dxf contours | psql -d opendata lfp2pgsql accepts a number of flags to modify the SQL output. If you want to delete the table and start again use the -d flag: lfp2pgsql -d nn00.dxf contours | psql -d opendata The -a flag creates SQL statements to insert additional data into an existing table, for example to load multiple files sequentially: lfp2pgsql nn00.dxf contours | psql -d opendata lfp2pgsql -a nn01.dxf contours | psql -d opendata lfp2pgsql -a nn02.dxf contours | psql -d opendata ... The -p flag limits the SQL statements to those necessary to create the table. You could use this to script a loop to import a large quantity of data: lfp2pgsql -c nn00.dxf contours | psql -d opendata lfp2pgsql -a nn00.dxf contours | psql -d opendata lfp2pgsql -a nn01.dxf contours | psql -d opendata lfp2pgsql -a nn02.dxf contours | psql -d opendata ... The -c flag is the default option, it ouputs SQL to create the table and then to insert the data from the DXF file. The following are equivalent: lfp2pgsql -c nn00.dxf contours | psql -d opendata lfp2pgsql nn00.dxf contours | psql -d opendata The -c, -p, -a, and -d flags are mutually exclusive, if you supply more than one lfp2pgsql will exit with an error. The -I flag causes lfp2pgsql to create an index on the geometry column of the resulting table. You can use the -I flag with any of the other flags: lfp2pgsql -c -I nn00.dxf contours | psql -d opendata lfp2pgsql -p -I nn00.dxf contours | psql -d opendata lfp2pgsql -a -I nn00.dxf contours | psql -d opendata lfp2pgsql -d -I nn00.dxf contours | psql -d opendata 4) Landform Panorama Features The following are the features that ae contained within the Landform Panorama DXF files. At this time lfp2pgsql only creates SQL INSERT statements for the following subset of features: G8040201 Contours G8040202 Lakes G8040203 Breakline G0804204 Coastline G8040205 Ridgelines G8040207 Formlines The following are the features that are ignored by lfp2pgsql: G8040200 Spothights [sic] G8040570 Copyrightsymbol G8040571 Footnotes G8040572 Gridlinesandvalues G8040573 Gridvalues G8040575 Default I am happy to update the parser if anyone has a good reason why the data I currently ignore should be handled in some way. Keith <keith.sharp@gmail.com> March 2011 [1] http://www.ordnancesurvey.co.uk/oswebsite/products/landformpanorama/ [2] http://www.ordnancesurvey.co.uk/oswebsite/opendata/ [3] http://postgis.refractions.net/docs/ch04.html#shp2pgsql_usage [4] http://lists.openstreetmap.org/pipermail/talk-gb/2011-March/011101.html [5] http://lists.openstreetmap.org/pipermail/talk-gb/2011-March/011184.html
About
Parse a Landform Panorama DXF file and output SQL create a PostGIS database table
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published