summaryrefslogtreecommitdiffstats
path: root/parsers/survex.py
diff options
context:
space:
mode:
authorMartin Green <martin.speleo@gmail.com>2012-06-10 14:59:21 +0100
committerMartin Green <martin.speleo@gmail.com>2012-06-10 14:59:21 +0100
commit90245201846b1f95e0c26a59e8272be88b38e479 (patch)
tree8efa7048ab0acbd3666b114ea2e93a09e2477a8a /parsers/survex.py
parent52620ea1c58d80387eb2e19b45228ada393f4701 (diff)
downloadtroggle-90245201846b1f95e0c26a59e8272be88b38e479.tar.gz
troggle-90245201846b1f95e0c26a59e8272be88b38e479.tar.bz2
troggle-90245201846b1f95e0c26a59e8272be88b38e479.zip
Start to change dataformat for caves, along with there editing. Start to change survex reader to cope better with equates/tags.
Diffstat (limited to 'parsers/survex.py')
-rw-r--r--parsers/survex.py19
1 files changed, 14 insertions, 5 deletions
diff --git a/parsers/survex.py b/parsers/survex.py
index 2e0b8d3..d43c303 100644
--- a/parsers/survex.py
+++ b/parsers/survex.py
@@ -59,7 +59,11 @@ def LoadSurvexLineLeg(survexblock, stardata, sline, comment):
survexblock.save()
def LoadSurvexEquate(survexblock, sline):
- pass
+ #print sline #
+ stations = sline.split()
+ assert len(stations) > 1
+ for station in stations:
+ survexblock.MakeSurvexStation(station)
def LoadSurvexLinePassage(survexblock, stardata, sline, comment):
pass
@@ -109,6 +113,7 @@ def RecursiveLoad(survexblock, survexfile, fin, textlines):
# detect the star command
cmd, line = mstar.groups()
+ cmd = cmd.lower()
if re.match("include$(?i)", cmd):
includepath = os.path.join(os.path.split(survexfile.path)[0], re.sub("\.svx$", "", line))
includesurvexfile = models.SurvexFile(path=includepath, cave=survexfile.cave)
@@ -177,10 +182,12 @@ def RecursiveLoad(survexblock, survexfile, fin, textlines):
assert ls[0] == "passage", line
elif cmd == "equate":
- LoadSurvexEquate(survexblock, sline)
-
+ LoadSurvexEquate(survexblock, line)
+
+ elif cmd == "fix":
+ survexblock.MakeSurvexStation(line.split()[0])
else:
- assert cmd.lower() in [ "sd", "equate", "include", "units", "entrance", "fix", "data", "flags", "title", "export", "instrument", "calibrate", "set", "infer"], (cmd, line, survexblock)
+ assert cmd in [ "sd", "include", "units", "entrance", "data", "flags", "title", "export", "instrument", "calibrate", "set", "infer"], (cmd, line, survexblock)
@@ -211,6 +218,7 @@ def LoadAllSurvexBlocks():
models.SurvexLeg.objects.all().delete()
models.SurvexTitle.objects.all().delete()
models.SurvexPersonRole.objects.all().delete()
+ models.SurvexStation.objects.all().delete()
survexfile = models.SurvexFile(path="all", cave=None)
survexfile.save()
@@ -248,7 +256,8 @@ def LoadPos():
try:
ss = models.SurvexStation.objects.lookup(name)
except:
- pass
+ print name
ss.x = float(x)
ss.y = float(y)
ss.z = float(z)
+ ss.save()