def test_initialize(self): from spatialdata.geocoords.CSGeoLocalCart import CSGeoLocalCart cs = CSGeoLocalCart() cs.inventory.originLon = -120.0 cs.inventory.originLat = 38.4 from pyre.units.length import m cs.inventory.originElev = 12.0*m cs.inventory.ellipsoid = "clrk66" cs.inventory.datumHoriz = "NAD27" cs.inventory.datumVert = "mean sea level" cs.inventory.units = "km" cs._configure() cs.initialize() self.assertEqual("clrk66", cs.ellipsoid()) self.assertEqual("NAD27", cs.datumHoriz()) self.assertEqual("mean sea level", cs.datumVert()) self.assertEqual(True, cs.isGeocentric()) self.assertEqual(1.0e+3, cs.toMeters()) self.assertEqual(3, cs.spaceDim()) (lon, lat, elev) = cs.origin() self.assertAlmostEqual(-120.0, lon, 6) self.assertAlmostEqual(38.4, lat, 6) self.assertAlmostEqual(12.0, elev, 6) return
def test_convert(self): from spatialdata.geocoords.CSGeo import CSGeo csNAD27 = CSGeo() csNAD27.inventory.ellipsoid = "clrk66" csNAD27.inventory.datumHoriz = "NAD27" csNAD27.inventory.datumVert = "mean sea level" csNAD27._configure() csNAD27.initialize() from spatialdata.geocoords.CSGeoLocalCart import CSGeoLocalCart csLocal = CSGeoLocalCart() csLocal.inventory.originLon = -100.0 csLocal.inventory.originLat = 39.0 from pyre.units.length import m csLocal.inventory.originElev = 0.01*m csLocal.inventory.ellipsoid = "clrk66" csLocal.inventory.datumHoriz = "NAD27" csLocal.inventory.datumVert = "mean sea level" csLocal._configure() csLocal.initialize() from spatialdata.geocoords.Converter import convert coordsXYZ = numpy.array(lonlatNAD27ElevVals) convert(coordsXYZ, csLocal, csNAD27) xyzLocalValsT = numpy.array(coordsXYZ) self.assertEqual(len(xyzLocalVals.shape), len(xyzLocalValsT.shape)) for (xyz, xyzT) in zip(numpy.reshape(xyzLocalVals,-1), numpy.reshape(xyzLocalValsT, -1)): self.assertAlmostEqual(1.0, xyz/xyzT, 6) return
def test_initialize(self): from spatialdata.geocoords.CSGeoLocalCart import CSGeoLocalCart cs = CSGeoLocalCart() cs.inventory.originLon = -120.0 cs.inventory.originLat = 38.4 from pyre.units.length import m cs.inventory.originElev = 12.0 * m cs.inventory.ellipsoid = "clrk66" cs.inventory.datumHoriz = "NAD27" cs.inventory.datumVert = "mean sea level" cs.inventory.units = "km" cs._configure() cs.initialize() self.assertEqual("clrk66", cs.ellipsoid()) self.assertEqual("NAD27", cs.datumHoriz()) self.assertEqual("mean sea level", cs.datumVert()) self.assertEqual(True, cs.isGeocentric()) self.assertEqual(1.0e+3, cs.toMeters()) self.assertEqual(3, cs.spaceDim()) (lon, lat, elev) = cs.origin() self.assertAlmostEqual(-120.0, lon, 6) self.assertAlmostEqual(38.4, lat, 6) self.assertAlmostEqual(12.0, elev, 6) return