The best explanation, by a math teacher, was something like this.
Draw several triangles on a piece of graph paper in which you can determine the coordinates of the corners. That is make the corner points of the triangle integer values.
1. A right triangle with the base along the X axis, and the height along the Y axis.
2. An equalilateral triangle (or very close), with no side parallel to the X or Y axis.
3. A third triangle with no sides equal in lenth, and no sides parallel to the X or Y axis.
Assign coordinates to the vertex of each triangle.
Plug in your coordinates to the equation you show, and then determine what each difference represents on each triangle.
After doing that it, I understood what was happening.
Then it was easy to see how the area of any polygon could be computed by using the coordinates in sequence.