# Barycentric coordinates

Ok, this is not what you’re thinking.

I need to compute barycentric coordinates for a point outside a polygon.

What I need to know, are BC coords valid outside a polygon? Can those weights be used
to find an interpolated color/normal? Are negative weights bad?

Or you can just delete your post. oh well.

Hi

I don’t think it’s bad. You can find an example in 2d here:
http://graphics.cs.ucdavis.edu/GraphicsNotes/Barycentric-Coordinates/Barycentric-Coordinates.html

The first example shows 3 points and their barycentric coords wrt a line segment. One of the points is outside the line segment, and it’s bar. coord. is negative, but that seems to be ok.

(‘Bad’ things might happen when some code handles these guys and doesn’t anticipate them being negative.)

mathworld.wolfram.com say lots of things about barycentric coordinates. Couldn’t find anything about outside the triangle, but might have missed it as well.

To recap, it looks like it should be safe, at least when used reasonably, ie, when your point outside the triangle doesn’t actually goes to infinity. But then again, in graphics you shouldn’t be getting that anyway.

Do you know if barycentric coordinates can be computed relatively in some way?

For example, let’s say I have a point inside a triangle and compute its BC coords.
Then I move that point outside the triangle by some delta amount.

Is there someway I can determine the new BC coords based on the old BC coords and
old position of the point?

I’m a bit confused by your last question. Could you please repeat what’s the input for this calculation you want to do? I assume the output will be the new BC. You say you want to find that based on old BC and old position. What else will be known?

[This message has been edited by madmortigan (edited 02-24-2004).]

I don’t even know if it is possible or not.

Is there a relationship between two BC coords based on position?

This is what I got:

w1 + w2 + w3 = 1
w4 + w5 + w6 = 1, so

w1 + w2 + w3 = w4 + w5 + w6,

w1 = a1/A, so

(a1/A) + (a2/A) + (a3/A) = (a4/A) + (a5/A) + (a6/A)

a1 + a2 + a3 = a4 + a5 + a6,

but this gets me no where.

How to involve position, when I’m dealing with area?

May be we are not asking the right questions here, but we’ll get it.

You’ve probably seen this, but just in case, wolfram has a couple of interesting formulas here:
http://mathworld.wolfram.com/BarycentricCoordinates.html

at the end of the page they give the equation of a line in barycentric coordinates and the connection between area and coordinates.

I’m still not quite clear about what exactly you’re looking for though.

I guess I’m the only person out there who wants negative weights. Everyone else wants them positive. 