Mercurial > dive4elements > river
comparison flys-backend/contrib/shpimporter/axis.py @ 5146:d4fdd98a04f7
Add kind_id to river_axes table and add AxisKind object to model
There are currently three kinds: 0 for unkown, 1 for current,
2 for everything else.
Only current is used for calculation
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Thu, 28 Feb 2013 18:04:19 +0100 |
parents | 04eb62eae722 |
children | f52bb7178eda |
comparison
equal
deleted
inserted
replaced
5145:801175535406 | 5146:d4fdd98a04f7 |
---|---|
30 ogr.wkbLineString25D, | 30 ogr.wkbLineString25D, |
31 ogr.wkbMultiLineString25D, | 31 ogr.wkbMultiLineString25D, |
32 ogr.wkbMultiLineString] | 32 ogr.wkbMultiLineString] |
33 | 33 |
34 def isShapeRelevant(self, name, path): | 34 def isShapeRelevant(self, name, path): |
35 return "achse" in name.lower() | 35 return "km.shp" not in path.lower() |
36 | 36 |
37 | 37 |
38 def createNewFeature(self, featureDef, feat, **args): | 38 def createNewFeature(self, featureDef, feat, **args): |
39 newFeat = ogr.Feature(featureDef) | 39 newFeat = ogr.Feature(featureDef) |
40 newFeat.SetGeometry(feat.GetGeometryRef()) | 40 newFeat.SetGeometry(feat.GetGeometryRef()) |
43 if self.IsFieldSet(feat, "river_id"): | 43 if self.IsFieldSet(feat, "river_id"): |
44 riverId = feat.GetField("river_id") | 44 riverId = feat.GetField("river_id") |
45 else: | 45 else: |
46 riverId = self.river_id | 46 riverId = self.river_id |
47 | 47 |
48 if self.IsFieldSet(feat, "kind"): | 48 newFeat.SetField("river_id", riverId) |
49 kind = feat.GetField("kind") | 49 if args.get("name", "").lower() == "achse": |
50 newFeat.SetField("kind_id", 1) # 1 is Current | |
50 else: | 51 else: |
51 kind = 0 | 52 newFeat.SetField("kind_id", 2) # 2 Is Other |
52 | |
53 newFeat.SetField("river_id", riverId) | |
54 newFeat.SetField("kind", kind) | |
55 | 53 |
56 return utils.convertToMultiLine(newFeat) | 54 return utils.convertToMultiLine(newFeat) |