[cig-commits] r5690 - in cs/spatialdata-0.1/trunk: .
libsrc/geocoords spatialdata/geocoords
spatialdata/spatialdb/generator
brad at geodynamics.org
brad at geodynamics.org
Sun Jan 7 13:19:42 PST 2007
Author: brad
Date: 2007-01-07 13:19:42 -0800 (Sun, 07 Jan 2007)
New Revision: 5690
Modified:
cs/spatialdata-0.1/trunk/CHANGES
cs/spatialdata-0.1/trunk/libsrc/geocoords/Converter.cc
cs/spatialdata-0.1/trunk/spatialdata/geocoords/Converter.py
cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Filter.py
cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Filters.py
cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/GenSimpleDBApp.py
cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Geometry.py
Log:
Added additional error checking to Converter. Updated generator to allow 1-D and 2-D spatial dimensions for coordinates; not tested.
Modified: cs/spatialdata-0.1/trunk/CHANGES
===================================================================
--- cs/spatialdata-0.1/trunk/CHANGES 2007-01-07 20:24:35 UTC (rev 5689)
+++ cs/spatialdata-0.1/trunk/CHANGES 2007-01-07 21:19:42 UTC (rev 5690)
@@ -6,3 +6,10 @@
cleaner.
Numpy version >= 1.0 is now required (previous changeset).
+
+2007/01/07
+
+ Changed interfaces to allow spatial dimension of coordinate systems
+ to be 1-D and 2-D instead of just 3-D.
+
+
Modified: cs/spatialdata-0.1/trunk/libsrc/geocoords/Converter.cc
===================================================================
--- cs/spatialdata-0.1/trunk/libsrc/geocoords/Converter.cc 2007-01-07 20:24:35 UTC (rev 5689)
+++ cs/spatialdata-0.1/trunk/libsrc/geocoords/Converter.cc 2007-01-07 21:19:42 UTC (rev 5690)
@@ -46,6 +46,9 @@
if (pCSSrc->csType() != pCSDest->csType())
throw std::runtime_error("Cannot convert between coordinate systems "
"of different types.");
+ if (pCSSrc->spaceDim() != pCSDest->spaceDim())
+ throw std::runtime_error("Cannot convert between coordinate systems "
+ "with different spatial dimensions.");
switch (pCSSrc->csType())
{ // switch
Modified: cs/spatialdata-0.1/trunk/spatialdata/geocoords/Converter.py
===================================================================
--- cs/spatialdata-0.1/trunk/spatialdata/geocoords/Converter.py 2007-01-07 20:24:35 UTC (rev 5689)
+++ cs/spatialdata-0.1/trunk/spatialdata/geocoords/Converter.py 2007-01-07 21:19:42 UTC (rev 5690)
@@ -17,12 +17,14 @@
"""Convert coordinates from source coordinate system to destination
coordinate system. Transformation is done in place."""
+ if not csDest.spaceDim == csSrc.spaceDim:
+ msg = "Spatial dimensions of source (%d) and destination (%d) " \
+ "coordinate systems must match." % (csSrc.spaceDim, csDest.spaceDim)
+ raise ValueError(msg)
+
import spatialdata.geocoords.geocoords as bindings
bindings.Converter_convert(coordsSrc, csDest.cppHandle, csSrc.cppHandle)
return
-# version
-__id__ = "$Id$"
-
# End of file
Modified: cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Filter.py
===================================================================
--- cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Filter.py 2007-01-07 20:24:35 UTC (rev 5689)
+++ cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Filter.py 2007-01-07 21:19:42 UTC (rev 5690)
@@ -97,7 +97,4 @@
return
-# version
-__id__ = "$Id$"
-
# End of file
Modified: cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Filters.py
===================================================================
--- cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Filters.py 2007-01-07 20:24:35 UTC (rev 5689)
+++ cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Filters.py 2007-01-07 21:19:42 UTC (rev 5690)
@@ -28,7 +28,4 @@
return
-# version
-__id__ = "$Id$"
-
# End of file
Modified: cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/GenSimpleDBApp.py
===================================================================
--- cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/GenSimpleDBApp.py 2007-01-07 20:24:35 UTC (rev 5689)
+++ cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/GenSimpleDBApp.py 2007-01-07 21:19:42 UTC (rev 5690)
@@ -75,21 +75,17 @@
def _assembleDB(self):
import spatialdata.spatialdb.generator.generator as bindings
vertices = self.geometry.vertices
+ coordsys = self.geometry.coordsys
numValues = len(self.values.values)
cppDB = bindings.create(vertices.handle(),
vertices.vertexCount, vertices.dim,
- numValues,
- self.geometry.topology)
+ numValues, coordsys.spaceDim,
+ self.geometry.dataDim)
for i in range(numValues):
self.values.values[i].setDB(cppDB, i)
return cppDB
- def _defaults(self):
- Script._defaults(self)
- return
-
-
def _configure(self):
Script._configure(self)
self.geometry = self.inventory.geometry
@@ -98,11 +94,4 @@
return
- def _init(self):
- Script._init(self)
- return
-
-# version
-__id__ = "$Id$"
-
# End of file
Modified: cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Geometry.py
===================================================================
--- cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Geometry.py 2007-01-07 20:24:35 UTC (rev 5689)
+++ cs/spatialdata-0.1/trunk/spatialdata/spatialdb/generator/Geometry.py 2007-01-07 21:19:42 UTC (rev 5690)
@@ -35,7 +35,7 @@
## Python object for managing Geometry facilities and properties.
##
## \b Properties
- ## @li \b topology Topology of the database
+ ## @li \b data_dim Spatial dimension of database locations.
##
## \b Facilities
## @li \b unpickler Object to unpickle geometry
@@ -43,10 +43,9 @@
import pyre.inventory
- topology = pyre.inventory.str("topology", default="area")
- topology.validator = pyre.inventory.choice(["point", "line",
- "area", "volume"])
- topology.meta['tip'] = "Topology of the database."
+ dataDim = pyre.inventory.str("data_dim", default=2)
+ dataDim.validator = pyre.inventory.choice([0, 1, 2, 3])
+ dataDim.meta['tip'] = "Spatial dimension of database locations."
unpickler = pyre.inventory.facility("unpickler", factory=Dummy)
unpickler.meta['tip'] = "Object to unpickle geometry."
@@ -74,13 +73,10 @@
def _configure(self):
Component._configure(self)
- self.topology = self.inventory.topology
+ self.dataDim = self.inventory.dataDim
self.unpickler = self.inventory.unpickler
self.coordsys = self.inventory.coordsys
return
-# version
-__id__ = "$Id$"
-
# End of file
More information about the cig-commits
mailing list