# Is there a generic function to find the area of any shape?

Given the coordinates of all points making up a two-dimensional shape and the order in which they are connected, is there any generic formula that will give the area of that shape?

EDIT: The list of points would be a list of all of the vertices.

• There are generally infinitely many points in any shape with nonzero area. However, if you restrict yourself to polygons and your points are the corners of the polygon (given in order), then you can use the shoelace formula. Commented Jan 29, 2012 at 23:34
• Given the (algorithm) tag, I have to wonder: are you talking about polygons in particular? Vector calculus gives an area formula given only a parametrization of the boundary, for example.
– anon
Commented Jan 29, 2012 at 23:34
• I doubt there is any useful closed-form expression for this. If you partition it into convex parts, and then partition those into triangles, you can then add up the areas of the triangles, and the last part can be made into a closed-form expression. Commented Jan 29, 2012 at 23:35
• – user856
Commented Jan 29, 2012 at 23:47

## 2 Answers

If you mean arbitrary sets of points in the plane, the answer is probably "no" unless you regard the defintion of Lebesgue measure as such a formula. However, you write about "the order in which they are connected" and that makes me suspect you may have in mind a sequence of points on the boundary with line segments between them as components of the boundary. In that case, maybe the shoelace formula will help you.

And if you mean polygons whose corners are integer points, there is Pick's theorem.

• The Shoelace formula is what I was looking for. Thanks. Commented Jan 30, 2012 at 1:51

I believe so, using shoelace theorem. If you line up the co-ordinates starting anywhere but always going counter-clockwise and ending with the first co-ordinate you can multiply the previous x value and after y value and then subtract vice versa and divide by 2. Just search it up....