HAL Id: inria-00537493
https://hal.inria.fr/inria-00537493
Submitted on 18 Nov 2010
HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.
L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.
Implicit Modeling with Skeleton Curves: Controlled Blending in Contact Situations
Alexis Angelidis, Pauline Jepp, Marie-Paule Cani
To cite this version:
Alexis Angelidis, Pauline Jepp, Marie-Paule Cani. Implicit Modeling with Skeleton Curves: Con-
trolled Blending in Contact Situations. International Conference on Shape Modeling and Applica-
tions (SMI’02), ACM, May 2002, Banff, Canada. pp.137-144, �10.1109/SMA.2002.1003538�. �inria-
00537493�
Controlled Blending in Contact Situations
Alexis Angelidis, Pauline Jepp
and Marie-Paule Cani
iMAGIS y
-GRAVIR, INRIA Rh^one-Alpes
655 avenue de l'Europe, 38330Montbonnot,France
[email protected] [email protected] [email protected]
Abstract
Interactiveimplicitmodellingwithcomplexskeletons
was recently improved with the introduction of primi-
tives denedat dierent LODs. These implicit primi-
tives useasubdivision curveasaskeleton. In this pa-
peran extensiontothis representation ispresented, in
order to make it suitable for the interactive modelling
and animation of soft objects in contact situations.
The rstcontribution improves the display methodfor
subdivision-basedimplicitprimitives;thisusesanadap-
tive polygonisation which locally renes, where neces-
sary,accordingtothecurrentlyselectedLOD.Thesec-
ondcontributionconsistsof anewmethodforprevent-
ingunwantedblendingwhenaskeleton-curvefoldsback
onto itself. The third introduces local deformations
where surfaces that should not blend come into con-
tact. We illustrate the benetsof this methodology by
describing two applications: the interactive modelling
ofcomplexorganicshapesincontactsituationsandthe
physically-basedanimationof suchorganic shapes.
1 Introduction
Although parametric surfaces have been more
widelyused,theblendingpropertiesofimplicitsurfaces
makethemparticularlysuitedtoorganicmodelling. In
such casessoft and branchingobjectsare moreeasily
achievedthan with their parametriccounterparts. In
particular, skeleton-basedimplicit surfacesgenerate a
smooth coating along a skeleton, which can be ani-
mated. Inthispaperwefocusonimplicitsurfacesgen-
erated by a graph of branching curves, following the
CurrentlyatDepartementofComputerScience,University
ofCalgary,Canada.
y
iMAGISisajointprojectofCNRS,INRIA,InstitutNational
methodologyrstintroducedin [6]. Theeldfunction
that generatesthe implicit surface is computed using
convolution,whichensuresbulge-freeblendingbetween
implicitprimitivesatbranchingpoints. Moreover,the
use ofsubdivision-curvesasskeleton elementsenables
thegenerationoftheimplicitsurfaceatdierentlevels
ofdetail(LODs),whichmakesthisrepresentationvery
convenientin aninteractive modelling and animation
framework.
However,makingimplicitsurfacesbehaveasorganic
shapeswhen their skeletonmovesand deforms is not
easy: body-partsgenerated bydistantpieces of curve
on the skeleton graph should not blend, but rather
squash each otherwhenthey comeinto contact. This
requirescarefullcontrolofblending,whichwasnotpro-
vided byprevioussolutions.
Thispaperextendsimplicitsubdivisioncurveprim-
itives,givingthemtheabilitytocapturetheshapeand
local deformationsoforganicobjectsin contactsitua-
tions. Therstcontribution isto improvethedisplay
of the surfaces using an adaptiveinterativepolygoni-
sation, which provides more details in highly curved
areas. Thesecondistheintroductionofalocalconvo-
lutionmethod,whichpreventsunwantedblendswhilst
preserving smoothness, even when a skeleton curve
coilsorfolds-backonitself. Lastly,weextendthePre-
cise ContactModelling (PCM)methodology[5,11]to
the subdivision-curve skeletons' framework. Two ap-
plications illustrate the benets of this methodology:
the interactivemodelling of organicshapesin contact
situations, andtheirphysically-basedanimation.
This paper is structured as follows. In Section 2,
some of the relevant background work is presented.
Section 3 presentsthe adaptiveinterativepolygonisa-
tion. Section 4introducesthenewunwantedblending
solution. The extension of PCM to the subdivision-
curveprimitivesisdescribedinSection5. Applications
2.1 Skeleton-Based Implicit Surfaces
Animplicitsurfaceisthesetofpointsforwhicheld
function f(p) takesvalue iso,so f(p) iso =0; f(p)
is ascalareld function andiso is thevalueat which
the iso-surface is drawn. An evaluation of the eld
function at any point permits the inside/outside test
whichsimpliescomputations forcontrolled blending,
collisiondetectionandraytracing.
Theeldfunctioncanbegeneratedbypoints [1,10,
15] orbymorecomplexgeometric primitives(such as
line-segmentsortriangles) that form askeleton. The
skeleton, surrounded by its implicit skin, provides an
intuitive way of controlling aspects of an object in a
modellingoranimationenvironment[8,4]. There are
two main ways to dene an implicit surface from a
skeleton:
Distance surfaces [4] calculate the eld value at a
given point P from the distance between P and the
closest point on the skeleton. Blending the contribu-
tions of severalskeleton elements isthen usually per-
formedbysummingtheireldcontributions. Although
thiseliminatescreasesonthesurfacewheretheunder-
lyingskeletalelementsjoin,italsocreatesbulges. For
example,ifaskeletoniscreatedfromapolyline,blend-
ing of the surface is desirable but not always to the
extentthatabulgeiscreatedwherethelinesjoin.
If a bulge at the join point of skeletal elements is
considredanartifact, Convolution Surfaces[3]canbe
used. Inthisrepresentation,theeldvalueatapointP
is calculatedbyintegrating allthe contributionsfrom
the dierentpointsonthe skeleton. Smoothcomplex
surfacescanbecreatedbysummingtheintegralsofin-
dividualeldcontributionsofrelativelysimpleskeletal
elements. Theintroductionofclosed-formsolutionsfor
theconvolutionintegralallowseÆcientcomputationof
convolutionsurfaces forspecicsetsofskeletonprimi-
tives,suchasline-segmentsandarcsofcircles[14].
2.2 Subdivision-curves as Skeletons
Oneofthemainweaknessesofimplicitsurfacescom-
pared to parametric ones has long been the lack of
methodsforgeneratingthematdierentLevelsofDe-
tail (LOD). Since implicit surfaces are iso-surfacesof
eldfunctions,deningsuchLODsisequivalenttogen-
eratingtheeldfunctionsat dierentresolutions.
Such a method was recently proposed in the spe-
cic case of implicit surfaces generated by graphs of
interconnected skeleton curves[6]. Subdivision curves
function itgenerates, atdierentresolutions. Ateach
resolution, the skeleton is represented by a polyline.
Closed-formconvolutionisusedforeÆcientlygenerat-
ingabulge-freeandcrease-freeimplicitsurface. Thisis
donebyusing 1
d 3
asconvolutionkernel,whichgivesan
integratedeldthatvariesastheinverseofthesquared
distancetotheskeletonelements. Interactivevisualiza-
tionis performed bygeneratingaclosedmesh around
eachskeletoncurve. Thesemesheslocallyoverlapnear
junction points where several curves meet, and their
vertices are migrated to the iso-surface. The meshes
resolutionisuniform,butcanbetunedaccordingtothe
currentLODoftheunderlyingimplicitsurface. Exam-
plesofobjetscreatedwiththismethodaredepictedin
Figure 1.
Figure 1. From [6]: an implicit object defined from a graph of subdivision curves with two different LODs.
Inthispaperwewillrelyonthesamemethodology
fordeningimplicitsurfacesfromgraphsofsubdivision
curves.TocomplementtheLODsontheeldfunction,
one of our contributions is to automatically generate
LODs onthe meshesthat samplethesurface. This is
donebylocally reningthesemeshesaccordingtothe
localerrorfromtheiso-surface,consideringitscurrent
LOD.Thisextensionmakesthemodelverywellsuited
forinteractivemodellingandanimation.
2.2.1 Controlled Blending
When parts of an implicit surface come into con-
tact, careful blending between the eld contributions
of skeletal elements is required: indeed, parts of the
surface generated by elements that are distant in the
skeletongraphshould notblend;moreover,ifthe aim
istomodelorganicshapes,ormoregenerallyanykind
of deformable bodies, object parts should not locally
intersect,butratherdeformwhentheycomeintocon-
tact.
Previousworkshaverecommended theuse ofare-
strictedblendinggraphtoavoidunwantedblendingsit-
set of skeletal elements that are authorized to blend)
introduces creases(the surfaceis not C 1
everywhere)
[12,5].
Inthecaseofskeletonsdenedasgraphsofbranch-
ing curves,the skeleton's topologywasused for auto-
maticallydening theblendinggraph[6]. Moreover,a
solution was proposed forguaranteeing C 1
continuity
everywhere. It consisted in computing the eld con-
tribution at apoint P by propagatingblending along
theskeletoncurveaslongasthenextskeletalelements
had anon-zerocontribution atthequerypoint. How-
ever,this solutionwas notfully satisfying: largefolds
that did not blend could be generated (for instance,
inFigure1thetaildoesnotblendwiththehead),but
theauthorsstressedthatblendingcouldnotbeavoided
betweensmallerfolds,asillustratedinFigure8.
Inthispaperweproposeasolutionthatfullysolves
this problem, by introducting a local convolution for-
mulation,whichwillbedescribedinSection4.
2.2.2 Contact Modelling
In thecontext of amodelling and animationenviron-
ment, situations where neither blending nor intersec-
tion are considered appropriatecall for contact mod-
elling. Theability of objects to respond to collisions
bydeforminglocallyaroundacontactsurfaceisindeed
essentialforavisuallyrealisticmodellingofcontactsit-
uations[9]. Thisrequiresthatthecontactbetweenob-
jects,orparts ofanobject,andthedeformationsthat
occurasaresultbemodelled.
ThetechniqueknownasPreciseContactModelling
(PCM) [5,11] examinestheinteractionofobjectsand
generates the resulting local deformations. The idea
isto locallymodifytheobjects'eld functions,oncea
collisionhasbeendetected,byadding a\deformation
term" to them. Sincethis termis computedfrom the
otherobject'seldfunction,itcanbeseenasadierent
way of blending the twoshapes. More precisely, two
dierentdeformationeldtermsarecomputedforeach
object(or eachpartofanobject)in contact:
Intheregionwherethetwosurfacesoriginallyin-
tersect, theeld function f
1
of the rst object is
replacedbyf
1
+(iso f
2
),whilef
2
isreplacedby
f
2
+(iso f
1
). Thismovesthetwosurfacestothe
samelocation,wheref
1
=f
2 .
The deformation is propagated around the con-
tact region in order to preserve surface smooth-
ness, and to compensate for the loss of volume
due to the rst deformation. Opalach [11] gives
an eÆcient solution for doing so: f
1
is replaced
by f +b (f ) (similarly f by f +b (f )), the
1 2
sultingnewlocalbulgearoundthecontactregion
smoothlyconnectswiththerest oftheobject.
PCM was onlyapplied to distance surfaces for which
theeldfunctionwasalmostlinearlydecreasingaround
theiso-value[5,11]. Itsapplicationtoconvolutionsur-
faces such as those of [6], where the integrated eld
function varies as theinverse of the squared distance
totheskeleton,introducesanewsetofproblems,that
will bediscussedinSection 5.
3 Adaptive Polygonisation
The categories for visualising iso-surfaces are ray-
tracing, particles, or triangulation of the surface [2].
Evenwith improvements,therstmethod istooslow
to allow interaction with the skeleton, although pro-
viding high quality images. The second produces too
rough a display of the surface. The third has the
advantage of benetting from hardware acceleration.
The method we propose is an adaptive triangulation
method which isanextension ofsamplinganddisplay
method introduced by Desbrun [5] and improved by
Cani [6], in which sample points are sent along given
raysattached to skeletal elements, and sample its el-
ement's territory, i.e. theregions where the elements
eld contribution is the highest. Inorder to produce
an adaptive sampling, we propose to attach a rough
polygonisationto afew samplingpoints,andto rene
recursivelythepolygonisationusinganerrorcriterion.
Sample points are dened in a coordinate set at-
tached to the control skeleton. As shown in 2, the
point'srayneedsanoriginontheskeletonandadirec-
tionalongwhich thepointmoves.
u t d
n
Figure 2. Sampling point. Left: a single point.
Right: triangle supported by sampling points.
3.1 Setting local meshes
A rough polygonisation that coats the skeleton is
neededforinitialisation. Itisnotobvioushowtodene
it in branchingregions. Thus, theskeletoniscutinto
itsmaximallinearpieces(seeFigure3). Closedmeshes
are generated around each of those pieces. To avoid
visual discontinuities, themeshes are made to locally
overlap at joints, as was done in [6] (see sub-section
2.2).
Figure 3. A coarse skeleton made of seven surface pieces.
Theclosedmeshisinitializedasfollows: oneachlin-
earpieceofconnectedsegments,samplingaxesaresent
aroundthesurfaceinplanessuchthat:ifthejointisan
extremity,theplaneisnormaltothesegment;elsethe
jointisofvalence2,andtheplaneisthemedialplane
betweenthetwosegments. Additionalaxesaresentat
verticesofvalence1,alignedwiththesegmenttheyare
attachedto. Notethateachaxist
i
isattachedalonga
segmentataparameteru
i
. Theroughtriangulationis
thenbuildusingsamplepoints 1
ontheaxesasvertices
(seeFigure4).
Figure 4. Exploded construction of a coarse local mesh.
3.2 Adaptive local refinement
Therenementof thecoarse triangulationwehave
dened can be done in two ways: the rst is a triv-
ial uniformsubdivision of allthecoarse triangles; the
second is an adaptive renement using a local error
metric.
Thebestmethodtochoosewhetheratriangleneeds
subdivisionornotwouldbetomeasurethevolumethat
separatesthetrianglefromthemathematicallydened
iso-surface. This would however be time consuming.
Wehavechosentomeasuretheerrorusingdirectlythe
eld function: thus, a triangle edge is subdivided if
the dierence between the eld valueat its midpoint
andtheiso-valueisoisgreaterthanaconstant(which
couldbeview-dependenttoreneareasofinterest).
1
Convergence of the sample points towards the iso-surface
is donebynding the root of (f(root+tdir) iso) 2
using
Newton-Raphsonmethod,thusnowingt,beneciatingofcoher-
encebetweenpositions,orcanbedoneusingmethodsproposed
=
f v0+v1
2
iso
Thesubdivisionof anedgethenrequirestheinsertion
ofanewaxis: itsoriginanddirectionareinterpolated
linearly between the two axes of the vertices of that
edge. Figure5illustratesthebenetsofadaptivepoly-
gonisation: curvedareasaremorenely sampledthan
atterareas.
Figure 5. Adaptive triangulation of an implicit surface with varying radius along a skeleton curve.
4 Avoiding Unwanted Blending using
Local Convolution
As mentioned previously, shape modeling and ani-
mationwith skeletondened implicitsurfaces is intu-
itive,astheshapecorrespondstoacoatingoftheskele-
ton. Thanksto the blending property of this model,
theresultingiso-surfaceis smoothandhasanorganic
aspect without any eort. Unfortunately, this prop-
ertyalsoturnsouttobeadrawback,aswhenskeleton
primitivesaretooclose,allcanblendwitheachother,
withoutanycontrolonthetopologyofthenalshape.
AsstressedinSection2,noneoftheprevioussolutions
to thisproblemwassatisfying.
Oursolutioncanbeseenasalocalconvolution,since
we use a restricted skeleton range for computing the
eld valueat aquerypoint: aparameteru
i
alongthe
skeletonis assignedto eachquerypointp
i 2IR
3
. See
Figure 6. We then dene theportion of the skeleton
to be used forcomputing f(p
i
) as a neighborhood of
constantsizeDaroundu
i
(DisexpressedinEuclidian
distance along the skeleton). The eld value is com-
putedexactlythesamewayasbefore,exceptthatonly
theusefulpartoftheskeletonisconsideredduringthis
computation.
p
j u
i
u
j
D
j D
i
p
i
Figure 6. Local convolution
The only diÆculty consists in assigning askeleton
parameteru
i
toeachpointp
i 2IR
3
. Deningu
i asthe
parameter of the closest point on the skeleton would
i
oneachskeleton-curveoftheskeleton. Thetotaleld
value near abranching point is then dened by sum-
ming thesecontributions.
Letusconsider agivenskeleton-curve. Ifthequery
pointp
i
isoneofthesamplepointsusedfordisplaying
thesurface,ndingu
i
iseasy: wejust usetheparam-
eter of the reference point on the skeleton which was
usedfordening p
i
(seeSection3).
Inthegeneralcase,weneedto deneasimilar ref-
erencepointontheskeleton. This isdonebyre-using
the set of planes dened at each vertex of the skele-
ton, and depicted in Figure 4(for vertices of valence
1, the plane is normal to the segment, and for ver-
tices of valence 2, it is the medial plane between the
twoadjacentsegments). In-betweenplanesaredened
along segmentsusinglinearinterpolation betweenthe
planesassociatedwithvertices. Finding u
i forp
i then
simplyconsistsin ndingwhichofthese planespasses
throughp
i
,and usingthecorrespondinginterpolation
parameter. Thisisdonebysolving:
8
>
>
<
>
>
: r
i
=(1 u
i )r
0 +u
i r
1
d
i
=(1 u
i )d
0 +u
i d
1
d
i (p
i r
i )=0
u
i 2[0;1]
where r
0 and r
1
are vertices that dene the current
curve-segment,and d
0 and d
1
are the normal vectors
that dene the planesat r
0 and r
1
, respectively. See
Figure7foratwodimensional illustration.
di
r0
r1
ri
d1 d0
Figure 7. Assignation of a parameter to a point in IR
3for a segment of a linear skele- ton.
When several dierent planes generated by dier-
entline-segmentsofthecurvepassthroughp
i
,theone
whose parametergenerates themaximal eld value is
selected.
Thebenetsofournewcontrolledblendingmethod,
incomparisonwiththesolutionin[6],isshownonFig-
ure8. Thelocalconvolutionsolutionenablesustopre-
vent unwantedblendsbetweensmall folds,which was
impossibleusingtheprevioussolution.
5 Precise Contact Modelling
PreviousworkonPCMdealtwithdistanceimplicit
(a) (b)
Figure 8. Controlled blending: comparison between the solution in [6] (a) and our new solution based on local convolution (b).
suited tointeractivemodelingand animationenviron-
ments [11]. In thecontext ofconvolutionsurfaces [6],
the main dierence lies with the shape of the convo-
lution kernel; unlike the previous method, the eld
functionisnotlinearlydecreasing. Also,thesubdivion
structure of ourskeleton canbeused to decrease the
computation cost of collision detection. This section
will rst describe how we deal with the collision de-
tectionandprecisecontactmodeling(PCM),andthen
wewill focuson the issuesintroduced by convolution
surfaces.
The PCM process has three main steps: detect a
collision;ndthecontactsurface;andgeneratethede-
formations.
Detectingthecollisionisrstperformedusing axes
aligned bounding boxes, as in the previous method.
The bounding boxes are constructed using sample
points from the object which completely enclose the
surfaceevenafterthePCMprocess(thedeformedsur-
face has a dierent shape and perhaps volume after
contact). Eachoftheskeletalelementshavetheirown
boundingbox,asanobjectmightbeincollisionwithit-
self. Anelement'sboundingboxissizedusingitssam-
plepoints(denedasdescribedinSection3). Thesize
isnallyincreasedtocompensateforroughlysampled
curved areas,using the currentvalue of thesampling
error.
A bounding box is associated with a skeletal ele-
ment,sowhenaskeletonisrenedtheresultingbound-
ingboxesarebetterttedtothesurface.Theserened
orsub-boundingboxesallowusto usethebenetsas-
sociatedwiththelevelsofdetailforthecollisiondetec-
tion.
Samplingpointsusetheboundingboxintwostages:
rst a check is performed to detect if the bounding
boxesoftwonon-adjacentskeletalelements(orskeletal
elementsofdierentobjects)comeintocontact. Ifthis
testistruethenextstage queriesthesamplepointsof
therstobjecttodetectiftheyareinsidethebounding
boxofthesecond. Whenthesamplingpointisdetected
tobepotentiallyincontactwithanotherprimitive(ie,
aggedashavingbeenincollisionandthedeformation
term,presentedbelow,is addedtothesamplepoint.
Thedeformationtermhastworoles: todeform the
surfaces suchthat surfacesthat penetratedeach other
are in exact contact; and to add bulges to the sur-
roundingsurfacetokeepthemsmootharoundcontact
areas.
Fortwofunctionsf
i
(p)andf
j
(p)whoseiso-surfaces
are in contact, the separation limit veries f
i (p) =
f
j
(p). Thus, forsampling pointsp
i
ofi that standon
objectj's side, adding theterm iso f
j (p
i )to f
i (p
i )
makesp
i
convergetothedesiredsurface(whichisdone
symmetricallyforsamplingpointsofj). Ontheborder
ofthisrstdeformation,thesurfaceishoweverdiscon-
tinuous;thus,adeformationtermisaddedtosampling
points within a propagation area around the contact
surface.
Thebulgeareaismodeledwithadilationtermthat
is added around the objects. See for instance Fig-
ure 9. It is such that surfaces' C 1
continuity is pre-
served. Consideringobject i's deformation by object
j,thebulgefunctionb
i (f
j (p
i
))whichsurroundsobject
j is choosen as to satisfy: b
i
(iso) = 0, b 0
i
(iso) = 1,
b
i (c
j
)=0and b 0
i (c
j
)=0,where c
j
<iso controls the
end of the bulge createdby object j. (it is acoating
eld aroundj that stopsatc
j ).
Opalach[11]didnotgiveanyequationforfunction
b
i
. We are experimenting with three versions of the
function. The rst one is very simple to implement
and to use,sinceits onlyparameteristhe bulge'sex-
tentinspace, controlledbyc
j
: weuseitin animation
situations,where theuserequiresaneÆcientsolution.
The rst uses the fourth Hermite basis function.
Thisdoesnotusethehparameter,sooerslesscontrol
oftheshapeofthebulge(seeFigure9):
if f
j (p)2[c
j
;iso]
b
i (x)=x
2
(1 x)
where x=(f
j (p) c
j
)=(iso c
j )
Figure 9. Fourth Hermite basis function.
The second one is a cubic piecewise polynomial
which provides more control on the bulge's shape,
sincethelocalmaximumofthebulgecanbecontrolled
in position and height: the position of the bulge is
controlledwithaeld valuemverifyingiso<m<c
j ,
maximum.
if f
j (p)2[c
j
;m]
b
i (f
j
(p))=(3 2x)x 2
h
wherex=(f
j (p) c
j
)=(m c
j )
if f
j
(p)2[m;iso]
b
i (f
j
(p))=h+((1 3h)+(2h 1)x)x 2
wherex=(f
j
(p) m)=(iso m)
Figure 10. Height control with a piecewise polynomial.
The third piecewise function is non-polynomial. It
isanadaptationofthesecondfunction,wheretheleft
parthas been modied byacosine. The control over
thepositionofthebulgeislosttoensurethattheperi-
odslengthsareconstant: m=c
j
+(iso c
j )(1
1
4n+3 ).
Thenumberofripples isspeciedthroughn.
if f
j (p)2[c
j
;m]
b
i (f
j
(p))=(3 2x)x 2
h
cos(((2n+1)x+1))+1
2
wherex=(f
j (p) c
j
)=(m c
j )
if f
j
(p)2[m;iso]
b
i (f
j
(p))=h+((1 3h)+(2h 1)x)x 2
wherex=(f
j
(p) m)=(iso m)
Figure 11. Ripples modeled using function with local maxima.
Theheighthisconstrainedtobeatleastlowerthan
iso,otherwise,anunwantedimplicitsurfacewouldap-
pear,coatingbothsurfaces. Inthecaseofconvolution
surfaces,thisdoesnotprovideenoughconstraints: un-
likethepreviousmethod[11], theeldfunction isnot
linearlydecreasing;atsomedistancefromtheskeleton
theelddecreasestooslowlyandisalmostconstant. If
suchavalueofisoischosenthentheresultofthebulge
function maypropagateandcoattheotherobject(see
Figure13). Inpractice,weneedtochooseaniso-value
(a) (b) (c)
Figure 12. Line primitives with intersecting re- gions: (a) with fast bulge function, (b) with height controlling function, (c) with ripple function.
fj(p)=iso
(a) (b) (c)
fi(p)=iso
fj(p)+bj(fi(p))=iso f
i (p)+b
i (f
j
(p))=iso
fj(p)2[cj;iso]
Figure 13. (a) Without PCM (b) With PCM (c) object
i’s iso-surface and object
jbulge func- tion.
ThebulgesofFigure12wereobtainedusingthefol-
lowingcoeÆcients:
iso m c
j
h n
column(a) 2 0:4
column(b) 2 1:3 0:4 0:5
column(c) 2 0:4 0:5 2
6 Applications
6.1 Modelling organic shapes in contact situations
Figure 14(a) and (b) showapartof ahandwhere
thengerand thumb thatsquashasmall ballare de-
formedusingPCM.Figure14(c)and(d)comparethe
eect ofnotusingandusing PCM.
OurunwantedblendingsolutionisillustratedinFig-
ure 15, with the snail character. The wireframe pic-
(c) (d)
Figure 14. Hand: (a) and (b): finger and thumb grabbing a samll ball (with PCM); (c) and (d):
hand grabbing a ball, without and with PCM respectively.
Figure 15. Top: snail character. Bottom: 3 error bounds for the adaptive polygonisaton.
6.2 Animation of soft, organic shapes
Anotherapplicationofthesystemistoanimatede-
formable bodies made of skeleton curves coated with
animplicit\skin". Motionandthemaindeformations
are controlled through theanimation of the skeleton.
The implicit surfacethat coats it may locally deform
whendierentobjects,orpartsof anobjet,comeinto
contact.
Figure16showsanexampleofasuchananimation.
Here, physically-based animation has been used for
generatingthemotionoftheobject'sskeleton,whichis
modelledasachainofmassesandsprings. Theobject
falls under the action of gravity, sliding along awall.
A penalty method is used for computing collisionre-
sponsewiththewallandbetweendierentfoldsofthe
object. Sincephysically-basedmotionsaretunedusing
mationisrsttunedusingaverylowresolution. When
theuserissatised,highqualityimagesarecomputed.
Figure 16. Controlled blending in a physically- based animation framework, where a de- formable object falls under gravity.
7 Conclusion and Future Work
In this paper, we have extended the subdivision-
curveimplicitprimitiverepresentationtomakeitmore
suitablefortheinteractivemodellingandanimationof
complex, soft objects in contact situations. Blending
control is performed usingalocal convolution: onlya
portion ofthe skeleton istaken into accountfor com-
putingtheeldcontributionataquerypoint. Contact
modellingisessentialformodellingthedeformationof
non-blendingshapeswhen theycome into contact. It
usesaspeciccombinationofthedierentobjectseld
functionstogeneratecontactsurfaceswhilepreserving
smoothness. Lastly, the surfaces are displayed using
anadaptivepolygonizationscheme. This increasesef-
cienty withoutdropping quality, sinceahigher reso-
lutionisgeneratedin highlycurvedareas.
Thesystemhasbeenused to createavirtualhand
thatusescontactmodellingtomodelinteractionswith
soft objects. This hand could be used as a tool in a
virtualsculptingenvironment[7,13]. Atpresenttools
in such systemstend to belimited to theaddition or
removalof material. It would beinteresting to use a
virtualhandwithprecisecontactmodellinginorderto
emulatetheactionsofarealhandanditseectonthe
clay. Wehavealso shown that ourmodelling method
can be used in a physically-based animation frame-
work,the implicit \skin" generated with our method
being used forcoating ananimated skeleton. We are
planning to use this methodology in the context of a
pedagogic intestinal surgery simulator, aimed at sur-
by the EU Trainingand Mobility of Researchersnet-
work(TMRFMRX-CT96-0036)\PlatformforAnima-
tionandVirtualReality".
TheauthorswouldliketothankFrancoisFaureforhis
contributionsto thephysically-basedsimulation.
References
[1] J. Blinn. A generalization of algebraic surface drawing.
ACMTransactionsonGraphics,1(3):235{256,July1982.
[2] Jules Bloomenthal, Chandrajit Bajaj, Jim Blinn, Marie-
Paule Cani, Alyn Rockwood, Brian Wyvill, and Geo
Wyvill. Introduction to ImplicitSurfaces. MorganKauf-
mann,jul1997.
[3] JulesBloomenthaland Ken Shoemake. Convolution sur-
faces. Computer Graphics, 25(4):251{256, jul1991. Pro-
ceedingsofSIGGRAPH'91(LasVegas,Nevada,July1991).
[4] JulesBloomenthalandBrianWyvill.Interactivetechniques
forimplicitmodeling. ComputerGraphics,24(2):109{116,
March1990. ProceedingsofSymposiumonInteractive3D
Graphics.
[5] Marie-PauleCaniandMathieuDesbrun. Animationofde-
formablemodelsusingimplicitsurfaces.IEEETransactions
onVisualizationandComputerGraphics,3(1):39{50,mar
1997.
[6] Marie-PauleCani and Samuel Hornus. Subdivisioncurve
primitives:anewsolutionforinteractiveimplicitmodeling.
InShapeModellingInternational,Italy,May2001.
[7] EricFerley,Marie-PauleCani, and Jean-Dominique Gas-
cuel. Practicalvolumetricsculpting. theVisualComputer,
16(8):469{480,dec2000.
[8] DavidR.Forsey. Asurfacemodelforskeleton-basedchar-
acter animation. In Second Eurographics Workshop on
AnimationandSimulation,Vienna,Austria,pages55{73,
September1991.
[9] J.HarrisonandD.Forsey. Akinematicmodelforcollision
response.InInFifthEurographicsWorkshoponAnimation
andSimulation,Oslo,Norway,September1994.
[10] H.Nishimura,M.Hirai,T.Kawai,T.Kawata,I.Shirakawa,
andK.Omura. Objectsmodelingbydistributionfunction
andamethodofimagegeneration(injapanese).TheTrans-
actionsoftheInstituteof ElectronicsandCommunication
EngineersofJapan,J68-D(4):718{725,1985.
[11] AgataOpalachandMarie-PauleCani. Localdeformations
foranimationofimplicitsurfaces. InSCCG'97,Bratislava,
Slovakia,1997.
[12] AgataOpalachandSteveMaddock. Implicitsurfaces: Ap-
pearance,blendingandconsistency.InFourthEurographics
Workshop on Animation and Simulation, pages 233{245,
Barcelona,Spain,sep1993.
[13] RonaldN.PerryandSarahF.Frisken. Kizamu:Asystem
forsculptingdigitalcharacters.ProceedingsofSIGGRAPH
2001,pages47{56,August2001.ISBN1-58113-292-1.
[14] AndreiSherstyuk.Kernelfunctionsinconvolutionsurfaces:
acomparativeanalysis.TheVisualComputer,15(4),1999.
[15] GeoWyvill,CraigMcPheeters, and BrianWyvill. Data
structureforsoftobjects.TheVisualComputer,2(4):227{
234,August1986.