= Affine combination
{title2=$\sum_i\lambda_iP_i,\quad\sum_i\lambda_i=1$}
{wiki}
An <affine combination> is a weighted point $P=\sum_{i=0}^k\lambda_iP_i$ with $\sum_{i=0}^k\lambda_i=1$. The coefficients can be negative. The sum is meaningful in an <affine space> without selecting a preferred origin: relative to any point $O$, it means $P=O+\sum_i\lambda_i(P_i-O)$. <Affine maps> preserve these weighted points. <Curves and Surfaces in Geometric Modeling: Theory and Algorithms by Jean Gallier>[§2.4, Lemma 2.4.1, pp. 23–24; §2.7, Definition 2.7.1, p. 37]{ref}
For an original example in the <Euclidean plane>, take $A=(0,0)$, $B=(2,0)$ and $C=(0,2)$. Then $P=\tfrac14 A+\tfrac12 B+\tfrac14 C=(1,\tfrac12)$ lies inside their <triangle>. Its coefficients are nonnegative, making it a <convex combination>. In contrast, $R=-\tfrac12 A+\tfrac32 B=(3,0)$ is beyond $B$: it is an <affine combination> but not a <convex combination> of these three points. Negative weights allow <extrapolation>, rather than only <interpolation> inside the <convex hull>.
For the <affine map> $T(x,y)=(2x+y+1,y-2)$, the same weights produce $T(P)=(\tfrac72,-\tfrac32)$ from $T(A),T(B),T(C)$, and produce $T(R)=(7,-2)$ from $T(A),T(B)$. Thus one can compute a weighted point before transforming the vertices or afterwards, obtaining exactly the same point.
\Image[/affine-combinations-interpolation-and-extrapolation.png]
{title=Positive and signed affine weights before and after a transformation}
{description=The green point has weights $(1/4,1/2,1/4)$ and stays inside the transformed <triangle>. The orange point has weights $(-1/2,3/2,0)$ and lies beyond the corresponding edge endpoint. These are original coordinate examples; the same weights are used in both panels.}
This is useful whenever an object is built from weighted control points: its construction commutes with an <affine map>, so transforming the control points transforms the constructed object as well. The <sum> of the weights is the essential condition; no assumption about <lengths> or <angles> is needed.
Back to article page