Area of Irregular Polygons

Introduction

I simply thought I would share with you a clever technique I once used to detect the area of full general polygons.

The polygon could be regular (all angles are equal and all sides are equal) or irregular

The Example Polygon

Let's use this polygon as an example:

irregular polygon

Coordinates

The first step is to plow each vertex (corner) into a coordinate, similar on a graph:

irregular polygon coords

Surface area Under Ane Line Segment

Now, for each line segment, piece of work out the area down to the x-axis.

irregular polygon coords and area of one graph trapezoid

And then, how do nosotros summate each area?

area of graph trapezoid is width by average height

Boilerplate the two heights, then multiply by the width

Instance: For the shape highlighted to a higher place, we take the two heights (the "y" coordinates ii.28 and 4.71) and piece of work out the boilerplate height:

(2.28+4.71)/2 = three.495

Work out the width (the difference between the "x" coordinates 2.66 and 0.72)

2.66-0.72 = 1.94

The area is width×height:

1.94 × 3.495 = 6.7803

Add Them All Up

Now add them all upwardly!

But the trick is to add when they go forward (positive width), and subtract when they become backwards (negative width).

If you ever go clockwise around the polygon, and always decrease the showtime "x" coordinate from the second, it works out naturally, similar this:

From To
x y x y Avg Superlative Width (+/-) Area (+/-)
0.72 ii.28 ii.66 4.71 3.495 1.94 6.7803
2.66 4.71 v 3.5 iv.105 2.34 9.6057
5 iii.5 3.63 2.52 3.01 -1.37 -iv.1237
3.63 ii.52 four one.6 2.06 0.37 0.7622
iv i.vi i.9 1 1.3 -2.1 -two.7300
1.9 one 0.72 2.28 ane.64 -1.18 -1.9352
Full: viii.3593

You can also go the other direction. If you get a negative expanse just go far positive.

And it looks like this:

irregular polygon area all trapezoids

So that'south it! The surface area is 8.3593

Surface area of Polygon Tool

Glad you lot read this far! You are rewarded with a link to the Area of a Polygon Drawing Tool that can do all of this for y'all. It also accepts manual entry of coordinates.