view flys-backend/contrib/shpimporter/shpimporter.py @ 2858:c3b2673eafbf

Adjusted PostgreSQL port of MINFO schema to match Oracle one. flys-backend/trunk@4322 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 27 Apr 2012 15:47:00 +0000
parents bd9e76e0b55d
children b0132e1b9719
line wrap: on
line source
import ogr

import utils
from uesg  import UESG
from axis  import Axis
from km    import KM
from lines import Line
from fixpoints import Fixpoint
from buildings import Building
from crosssectiontracks import CrosssectionTrack

DBCONN='OCI:user/pass@host'
PATH='/path/to/Gewaesser/Elbe'
RIVER_ID=the_river_id


def getImporters():
    return [
        Axis(DBCONN, RIVER_ID),
        KM(DBCONN, RIVER_ID),
        CrosssectionTrack(DBCONN, RIVER_ID),
        Line(DBCONN, RIVER_ID),
        Fixpoint(DBCONN, RIVER_ID),
        Building(DBCONN, RIVER_ID),
        UESG(DBCONN, RIVER_ID)]


if __name__ == '__main__':
    importers = getImporters()

    types = {}

    for importer in importers:
        shapes = utils.findShapefiles(importer.getPath(PATH))
        print "Found %i Shapefiles" % len(shapes)

        for shpTuple in shapes:
            geomType = importer.walkOverShapes(shpTuple)
            try:
                num = types[geomType]
                types[geomType] = num+1
            except:
                types[geomType] = 1

    for key in types:
        print "%i x geometry type %s" % (types[key], key)

http://dive4elements.wald.intevation.org