Blob Metamorphosis based on Minkowski Sums
Abstract
This paper addresses the metamorphosis of soft objects built from skeletons. We propose a new approach that may be split into three steps. The first step consists in an original splitting of the initial and the final shapes with a view to creating a bijective graph of correspondence. In the second step, we assume that the skeletons are convex polygonal shapes, and thus take advantage of the properties of Minkowski sums to characterize the skeletons of intermediate shapes. Eventually, we characterize the intermediate distance and field functions- we describe a set of interpolation methods and propose to use a restricted class of parametrized distance and field functions so as to preserve coherence and speed-up computations.We show that we can easily extend those results to achieve a Bezier like metamorphosis where control points are replaced by control soft objects- in this scope, we have adapted existing accelerated techniques that build a Bezier transformation from a set of convex polyhedra to any kind of convex polygonal shapes.Eventually, we point out that matching all components of the initial and the final shapes generates amorphous intermediate shapes based on an overwhelming number of intermediate sub-components. Thus, we propose heuristics with a view to preserving coherence during the transformation and accelerating computations. We have implemented and tested our techniques in an experimental ray-tracer.
BibTeX
@article {10.1111:1467-8659.1530143,
journal = {Computer Graphics Forum},
title = {{Blob Metamorphosis based on Minkowski Sums}},
author = {Galin, E. and Akkouche, S.},
year = {1996},
publisher = {Blackwell Science Ltd and the Eurographics Association},
ISSN = {1467-8659},
DOI = {10.1111/1467-8659.1530143}
}
journal = {Computer Graphics Forum},
title = {{Blob Metamorphosis based on Minkowski Sums}},
author = {Galin, E. and Akkouche, S.},
year = {1996},
publisher = {Blackwell Science Ltd and the Eurographics Association},
ISSN = {1467-8659},
DOI = {10.1111/1467-8659.1530143}
}