Removed dependency on geoalchemy.
authorphilipp <philipp@7aebc617-e5e2-0310-91dc-80fb5f6d2477>
Wed, 1 Apr 2015 21:26:42 +0000 (21:26 +0000)
committerphilipp <philipp@7aebc617-e5e2-0310-91dc-80fb5f6d2477>
Wed, 1 Apr 2015 21:26:42 +0000 (21:26 +0000)
git-svn-id: http://www.winterrodeln.org/svn/wrpylib/trunk@2180 7aebc617-e5e2-0310-91dc-80fb5f6d2477

setup.py
wrpylib/wrmwcache.py
wrpylib/wrmwdb.py

index 926da50d9efeea686023df99125c3a94af4e0abf..395e85b349002299c78d49b05e110b90fe503dca 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -4,7 +4,6 @@ from setuptools import setup
 
 requires = [
     'sqlalchemy',
-    'geoalchemy',
     'formencode'
     ]
 
index 05f7e75484b1f1a5800fe45317aae03535a0d6b2..4c3940ca0afc14c7ae7f750a7c46576cbb4ecaf7 100644 (file)
@@ -6,7 +6,6 @@
 from sqlalchemy import schema
 from sqlalchemy.sql import select
 from sqlalchemy.sql.expression import func as sqlfunc
-import geoalchemy.functions as geofunc
 from osgeo import ogr
 import formencode
 from wrpylib import mwdb, wrmwdb, mwmarkup, wrmwmarkup
@@ -229,7 +228,7 @@ def update_wrregioncache(connection):
     connection.execute(wrregioncache.delete())
     
     # Query all combinations of sledruns and regions
-    sel = select([wrregion.c.id.label('region_id'), wrregion.c.border.label('border'), wrsledruncache.c.page_id, wrsledruncache.c.position_longitude, wrsledruncache.c.position_latitude], geofunc.gcontains(wrregion.c.border, sqlfunc.point(wrsledruncache.c.position_longitude, wrsledruncache.c.position_latitude))) 
+    sel = select([wrregion.c.id.label('region_id'), sqlfunc.AsWKB(wrregion.c.border).label('border'), wrsledruncache.c.page_id, wrsledruncache.c.position_longitude, wrsledruncache.c.position_latitude], sqlfunc.contains(wrregion.c.border, sqlfunc.point(wrsledruncache.c.position_longitude, wrsledruncache.c.position_latitude)))
     ins = wrregioncache.insert()
 
     # Refill wrregioncache
@@ -237,7 +236,7 @@ def update_wrregioncache(connection):
     result = connection.execute(sel)
     for row in result:
         point.SetPoint(0, row.position_longitude, row.position_latitude)
-        if point.Within(ogr.CreateGeometryFromWkb(row.border.geom_wkb)):
+        if point.Within(ogr.CreateGeometryFromWkb(row.border)):
             connection.execute(ins.values(region_id=row.region_id, page_id=row.page_id))
 
     # commit
index 52f8e09d89e1d40d91850a81a91026b63194a3f8..7c6c1da4fc0beed15217599f2d733bcd640d5a4b 100644 (file)
@@ -6,7 +6,6 @@
 tables in MediaWiki easy. The module uses sqlalchemy to access the database.
 """
 from sqlalchemy import Table, Column, types, schema
-from geoalchemy import GeometryExtensionColumn, MultiPolygon
 
 
 def wrreport_table(metadata):
@@ -145,7 +144,7 @@ def wrregion_table(metadata):
     Column("id", types.Integer, primary_key=True),
     Column("name", types.Unicode(50)),
     Column("page_id", types.Integer),
-    GeometryExtensionColumn("border", MultiPolygon(2, 4326))
+    Column("border", types.Binary) # MultiPolygon(2, 4326)
     )