view flys-backend/contrib/shpimporter/axis.py @ 4573:b87073a05f9d

flys-client: Patch to render combobox options as clickable links. The way of passing data arguments to the links and further to the Artifact feeding service is somewhat hacked and should be refactored (later...).
author Christian Lins <christian.lins@intevation.de>
date Tue, 27 Nov 2012 12:50:10 +0100
parents c37effda3655
children 23a090b41543
line wrap: on
line source
import ogr

from importer import Importer
import shpimporter

NAME="Axis"
TABLE_NAME="river_axes"
PATH="Geodaesie/Flussachse+km"


class Axis(Importer):

    def getPath(self, base):
        return "%s/%s" % (base, PATH)


    def getTablename(self):
        return TABLE_NAME


    def getName(self):
        return NAME


    def isGeometryValid(self, geomType):
        return geomType == 2


    def isShapeRelevant(self, name, path):
        return name == "achse" or name.find("achse") >= 0


    def createNewFeature(self, featureDef, feat, **args):
        newFeat = ogr.Feature(featureDef)
        newFeat.SetGeometry(feat.GetGeometryRef())
        newFeat.SetField("name", args['name'])

        if self.IsFieldSet(feat, "river_id"):
            riverId = feat.GetField("river_id")
        else:
            riverId = self.river_id

        if self.IsFieldSet(feat, "kind"):
            kind = feat.GetField("kind")
        else:
            kind = 0

        newFeat.SetField("river_id", riverId)
        newFeat.SetField("kind", kind)

        return newFeat

http://dive4elements.wald.intevation.org