I think this is an important calculation that shouldn't be overlooked. When the a value is zero then the point lies on the line of the triangle. In addition, if any value is greater than 1 or less than 0 then the point lies outside of the triangle.
Is it possible for one coordinate to be negative, but still have the point lie in the triangle? I'm envisioning a scenario where the negative coordinate is very small and the other two "pull" the point back into the triangle. How can we interpret this?
I believe Barycentric coordinates work as follows: 1) If all are positive, the point is within the triangle, 2) If one or two are zero, then the point lies on the edge or on the vertex, and 3) If one or more are negative, then the point lies outside the triangle.
In the case of a small negative number, I think it would be likely that we'd have a point very close to the triangle, but still outside.
If we look at Barycentric coordinates as being representative of the sub-areas within the triangle, then it makes sense that a negative coordinate would mean that the point lies outside the triangle since we have a "negative area," right?
(Not entirely certain if this is the correct way to think about this; if someone could correct/verify, that'd be great!)
I agree with x-fa19 and that the point lies outside the triangle only when there is any negative coordinate. And here is a nice graph showing the signs for these coordinates in different parts of the triangle: https://upload.wikimedia.org/wikipedia/commons/c/c4/Areal_coordinates.png. And also an interesting application of barycentric coordinates of cutting strings: http://www.cut-the-knot.org/triangle/glasses.shtml.
The barycentric coordinates having the constraint of being non-negative for points inside the triangle comes from the definition of the line segment. For example, if a point P is on the line segment AB, then P = t * A + (1-t) * B for t between 0 and 1. Using this definition, one can show that for points inside the triangle, the barycentric coordinates are always non-negative.
If any one coordinate is negative, then the point lies within the positive span of the two vectors who point outward from the vertex associated with the negative coordinate.
One tasteful perspective that is especially insightful when considering texture mapping is that each Bary coordinate represent the fraction of the distance the point lies on the line orthogonal to the edge across from the vertex associated with that coordinate.
In other words, visualize lines orthogonal to each inside edge that connect to the opposite vertex. Each Barycentric Coordinate is the fraction of the distance traveled parallel to that line.