CPC G06T 13/40 (2013.01) [G06T 19/20 (2013.01); G06T 7/155 (2017.01); G06T 15/08 (2013.01); G06T 2210/44 (2013.01); G06T 2219/2021 (2013.01)] | 21 Claims |
1. A method for generating a weighted interpolation between a plurality n of morph target shapes B1 . . . Bn elative to a base shape B0 including the steps of:
receiving a set of weights W, including for each morph target shape Bk of the morph target shapes B1 . . . Bn, a weight wk to be applied to that morph target shape Bk;
receiving a plurality m of constraint shapes C1 . . . Cm, each constraint shape associated with non-zero weights (associated weights) on one or more of the morph target shapes B1 . . . Bn (associated shapes);
generating a continuous multivariate interpolation function configured to reproduce each morph target shape and each constraint shape when a respective morph target shape or a constraint shape's associated weights on associated shapes are provided as arguments to the interpolation function; and using the weights W to be applied to morph target shapes as arguments of the interpolation function to generate the weighted interpolation, wherein the interpolation function has the form:
ƒ(W)=B0+Σk=1n (wk ΔBk)+Σ1=1m (βi ΔCi)
wherein ΔBk represents a modified morph target shape;
ΔCi represents a modified constraint shape; and
βi represents a modifier applied to each constraint shape Ci;
wherein the interpolation function is configured to make the interpolation function hold for all constraint shapes C1 . . . Cm.
|