def GetColorEntry(self, i): entry = _gdal.GDALGetColorEntry(self._o, i) if entry is None or entry == 'NULL': return (0, 0, 0, 0) else: entry = ptrcast(entry, 'short_p') return (ptrvalue(entry, 0), ptrvalue(entry, 1), ptrvalue(entry, 2), ptrvalue(entry, 3))
def GetColorEntryAsRGB(self, i): entry = ptrcreate('short', 0, 4) _gdal.GDALGetColorEntryAsRGB(self._o, i, ptrcast(entry, 'GDALColorEntry_p')) res = (ptrvalue(entry, 0), ptrvalue(entry, 1), ptrvalue(entry, 2), ptrvalue(entry, 3)) ptrfree(entry) return res
def GetEnvelope(self): extents = _gdal.ptrcreate('double', 0.0, 4) _gdal.OGR_G_GetEnvelope(self._o, _gdal.ptrcast(extents, 'OGREnvelope_p')) ret_extents = (_gdal.ptrvalue(extents, 0), _gdal.ptrvalue(extents, 1), _gdal.ptrvalue(extents, 2), _gdal.ptrvalue(extents, 3)) _gdal.ptrfree(extents) return ret_extents
def GetEnvelope( self ): extents = _gdal.ptrcreate( 'double', 0.0, 4 ) _gdal.OGR_G_GetEnvelope( self._o, _gdal.ptrcast(extents,'OGREnvelope_p') ) ret_extents = ( _gdal.ptrvalue( extents, 0 ), _gdal.ptrvalue( extents, 1 ), _gdal.ptrvalue( extents, 2 ), _gdal.ptrvalue( extents, 3 ) ) _gdal.ptrfree( extents ) return ret_extents
def GetColorEntryAsRGB( self, i ): entry = ptrcreate( 'short', 0, 4 ) _gdal.GDALGetColorEntryAsRGB( self._o, i, ptrcast(entry,'GDALColorEntry_p') ) res = (ptrvalue(entry, 0), ptrvalue(entry, 1), ptrvalue(entry, 2), ptrvalue(entry, 3) ) ptrfree( entry ) return res
def GetColorEntry( self, i ): entry = _gdal.GDALGetColorEntry( self._o, i ) if entry is None or entry == 'NULL': return (0,0,0,0) else: entry = ptrcast(entry,'short_p') return (ptrvalue(entry, 0), ptrvalue(entry, 1), ptrvalue(entry, 2), ptrvalue(entry, 3) )
def GetStatistics( self, approx_ok = 0, force = 1 ): x = ptrcreate( 'double', 0, 4 ) err = _gdal.GDALGetRasterStatistics( self._o, approx_ok, force, x, ptradd(x,1), ptradd(x,2), ptradd(x,3) ) if err != 0: ptrfree( x ) raise ValueError, GetLastErrorMsg() result = (ptrvalue(x,0),ptrvalue(x,1),ptrvalue(x,2),ptrvalue(x,3)) ptrfree(x) return result
def GetStatistics(self, approx_ok=0, force=1): x = ptrcreate('double', 0, 4) err = _gdal.GDALGetRasterStatistics(self._o, approx_ok, force, x, ptradd(x, 1), ptradd(x, 2), ptradd(x, 3)) if err != 0: ptrfree(x) raise ValueError, GetLastErrorMsg() result = (ptrvalue(x, 0), ptrvalue(x, 1), ptrvalue(x, 2), ptrvalue(x, 3)) ptrfree(x) return result
def GetExtent( self, force = 1 ): """Returns the extent of the layer as a four-tuple""" extents = _gdal.ptrcreate( 'double', 0.0, 4 ) res = _gdal.OGR_L_GetExtent( self._o, _gdal.ptrcast(extents,'OGREnvelope_p'), force ) if res != 0: ret_extents = None else: ret_extents = ( _gdal.ptrvalue( extents, 0 ), _gdal.ptrvalue( extents, 1 ), _gdal.ptrvalue( extents, 2 ), _gdal.ptrvalue( extents, 3 ) ) _gdal.ptrfree( extents ) return ret_extents
def GetExtent(self, force=1): """Returns the extent of the layer as a four-tuple""" extents = _gdal.ptrcreate('double', 0.0, 4) res = _gdal.OGR_L_GetExtent(self._o, _gdal.ptrcast(extents, 'OGREnvelope_p'), force) if res != 0: ret_extents = None else: ret_extents = (_gdal.ptrvalue(extents, 0), _gdal.ptrvalue(extents, 1), _gdal.ptrvalue(extents, 2), _gdal.ptrvalue(extents, 3)) _gdal.ptrfree(extents) return ret_extents
def GetScale(self): c_success_flag = ptrcreate('int',0,1) result = _gdal.GDALGetRasterScale(self._o,c_success_flag) success_flag = ptrvalue(c_success_flag,0) ptrfree(c_success_flag) if success_flag: return result else: return None
def ComputeBandStats( self, samplestep = 1, progress_cb = None, progress_data = None ): mean_p = _gdal.ptrcreate( 'double',0,1) stddev_p = _gdal.ptrcreate( 'double',0,1) (prog_cb, prog_info) = \ _gdal.MakeProgressInfo( progress_cb, progress_data ) result = _gdal.GDALComputeBandStats( self._o, samplestep, mean_p, stddev_p, prog_cb, prog_info ) mean_stddev = ( _gdal.ptrvalue(mean_p,0), _gdal.ptrvalue(stddev_p,0) ) _gdal.ptrfree( mean_p ) _gdal.ptrfree( stddev_p ) _gdal.ptrfree( prog_info ) if result != 0: raise ValueError, GetLastErrorMsg() else: return mean_stddev
def GetScale(self): c_success_flag = ptrcreate('int', 0, 1) result = _gdal.GDALGetRasterScale(self._o, c_success_flag) success_flag = ptrvalue(c_success_flag, 0) ptrfree(c_success_flag) if success_flag: return result else: return None
def ComputeBandStats(self, samplestep=1, progress_cb=None, progress_data=None): mean_p = _gdal.ptrcreate('double', 0, 1) stddev_p = _gdal.ptrcreate('double', 0, 1) (prog_cb, prog_info) = \ _gdal.MakeProgressInfo( progress_cb, progress_data ) result = _gdal.GDALComputeBandStats(self._o, samplestep, mean_p, stddev_p, prog_cb, prog_info) mean_stddev = (_gdal.ptrvalue(mean_p, 0), _gdal.ptrvalue(stddev_p, 0)) _gdal.ptrfree(mean_p) _gdal.ptrfree(stddev_p) _gdal.ptrfree(prog_info) if result != 0: raise ValueError, GetLastErrorMsg() else: return mean_stddev
def GetTOWGS84(self): pd = ptrcreate('double', 0.0, 7) err = _gdal.OSRGetTOWGS84(self._o, pd, 7) if err != 0: print err raise ValueError, ('GetTOWGS84() failed, err = %d.' % err) result = (ptrvalue(pd, 0), ptrvalue(pd, 1), ptrvalue(pd, 2), ptrvalue(pd, 3), ptrvalue(pd, 4), ptrvalue(pd, 5), ptrvalue(pd, 6)) ptrfree(pd) return result
def GetTOWGS84( self ): pd = ptrcreate( 'double', 0.0, 7 ) err = _gdal.OSRGetTOWGS84( self._o, pd, 7 ) if err != 0: print err raise ValueError, ('GetTOWGS84() failed, err = %d.' % err) result = ( ptrvalue(pd,0), ptrvalue(pd,1), ptrvalue(pd,2), ptrvalue(pd,3), ptrvalue(pd,4), ptrvalue(pd,5), ptrvalue(pd,6) ) ptrfree( pd ) return result
def GetGeoTransform(self): c_transform = _gdal.ptrcreate('double',0,6) if _gdal.GDALGetGeoTransform(self._o, c_transform) == 0: transform = ( _gdal.ptrvalue(c_transform,0), _gdal.ptrvalue(c_transform,1), _gdal.ptrvalue(c_transform,2), _gdal.ptrvalue(c_transform,3), _gdal.ptrvalue(c_transform,4), _gdal.ptrvalue(c_transform,5) ) else: transform = (0,1,0,0,0,1) _gdal.ptrfree( c_transform ) return transform
def GetGeoTransform(self): c_transform = _gdal.ptrcreate('double', 0, 6) if _gdal.GDALGetGeoTransform(self._o, c_transform) == 0: transform = (_gdal.ptrvalue(c_transform, 0), _gdal.ptrvalue(c_transform, 1), _gdal.ptrvalue(c_transform, 2), _gdal.ptrvalue(c_transform, 3), _gdal.ptrvalue(c_transform, 4), _gdal.ptrvalue(c_transform, 5)) else: transform = (0, 1, 0, 0, 0, 1) _gdal.ptrfree(c_transform) return transform
def GetBlockSize(band): x = _gdal.ptrcreate('int', 0, 2) _gdal.GDALGetBlockSize(band._o, x, _gdal.ptradd(x, 1)) result = (_gdal.ptrvalue(x, 0), _gdal.ptrvalue(x, 1)) _gdal.ptrfree(x) return result
def GetBlockSize(band): x = _gdal.ptrcreate('int', 0, 2) _gdal.GDALGetBlockSize(band._o, x, _gdal.ptradd(x, 1)) result = (_gdal.ptrvalue(x, 0), _gdal.ptrvalue(x, 1)) _gdal.ptrfree(x) return result
def ComputeRasterMinMax(self, approx_ok = 0): c_minmax = ptrcreate('double',0,2) _gdal.GDALComputeRasterMinMax(self._o, approx_ok, c_minmax ) result = ( ptrvalue(c_minmax,0), ptrvalue(c_minmax,1) ) ptrfree( c_minmax ) return result
def ComputeRasterMinMax(self, approx_ok=0): c_minmax = ptrcreate('double', 0, 2) _gdal.GDALComputeRasterMinMax(self._o, approx_ok, c_minmax) result = (ptrvalue(c_minmax, 0), ptrvalue(c_minmax, 1)) ptrfree(c_minmax) return result