[cig-commits] r3916 - in cs/spatialdata-0.1/trunk: .
spatialdata/geocoords tests/libtests/spatialdb
tests/pytests/geocoords tests/pytests/utils
baagaard at geodynamics.org
baagaard at geodynamics.org
Mon Jul 3 17:55:20 PDT 2006
Author: baagaard
Date: 2006-07-03 17:55:20 -0700 (Mon, 03 Jul 2006)
New Revision: 3916
Modified:
cs/spatialdata-0.1/trunk/configure.ac
cs/spatialdata-0.1/trunk/spatialdata/geocoords/CSGeo.py
cs/spatialdata-0.1/trunk/spatialdata/geocoords/CSGeoProj.py
cs/spatialdata-0.1/trunk/spatialdata/geocoords/Converter.py
cs/spatialdata-0.1/trunk/spatialdata/geocoords/Projector.py
cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/Makefile.am
cs/spatialdata-0.1/trunk/tests/pytests/geocoords/TestConverter.py
cs/spatialdata-0.1/trunk/tests/pytests/utils/Makefile.am
cs/spatialdata-0.1/trunk/tests/pytests/utils/TestSimpleArray.py
cs/spatialdata-0.1/trunk/tests/pytests/utils/testcpp.pyxe
Log:
Fixed bugs in Converter and CoordSys Python objects.
Modified: cs/spatialdata-0.1/trunk/configure.ac
===================================================================
--- cs/spatialdata-0.1/trunk/configure.ac 2006-07-03 23:18:23 UTC (rev 3915)
+++ cs/spatialdata-0.1/trunk/configure.ac 2006-07-04 00:55:20 UTC (rev 3916)
@@ -29,7 +29,7 @@
# PYTHIA w/pythia
AC_ARG_ENABLE([pythia],
- [ --enable-pythia Enable use of pythia package (requires pythia) [[default=no]]],
+ [ --enable-pythia Enable use of Pythia (requires pythia) [[default=no]]],
[enable_pythia=yes],
[enable_pythia=no])
@@ -84,9 +84,9 @@
])
fi
-# PYRE
-AM_CONDITIONAL([ENABLE_PYTHIA], [test "$enable_pyre" = yes])
-if test "$enable_pyre" = "yes" ; then
+# PYTHIA
+AM_CONDITIONAL([ENABLE_PYTHIA], [test "$enable_pythia" = yes])
+if test "$enable_pythia" = "yes" ; then
AC_LANG(C++)
# PYTHIA
Modified: cs/spatialdata-0.1/trunk/spatialdata/geocoords/CSGeo.py
===================================================================
--- cs/spatialdata-0.1/trunk/spatialdata/geocoords/CSGeo.py 2006-07-03 23:18:23 UTC (rev 3915)
+++ cs/spatialdata-0.1/trunk/spatialdata/geocoords/CSGeo.py 2006-07-04 00:55:20 UTC (rev 3916)
@@ -58,15 +58,15 @@
def initialize(self):
"""Initialize coordinate system."""
- self.cppHandle.ellipsoid(self.ellipsoid)
- self.cppHandle.datumHoriz(self.datumHoriz)
- self.cppHandle.datumVert(self.datumVert)
- self.cppHandle.isGeocentric(self.isGeocentric)
+ self.cppHandle.ellipsoid = self.ellipsoid
+ self.cppHandle.datumHoriz = self.datumHoriz
+ self.cppHandle.datumVert = self.datumVert
+ self.cppHandle.isGeocentric = self.isGeocentric
import pyre.units
uparser = pyre.units.parser()
coordUnits = uparser.parse(self.units)
- self.cppHandle.toMeters(coordUnits.value)
+ self.cppHandle.toMeters = coordUnits.value
CoordSys.initialize(self)
return
Modified: cs/spatialdata-0.1/trunk/spatialdata/geocoords/CSGeoProj.py
===================================================================
--- cs/spatialdata-0.1/trunk/spatialdata/geocoords/CSGeoProj.py 2006-07-03 23:18:23 UTC (rev 3915)
+++ cs/spatialdata-0.1/trunk/spatialdata/geocoords/CSGeoProj.py 2006-07-04 00:55:20 UTC (rev 3916)
@@ -45,7 +45,7 @@
"""Initialize coordinate system."""
self.projector.initialize(self)
- self.cppHandle.projector(self.projector.cppHandle.handle)
+ self.cppHandle.projector = self.projector.cppHandle.handle
CSGeo.initialize(self)
return
Modified: cs/spatialdata-0.1/trunk/spatialdata/geocoords/Converter.py
===================================================================
--- cs/spatialdata-0.1/trunk/spatialdata/geocoords/Converter.py 2006-07-03 23:18:23 UTC (rev 3915)
+++ cs/spatialdata-0.1/trunk/spatialdata/geocoords/Converter.py 2006-07-04 00:55:20 UTC (rev 3916)
@@ -13,25 +13,15 @@
## @file spatialdata/geocoords/Converter.py
## @brief Python function to convert b/t coordinate systems.
-def convertpy(coordsSrc, csDest, csSrc):
+def convert(coordsSrc, csDest, csSrc):
"""Convert coordinates from source coordinate system to destination
- coordinate system. Coordinates are stored in a Python array."""
+ coordinate system. Transformation is done in place."""
- import spatialdata.geocoords.geocoords as bindings
- coordsDest = bindings.Converter_convertpy(coordsSrc,
- csDest.cppHandle, csSrc.cppHandle)
+ import spatialdata.utils.utils as simplearray
+ coordsSrcArray = simplearray.SimplePyArray(coordsSrc)
- return coordsDest
-
-
-def convertcpp(handle, numLocs, numCoords, csDest, csSrc):
- """Convert coordinates from source coordinate system to destination
- coordinate system. Coordinates are stored in a PyCObject. """
-
import spatialdata.geocoords.geocoords as bindings
- bindings.pConverter_convertcpp(handle, numLocs, numCoords,
- csDest.cppHandle, csSrc.cppHandle)
-
+ bindings.Converter_convert(coordsSrcArray, csDest.cppHandle, csSrc.cppHandle)
return
Modified: cs/spatialdata-0.1/trunk/spatialdata/geocoords/Projector.py
===================================================================
--- cs/spatialdata-0.1/trunk/spatialdata/geocoords/Projector.py 2006-07-03 23:18:23 UTC (rev 3915)
+++ cs/spatialdata-0.1/trunk/spatialdata/geocoords/Projector.py 2006-07-04 00:55:20 UTC (rev 3916)
@@ -51,9 +51,9 @@
def initialize(self, coordSys):
"""Initialize projector."""
- self.cppHandle.projection(self.projection)
- self.cppHandle.units(self.units)
- self.cppHandle.projOptions(self.projOptions)
+ self.cppHandle.projection = self.projection
+ self.cppHandle.units = self.units
+ self.cppHandle.projOptions = self.projOptions
self.cppHandle.initialize(coordSys.cppHandle)
return
Modified: cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/Makefile.am
===================================================================
--- cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/Makefile.am 2006-07-03 23:18:23 UTC (rev 3915)
+++ cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/Makefile.am 2006-07-04 00:55:20 UTC (rev 3916)
@@ -46,7 +46,7 @@
testspatial_LDADD = \
-lcppunit -ldl \
- $(top_builddir)/libsrc/spatialdb/libspatialdata.la \
+ $(top_builddir)/libsrc/spatialdb/libspatialdataspatialdb.la \
$(top_builddir)/libsrc/geocoords/libspatialdatageocoords.la
# version
Modified: cs/spatialdata-0.1/trunk/tests/pytests/geocoords/TestConverter.py
===================================================================
--- cs/spatialdata-0.1/trunk/tests/pytests/geocoords/TestConverter.py 2006-07-03 23:18:23 UTC (rev 3915)
+++ cs/spatialdata-0.1/trunk/tests/pytests/geocoords/TestConverter.py 2006-07-04 00:55:20 UTC (rev 3916)
@@ -12,20 +12,24 @@
import unittest
-lonlatNAD27ElevVals = [
+import numpy as numeric
+
+lonlatNAD27ElevVals = numeric.array([
[ -1.150000000000e+02, 3.900000000000e+01, 1.200000000000e+01],
[ -1.203425320000e+02, 4.323423000000e+01, 1.010000000000e+01],
[ -1.213425320000e+02, 4.523423000000e+01, 3.600000000000e+00],
[ -1.153425320000e+02, 3.623423000000e+01, 7.200000000000e+00],
[ -1.103425320000e+02, 3.923423000000e+01, 1.233000000000e+02],
- [ -1.073425320000e+02, 3.323423000000e+01, 3.460000000000e+01] ]
-xyzLocalVals = [
+ [ -1.073425320000e+02, 3.323423000000e+01, 3.460000000000e+01] ],
+ numeric.Float64)
+xyzLocalVals = numeric.array([
[ -1.284640403035e+06, 1.064304545254e+05, -1.314223692642e+05],
[ -1.617989794934e+06, 6.524818198322e+05, -2.429529282853e+05],
[ -1.637488936891e+06, 8.852730256818e+05, -2.774331803783e+05],
[ -1.362847273202e+06, -1.913287267443e+05, -1.500646063011e+05],
[ -8.881745585536e+05, 7.658679833419e+04, -6.239199171253e+04],
- [ -6.825105927499e+05, -6.111332573069e+05, -6.615476872030e+04] ]
+ [ -6.825105927499e+05, -6.111332573069e+05, -6.615476872030e+04] ],
+ numeric.Float64)
class TestConverter(unittest.TestCase):
@@ -49,15 +53,15 @@
csLocal.datumVert = "mean sea level"
csLocal.initialize()
- from spatialdata.geocoords.Converter import convert as convertpy
- xyzLocalValsT = convertpy(lonlatNAD27ElevVals, csLocal, csNAD27)
+ from spatialdata.geocoords.Converter import convert
+ coordsXYZ = lonlatNAD27ElevVals
+ convert(coordsXYZ, csLocal, csNAD27)
+ xyzLocalValsT = numeric.array(coordsXYZ)
- self.assertEqual(len(xyzLocalVals), len(xyzLocalValsT))
- for (xyz, xyzT) in zip(xyzLocalVals, xyzLocalValsT):
- print xyzT # TEMPORARY
- self.assertAlmostEqual(1.0, xyz[0]/xyzT[0], 6)
- self.assertAlmostEqual(1.0, xyz[1]/xyzT[1], 6)
- self.assertAlmostEqual(1.0, xyz[2]/xyzT[2], 6)
+ self.assertEqual(len(xyzLocalVals.shape), len(xyzLocalValsT.shape))
+ for (xyz, xyzT) in zip(numeric.reshape(xyzLocalVals,-1),
+ numeric.reshape(xyzLocalValsT, -1)):
+ self.assertAlmostEqual(1.0, xyz/xyzT, 6)
return
Modified: cs/spatialdata-0.1/trunk/tests/pytests/utils/Makefile.am
===================================================================
--- cs/spatialdata-0.1/trunk/tests/pytests/utils/Makefile.am 2006-07-03 23:18:23 UTC (rev 3915)
+++ cs/spatialdata-0.1/trunk/tests/pytests/utils/Makefile.am 2006-07-04 00:55:20 UTC (rev 3916)
@@ -10,6 +10,9 @@
# ----------------------------------------------------------------------
#
+subpackage = utils
+include $(top_srcdir)/subpackage.am
+
TESTS = testutils.py
check_SCRIPTS = testutils.py
@@ -18,7 +21,7 @@
TestSimpleArray.py
# module
-pyexec_LTLIBRARIES = testcppmodule.la
+subpkgpyexec_LTLIBRARIES = testcppmodule.la
testcppmodule_la_LDFLAGS = -module
@@ -27,7 +30,7 @@
nodist_testcppmodule_la_SOURCES = \
testcpp.c testcpp_embed.cpp testcpp_embed.h
-INCLUDES = -I$(PYTHON_INCDIR)
+INCLUDES += -I$(PYTHON_INCDIR)
testcpp.pyx testcpp_embed.cpp testcpp_embed.h: testcpp.pyxe
cp $< . && pyrexembed.py testcpp.pyxe && rm -f testcpp.pyxe
Modified: cs/spatialdata-0.1/trunk/tests/pytests/utils/TestSimpleArray.py
===================================================================
--- cs/spatialdata-0.1/trunk/tests/pytests/utils/TestSimpleArray.py 2006-07-03 23:18:23 UTC (rev 3915)
+++ cs/spatialdata-0.1/trunk/tests/pytests/utils/TestSimpleArray.py 2006-07-04 00:55:20 UTC (rev 3916)
@@ -60,7 +60,7 @@
vals = [ [1.1, 2.1, 3.1],
[1.2, 2.2, 3.2] ]
x = numeric.array(vals, numeric.Float64)
- import testcpp
+ import spatialdata.utils.testcpp as testcpp
y = testcpp.cpparray()
self.assertEqual(len(x.shape), y.nd)
self.assertEqual(len(x.shape), len(y.shape))
@@ -77,7 +77,7 @@
[1.2, 2.2],
[1.3, 2.3] ]
x = numeric.array(vals, numeric.Float64)
- import testcpp
+ import spatialdata.utils.testcpp as testcpp
try:
testcpp.test(simplearray.SimplePyArray(x))
except ValueError, er:
Modified: cs/spatialdata-0.1/trunk/tests/pytests/utils/testcpp.pyxe
===================================================================
--- cs/spatialdata-0.1/trunk/tests/pytests/utils/testcpp.pyxe 2006-07-03 23:18:23 UTC (rev 3915)
+++ cs/spatialdata-0.1/trunk/tests/pytests/utils/testcpp.pyxe 2006-07-04 00:55:20 UTC (rev 3916)
@@ -16,8 +16,6 @@
cdef extern from "Python.h":
void* PyCObject_AsVoidPtr(object)
-import spatialdata.utils.utils as simplearray
-
def cpparray():
# create shim to create array
#embed{ void cpparray_create(double** ppData, int* pSize)
@@ -28,11 +26,14 @@
(*ppData)[i] = pVals[i];
#}embed
+ #import spatialdata.utils.utils as simplearray
+ import utils as simplearray
+
cdef double* pData
cdef int size
pData = NULL
cpparray_create(&pData, &size)
- dims = [3, 2]
+ dims = [2, 3]
return simplearray.SimpleCppArray(<object> pData, dims, "double")
More information about the cig-commits
mailing list