Creating a 3D grid using X,Y,Z coordinates at cell centers
If you grid is regular:

You have calculate dx = x[i+1]-x[i], dy = y[i+1]-y[i], dz = z[i+1]-z[i].
Then calculate new arrays of points:
x1[i] = x[i]-dx/2, y1[i] = y[i]-dy/2, z1[i] = z[i]-dz/2.

If mesh is irregular you have to do the same but dx,dy,dz you have to define for every grid cell.
I have a question, I have been given x,y,z coordinate values at cell centers of a grid. I would like to create structured grid using these cell center coordinates. 
Any ideas how to do this?