I quite frankly have no idea what you just said, so this may be complete junk in terms of comparative speed. If I saw that problem on a test, I would take the area of the containing rectangle, and subtract the area not in the triangle. Conveniently, the area not in the triangle is the sum of one, two, or three right triangles. This could probably use a diagram for anyone who doesn't think in the coordinate system, but I'm lazy.
There are three ways to do this (I'm assuming this was on a Math test, so you have the use of calculators)
1. Distance formula then Heron's theorem
TAKES WAY TOO LONG!
2. 3*3 determinant as follows:
| x1 y1 1 |
| x2 y2 1 |
| x3 y3 1 |
then divide by 2
3. The way you mentioned.
Personally, I would do the 3rd way... it's fast, easy, and relatively mistake-free. I'd find the vectors from the left-most and bottom-most vertex, so as to avoid negatives. Vectors from this matrix can be defined as the translation function.
There is another method, and it works for any n-gon, as long as the points are given in clockwise or counterclockwise order.
1.) list the points in order (cw or ccw) followed by the starting point again, in a column. 2.) multiply diagonally left and diagonally right, making two new columns. 3.) add the new columns 4.) subtract these totals 6.) divide by two.
The absolute value of this will give the area of the polygon in question.
For example: Find the area of the polygon determined by (1,1), (2,2), (4,2) and (5,1) (clearly this is a trapezoid with area three, but this is a simple demonstration.
1.) list the points in order.
1 1 2 2 4 2 5 1 1 1 remembering to repeat the first point.
2.) Multiply diagonally left and right.
1 1 2X2 /4X2\ 2/5X1\2 8/1X1\4 10/ \4 1 5
3.) Total each column.
21 15
4.) Subtract the totals
21 - 15 = 6
5.) Divide by two 6/2 = 3
(If the points are in counterclockwise order, the answer will be negative, so just take the absolute value.)