diff --git a/src/main.cpp b/src/main.cpp index e1208cbf3aa75dd8a410b5a7250975af4e1ce19b..de448d3bea984483518f1f2fc19ca8ea178f544e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -63,11 +63,11 @@ obiatools_zonalstats(PyObject *self, PyObject *args) { if (!w || w == Py_None) { wg = 0; } else { - PyArray_Descr* dtype; - int _ndims; - npy_intp _dims; - PyArrayObject* _w; - PyArray_GetArrayParamsFromObject(w,NULL,1,&dtype,&_ndims,&_dims,&_w,NULL); + PyArray_Descr* dtype = PyArray_DescrFromType(NPY_FLOAT32); + //int _ndims; + //npy_intp _dims; + PyArrayObject* _w = (PyArrayObject*)PyArray_FromAny(w, dtype, 1, 1, NPY_ARRAY_CARRAY, NULL); + //PyArray_GetArrayParamsFromObject(w,NULL,1,&dtype,&_ndims,&_dims,&_w,NULL); wg = (float*)PyArray_DATA(_w); } @@ -76,11 +76,11 @@ obiatools_zonalstats(PyObject *self, PyObject *args) { nvg = new Data[B]; for (k=0; k<B; k++) nvg[k] = -9999.0; } else { - PyArray_Descr* dtype; - int _ndims; - npy_intp _dims; - PyArrayObject* _nv; - PyArray_GetArrayParamsFromObject(nv,NULL,1,&dtype,&_ndims,&_dims,&_nv,NULL); + PyArray_Descr* dtype = PyArray_DescrFromType(NPY_FLOAT32); + //int _ndims; + //npy_intp _dims; + PyArrayObject* _nv = (PyArrayObject*)PyArray_FromAny(nv, dtype, 1, 1, NPY_ARRAY_CARRAY, NULL); + //PyArray_GetArrayParamsFromObject(nv,NULL,1,&dtype,&_ndims,&_dims,&_nv,NULL); nvg = (Data*)PyArray_DATA(_nv); }