12 comments

[ 3.5 ms ] story [ 33.1 ms ] thread
If you rewrite this method in terms of determinants, then it also has the bonus of generalizing correctly to arbitrarily many dimensions! And it also gives you a nice picture - imagine adding and subtracting simplices with one point at the origin (triangles in 2D, tetrahedra in 3D).
Came here to ask about 3D. Weird that the article doesn't mention the 3D or n-dimensional case.
I use this in measuring field areas. Like the text reads, this is Green's Theorem.

The area of a triangle ABC can be determined by doing the cross product of any of the vectors that are the translation from a vertex to another (e.g. AB⨯AC = |AB|.|AC|.sin{^BAC}). More rigorously, this is the area of a lozenge, which then has to be divided by two.

Imagining a point X inside a convex polygon, it is easy to see a set of triangles with vertex X in common.

In fact, the polygon can not only be concave but point X can be outside the polygon, since the sine will compensate for negative and positive angles, subtracting any weird triangle out of the sum in the end.

Computationally, the point X should be as close as possible to every vertex, so that rounding errors are minimized.

I worked at a company, HouseCanary, writing software for doing home appraisals. We used this formula to calculate the square footage of a home based on a computer drawing. The funny thing is that for an appraisal, you have to show your calculations. We thought showing the points and a shoelace formula whitepaper would be enough. It wasn't. So, my boss wrote code that dumps the whole calculation onto a pdf so someone who works in lending can say "that looks right".
Do you no longer work there for publically divulgable reasons?
I got a job as a software engineer at another company. Came with a title bump and raise.
Glad to hear it. A friend who still works there as far as I know was singing their praises to me at a wedding a couple of years ago.