Given a list of 3D coordinates that define the surface( `Point3D1`, `Point3D2`, `Point3D3`, and so on), how to calculate the centroid of the surface?

More specifically, I am looking for a natural extension of the following [2D centroid algorithm][1]  in 3 or more dimension:

![alt text][2]
![alt text][3]

![alt text][4]

Any idea?

**P/S: All the points are coplanar, this is the assumption.** 


  [1]: http://en.wikipedia.org/wiki/Centroid#Centroid_of_polygon
  [2]: http://upload.wikimedia.org/math/e/e/1/ee14cbb2b170c4bb435f1d84e78f6d66.png
  [3]: http://upload.wikimedia.org/math/a/4/c/a4cee81a1d18e4d067f66d4d40a8a1fe.png
  [4]: http://upload.wikimedia.org/math/0/2/a/02aecb75f67f8c7b2fc11fdcbcb6ea80.png