Regularized Kelvinlets:
Sculpting Brushes based on Fundamental Solutions of Elasticity
Pixar Technical Memo #17-03

FERNANDO DE GOES, Pixar Animation Studios
DOUG L. JAMES, Pixar Animation Studios, Stanford University

Fig. 1. Regularized Kelvinlets: Examples of expressions generated by regularized Kelvinlets, a novel approach for sculpting that provides space deformations
with real-time feedback and interactive volume control based on closed-form analytical solutions of linear elasticity. ©Disney/Pixar
We introduce a new technique for real-time physically based volume sculpting of virtual elastic materials. Our formulation is based on the elastic response to localized force distributions associated with common modelingprimitives such as grab, scale, twist, and pinch. The resulting brush-like
displacements correspond to the regularization of fundamental solutionsof linear elasticity in infinite 2D and 3D media. These deformations thus
provide the realism and plausibility of volumetric elasticity, and the interactivity of closed-form analytical solutions. To finely control our elastic
deformations, we also construct compound brushes with arbitrarily fast
spatial decay. Furthermore, pointwise constraints can be imposed on thedisplacement field and its derivatives via a single linear solve. We demonstrate the versatility and efficiency of our method with multiple examples ofvolume sculpting and image editing.
CCS Concepts: • Computing methodologies → Volumetric models;
Additional Key Words and Phrases: sculpting brushes, linear elasticity.
ACM Reference format:
Fernando de Goes and Doug L. James. 2017. Regularized Kelvinlets: Sculpting Brushes based on Fundamental Solutions of Elasticity Pixar Technical

Memo #17-03 . ACM Trans. Graph. 36, 4, Article 40 (July 2017),
11 pages.
DOI: http://dx.doi.org/10.1145/3072959.3073595© 2017 Copyright held by the owner/author(s). This is the author’s version of thework. It is posted here for your personal use. Not for redistribution. The definitive
Version of Record was published in ACM Transactions on Graphics, https://doi.org/http://dx.doi.org/10.1145/3072959.3073595.

1

INTRODUCTION

Digital sculpting is a core component in modeling and animation
packages, e.g., ZBrush, Scultpris, MudBox, Maya, or Modo. Whilepurely geometric approaches are commonplace for shape editing,physically based deformers have long been sought to provide amore natural and effective sculpting tool for digital artists. However,existing physics-driven methods tend to have practical impediments
for interactive design: they are inherently slow due to the need tonumerically solve equations of the underlying discrete deformation
model, and also involve tedious setup steps such as volumetricmeshing, boundary condition specification, or preprocessing toaccelerate the simulation.
In this paper, we introduce a novel sculpting tool that offers interactive and physically plausible deformations. Our approach is basedon the regularization of the fundamental solutions to the equationsof linear elasticity for specific brush-like forces (e.g., grab, twist,
pinch) applied to a virtual infinite elastic space. Since the fundametal
solutions of linear elasticity for singular loads are known as Kelvinlets [Phan-Thien and Kim 1994], we refer to our new solutions asregularized Kelvinlets. This formulation leads to analytical closedform expressions, thus making our method free of any geometricdiscretization, computationally intensive solve, or large memory
requirement. Instead, our brush-like deformations can be rapidly
evaluated on the fly for sculpting sessions, with interactive control of the volume compression of the elastic material (Figure 1).
To address the typical long-range falloffs of the fundamental solutions, we present a multi-scale extrapolation scheme that builds
compound brushes with arbitrarily fast decay, thereby enabling
ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.

40:2 • F. de Goes and D. L. Jameshighly localized edits. For more specialized control, we also propose
a linear combination of brushes that imposes pointwise constraints
on displacements and gradients through a single linear solve. Insummary, regularized Kelvinlets offer volume-aware deformations
that are efficient to evaluate, easy to parallelize, and complementary
to existing modeling techniques.

2

RELATED WORK

Sculpting methods for digital shapes have been investigated extensively in graphics, see survey in [Cani and Angelidis 2006]. The
most common sculpting tool is the family of grab/twist/scale/pinch
brushes available in commercial modeling packages, e.g., [Autodesk
2016]. In these brushes, a single affine transformation is applied toevery point in space and scaled by a predefined falloff. The simple
setup and fast analytical evaluation make these tools suitable forhighly detailed modeling, as well as animation and post-simulation
edits. Motivated by these premises, our work augments existingbrush deformations with interactive elastic response.
In order to provide volume-aware sculpts, Angelidis et al. [2004]
introduced the notion of sweeper brushes, which deform the spacewith no self-intersection by advecting points along user-authoreddisplacement fields. This technique was later extended to swirlingsweepers [Angelidis et al. 2006] that ensure constant-volume deformations by emulating the formation of vortex rings in incompressible fluids. Similarly, the work of von Funck et al. [2006] proposed
deformations with divergence-free displacements generated by userdesigned scalar fields. Our approach shares similar properties withsweeper brushes, in particular, it guarantees foldover-free sculpts
guided by displacement fields. However, we model a wider familyof brush deformations that incorporates volumetric responses toelastic materials with compression. Also, instead of crafting functions that produce incompressible flows, we design smooth force
distributions and rely on analytical solutions to the equations ofelasticity to produce physically based deformations.
Solid modeling and carving were also explored using voxel discretizations [Galyean and Hughes 1991], sampled distance functions [Frisken et al. 2000], and adaptive resolution [Ferley et al.
2001]. In [Dewaele and Cani 2004], physics-aware volume sculpting was addressed through voxel-based approximations of elastic
and plastic deformations. However, these methods are restricted togrid-like data structures and tend to produce over-smoothed shapes.
Other interactive techniques rely on user-controlled handles to drive
volumetric deformations. This includes lattice deformers [Coquillart
1990; Sederberg and Parry 1986], cage-based generalized barycentric
coordinates [Joshi et al. 2007; Lipman et al. 2008], linear blending
skinning [Magnenat-Thalmann et al. 1988], wire curves [Singh andFiume 1998], and sketch editing [Cordier et al. 2016], to cite a few.
In [Jacobson et al. 2011], various handle types were supported by
optimizing a unified linear blending scheme. In contrast to ourwork, these approaches require a careful placement of handles anda precomputation step that binds handles to the deforming objects.
Moreover, the resulting deformations are purely geometric withlimited volume control.
Aiming at physically plausible deformations, some methods combined handle-based systems with simulation techniques. For instance, Jacobson et al. [2012] posed skinned skeletons by minimizing
ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.

an elastic potential energy, while Hahn et al. [2012] projected theequations of elasticity to the subspace spanned by animation rigs.
In a similar way, the work of Ben-Chen et al. [2009] deformed acage mesh by optimizing the rigidity of the associated deformation.
In [Kavan and Sorkine 2012], an elasticity-inspired skinning waspresented by constructing joint deformers. Physics-driven video
editing was also considered by combining simulation with image
aware constraints [Bazin et al. 2016]. It is also worth mentioning
advances in elasticity solvers that speed up quasi-static simulationsin 2D [Setaluri et al. 2014] and 3D [McAdams et al. 2011]. Model
reduction can also make simulations orders of magnitude fasterby precomputing deformation modes [Barbič and James 2005] andmulti-domain subspaces [Barbič and Zhao 2011]. Surface-only methods were also proposed to approximate elastic materials using, e.g.,
rigidity penalties [Sorkine and Alexa 2007] and moving frames [Lipman et al. 2007]. Since these approaches rely on mesh discretizations
and non-linear solvers, we consider them complementary to ourmesh-free closed-form solutions.
Our work is closely related to the concept of regularized Stokeslets.
Coined by Hancock [1953], Stokeslets are singular fundamental solutions of Stokes flows (i.e., incompressible fluid flows with low
Reynolds number [Chwang and Wu 1975]) based on pointwiseloads. To remove the singularity of these solutions, Cortez [2001]
introduced regularized Stokeslets as an alternative that replaces
impulses by smoothed force distributions. Extensions to doublets
and the method of images were later derived in [Ainley et al. 2008;
Cortez et al. 2005], and employed to model the trajectories of selfpropelled micro-organisms. Instead, we introduce the regularizationof the fundamental solutions of linear elasticity, thus generalizing
regularized Stokeslets to arbitrary elastic materials. In particular,
our formulation reproduces regularized Stokeslets in the case ofincompressible elasticity. In addition, we present a new approach todesign regularized solutions with faster decays.
Finally, we point out that fundamental solutions are central tointegral formulations of elasticity and discretizations such as theboundary element method (BEM) [Brebbia et al. 2012]. In [Jamesand Pai 1999], BEM was employed to deform surface meshes byapproximating contact mechanics. However, this technique requires
the precomputation and incremental updates of boundary conditions for displacements and surface tractions. This approach waslater accelerated by compressing singular fundamental solutions oflinear elasticity based on wavelets [James and Pai 2003]. In contrast,
we advocate the use of regularized fundamental solutions for digital
sculpting, with no boundary specification or mesh discretization.

3

BACKGROUND

Before presenting our new sculpting tools, we first review core
concepts of linear elastostatics upon which our formulation is based.
In the next sections, we focus our exposition on 3D linear elasticity
and postpone the 2D case to Section 8, where the analogous 2D
expressions are derived using our 3D results. For more details on
linear elastostatics, we point the reader to [Slaughter 2002].
Elastostatics: In an infinite 3D continuum, the quasi-static equilibrium state of linear elasticity is determined by a displacement
field u : R3 → R3 that minimizes the elastic potential energy

Regularized Kelvinlets •E(u) =µµk∇u k 2 +k∇ · u k 2 − hb, ui,22(1 − 2ν)

(1)

where k · k and h·, ·i are integrated over the infinite elastic volume.
The first term in (1) controls the smoothness of the displacement
field, the second term penalizes infinitesimal volume change, and thelast term indicates the external body forces b to be counteracted. In
this formulation, linear homogeneous and isotropic material parameters are given by the elastic shear modulus µ and the Poisson ratio
ν . Note that, while the former is a simple scaling factor indicating
the material stiffness, the latter dictates the material compressibility. By computing the critical point of (1), one can associate theoptimal displacement field u with the solution of the well-known
Navier-Cauchy equation (see, e.g., [Slaughter 2002]):µ∆u +µ∇(∇ · u) + b = 0.
(1 − 2ν )(2)

Kelvinlets: In the case of a concentrated body load due to a force
vector f at a point x 0 , i.e., b(x) = f δ (x −x 0 ), the solution of (2)defines the (singular) fundamental solution of linear elasticity, also
known as the Kelvin’s state [Kelvin 1848] or Kelvinlet [Phan-Thien
and Kim 1994], which can be written as


(a−b)
b
u(r ) =
I + 3 rr t f ≡ K(r ) f ,(3)rr
where r =x−x 0 is the relative position vector from the load locationx 0 to an observation point x, and r = kr k is its norm. The coefficientsin (3) are of the form a = 1/(4π µ) and b =a/[4(1−ν )]. Here, we referto K(r ) as the Green’s function for linear elasticity that defines a
3×3 matrix mapping the force vector f at x 0 to the displacement
vector u at a relative position r . Notice that the first term in K(r )resembles the Laplacian Green’s function scaled by a constant, while
the second term controls volume compression by modifying theelastic response based on the alignment of the relative position
vector r to the force vector f . Moreover, observe that no boundary
conditions were needed for the definition of Kelvinlets, since these
displacement fields are the minimizer of the elastic potential energy
over the infinite space.
Stokeslets: An important special case of linear elastostatics occurs
for incompressible materials, i.e., ν = 1/2. In this case, the divergencepenalty term in (1) becomes a hard constraint ∇ · u = 0 that ensuresincompressible displacements. The solution for this constrained
minimization can be computed via the Stokes equation:µ∆u + b − ∇p = 0

subject to∇·u = 0,(4)

where p is the pressure scalar field acting as a Lagrangian multiplierthat enforces the divergence-free constraint. For a pointwise loadwith force vector f , the (singular) fundamental solution of (4) is
known as the Stokeslet [Chwang and Wu 1975; Hancock 1953], andmatches the expression in (3) with ν = 1/2 (i.e., b =a/2).
Deformation Gradient: From a displacement field u(x −x 0 ), an
arbitrary point x embedded in a linear elastic material is deformed
to x +u(x −x 0 ). The associated deformation gradient is then definedby a 3×3 matrix of the form G(x −x 0 ) =I +∇u(x −x 0 ). By analyzing

40:3

this matrix G(r ), we can obtain different properties of the displacement field u(r ) (see, e.g., [Slaughter 2002]). For instance, the skewsymmetric part of ∇u(r ) indicates the infinitesimal rotation inducedby u(r ), while its symmetric part corresponds to the elastic strain
and determines the infinitesimal stretching. The strain tensor canbe also decomposed into a trace term that represents the uniform
scaling of the volume of the elastic medium, and a traceless term that
informs the undergoing pinching deformation. We will use thesedeformation gradient decompositions in Section 6 to construct twist,
scale, and pinch elastic brushes.

4

3D REGULARIZED KELVINLETS

The concentrated body load at a single point x 0 introduces a singularity to the Kelvinlet solution, making its displacements and derivatives indefinite nearby x 0 . For this reason, the singular Kelvinlet isnumerically unsuitable for digital sculpting. To overcome this issue,
we adopt the regularization scheme introduced in [Cortez 2001],
and consider a smoothed body load b(r ) = f ρ ε (r )with force vector f and normalized density
ε=7function ρ ε (r ) distributed around x 0 by aε=8radial scale ε > 0. Similar to [Cortez et al.
ε=9ε = 102005],
wedefinetheregularized
distance√r ε = r 2 +ε 2 and set the normalized density
function to be of the form (see inset)
ρ ε (r ) =15ε 4 1.
8π r ε7(5)

As detailed in Appendix A, the solution to the elastostatics equation (2) associated with the load distribution (5) corresponds tou ε (r ) =




(a−b)
a ε2
b
I
f ≡ K ε (r )f .
I + 3 rr t +rε
2 r ε3rε(6)This solution, which we name regularized Kelvinlet, forms the building block of our sculpting technique. Compared to (3), the regularized Kelvinlet includes an extra ε 2 /r ε3 term, and reproduces the
singular case as the radial scale ε approaches zero. Moreover, theundesirable 1/r singularity of Kelvinlets is now regularized at r = 0
using a 1/r ε term, while keeping the O(1/r ) asymptotic decay as
r → ∞. Therefore, the resulting displacements are finite, differentiable, and localized around x 0 . One can also verify that the deformation gradient at x 0 is trivial, i.e., ∇u ε (0) = 0, implying that the
deformation at the point under the load is locally rigid. It is also
worth mentioning that different density functions (and thereby regularized solutions) could be used, and our choice is based on theformulation of regularized Stokeslets [Cortez et al. 2005]. In fact,
one can easily verify that the regularized Kelvinlets simplify to theregularized Stokeslets in the incompressible limit (ν = 1/2).
Equipped with the regularized Kelvinlets, we can now construct a
sculpting brush that assigns the load center x 0 to the brush tip andsets the brush radius to ε. This indicates that, by increasing the brush
size, the load distribution becomes wider. Given a force vector f ,we can then evaluate the displacement generated by the regularized
Kelvinlet analytically for every point in R3 . As a result, we can movepoints along this displacement field, thus defining our physically
based space deformation. It is also convenient to parameterize the
ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.

40:4 • F. de Goes and D. L. James

Original

ν = −∞

ν = 0.0

ν = 0.4

ν = 0.5

Fig. 2. Elastic Grab Brush: Regularized Kelvinlets offer interactive elastic response to grab displacements. This example shows the result of a bi-scale
sculpting brush in 2D computed with a series of Poisson ratio values ν . Notice how larger values of ν lead to more bulging, e.g., along the body silhouette. The
grid plots illustrate the local area loss and gain associated with different Poisson ratios. The pseudocolors encode a range from compression of 50% (blue) todilation of 50% (red) relative to the rest area. Input image courtesy of Mirela Ben-Chen.

force vector f in terms of the brush tip displacement u. To this end,
we expand (6) with the linear constraint u ε (0) =u, leading tou ε (r ) = c ε K ε (r ) u,(7)

where c = 2/(3a − 2b). Note that this parameterization makes ourbrush independent of the shear modulus µ, so the only material
parameter affecting the deformation is the Poisson ratio ν . Figure 2
shows regularized Kelvinlet deformations with varying Poisson
ratio. In particular, observe the increasing bulging as the elastic
material becomes incompressible. At last, we point out that, by setting the (unphysical but feasible) value ν = ±∞, the second termin (6) is annihilated and our displacement field simplifies to a typicalgrab brush with radial falloff available in commertical packages [Autodesk 2016], thus confirming that regularized Kelvinlets enrichexisting grab brushes with elastic response.

5

MULTI-SCALE EXTRAPOLATION

Sculpting brushes are commonly accompanied by falloff profiles
that define the locality of the deformations. Generally, these functions are set independently of the brush operation and can evenbe adjusted by the user. In contrast, the spatial decay of regularized Kelvinlets is determined completely by the equations of linear
elasticity. This fixed falloff may make our elastic deformations inadequate for fine sculpts in which a faster decay is demanded. To
address this issue, we present next an extrapolation scheme that
constructs physically based brushes with arbitrarily fast decays bylinearly combining regularized Kelvinlets of different radial scales.
Due to the superposition principle, these compound brushes formhigh-order regularized Kelvinlets that satisfy (2).
Asymptotic analysis: To better understand the far-field decay of aregularized Kelvinlet u ε (r ), we analyzed the asymptotic expansionof the matrix K ε (r ) as r → ∞, whose first terms are
 






C 1 (r̂ ) 1/r +ε 2C 3 (r̂ ) 1/r 3 +ε 4C 5 (r̂ ) 1/r 5 +O 1/r 7 ,where the coefficients Ci (r̂ ) indicate 3×3 matrices in terms of thenormalized relative position r̂ =r /r , and material parameters µ andν . (Formulas for Ci (r̂ ) are provided in the supplemental material.)
This expansion reveals an O(1/r ) leading-order decay followed by
odd powers of 1/r and even powers of ε. By properly combining n
ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.

regularized Kelvinlet matrices K εi (r ) with different εi values, we
can cancel the leading n − 1 terms and hasten the displacement
falloff. This process is analogous to classical Richardson extrapolation for eliminating leading-order error terms in numerical differentiation [Brezinski and Zaglia 2013].
Bi-scale extrapolation: The simplest case of extrapolation is thedifference of two regularized Kelvinlets of radii ε 1 < ε 2 :u ε1,ε2 (r ) = K ε1 (r ) − K ε2 (r ) f .
(8)This solution corresponds to the physical response to two bodyloads applied at the same location, where the force pushing thesmaller ε 1 -region is compensated by an equal but opposite pullover a spatially larger ε 2 -region. We can then consider the bi-scale
extrapolation as an approximation of the first derivative of u ε withrespect to ε. From the asymptotic expansion, we observe that thefirst term cancels and the net result has a leading-order decay ofO(1/r 3 ), much faster than a single regularized Kelvinlet. We canalso reproduce the tip displacement u by parameterizing the force
vector f via the linear constraint u ε1,ε2 (0) =u, yielding
u ε1,ε2 (r ) = c (1/ε1 − 1/ε2 )-1 K ε1 (r ) − K ε2 (r ) u.
(9)
Tri-scale extrapolation: Even greater locality of order O(1/r 5 ) canbe generated by employing a tri-scale extrapolation:u ε1,ε2,ε3 (r ) = w 1 K ε1 (r ) + w 2 K ε2 (r ) + w 3 K ε3 (r ) f ,(10)with distinct radial scales ε 1 < ε 2 < ε 3 and weights w 1 , w 2 , w 3 . By
analyzing its asymptotic expansion, we obtainÕ  Õ  
w i C 1 (r̂ ) 1/r +w i εi2 C 3 (r̂ ) 1/r 3 +O 1/r 5 .
ii

We can then cancel the two leading terms by setting the weights to
w 1 = 1, w 2 = − (ε32 −ε12 )/(ε32 −ε22 ), w 3 = (ε22 −ε12 )/(ε32 −ε22 ).
This solution provides an approximation of the second derivative ofu ε with respect to ε. As before, we can parameterize the tri-scale
deformation in terms of tip displacement u, which takes the formÕ
 -1 hÕ
iw i/ε iu ε1,ε2,ε3 (r ) = c
w i K εi (r ) u.
(11)
i

i

Although a user may adjust each radial scale individually, setting
ε 2 and ε 3 to small increments of ε 1 leads to a better approximation of
the derivatives of u ε with respect to ε, thus creating a faster falloff inRegularized Kelvinlets •Single-scale

Bi-scaleTri-scaleFig. 3. Multi-scale extrapolation for fast decay: These plots display thecontours of the norm of displacement fields generated by different multiscale regularized Kelvinlets in 3D with ν = 1/2. These brushes were parameterized by a unit displacement at the origin, thus leading to norm values in
the inverval [0, 1]. Observe the long-range falloff of the single-scale brush,in contrast to the faster decays obtained by bi-scale and tri-scale brushes.

the proximity of the brush center and a high-order long-range decay.
Therefore, we use εi+1 = 1.1εi as the default in our implementation,
where ε 1 corresponds to the brush radius. Figure 3 illustrates thedifferent far-field decays generated by single, bi-scale, and tri-scale
regularized Kelvinlets, all computed with the same tip displacementu. Figure 4 shows a closeup comparing the displacement field generated by a single-scale brush before and after reducing its radius εby 50%, versus the result of increasing the falloff order to a tri-scale
brush. Observe the significantly different decays of these displacement fields, despite of their similarity near the brush center. Finally,
we point out that the multi-scale extrapolation can be continued
indefinitely to produce brushes of arbitrarily high order decay andincreasing locality.

6

EXTENSION TO AFFINE LOADS

So far we showed how to use regularized Kelvinlets to construct grablike deformations guided by the brush tip displacement. However,other sculpting operations assign an affine transformation, insteadof a translation, to the brush. A typical example is the twist brushwhich defines a rotation centered at x 0 . Similarly, scale and pinch
brushes are generated based on affine transformations. In order toaugment these brushes with elastic response, we propose to extend
the formulation of regularized Kelvinlets by replacing the vectorbased load distribution with a matrix-based distribution.

ε

0.5 ε

(ε, 1.1 ε, 1.21 ε)Fig. 4. Smaller radius vs. multi-scale extrapolation: A closeup of Figure 3 for a single-scale brush is shown overlaid by its displacement vectors(left). Reducing the brush radius ε makes the displacements more concentrated, but still with a long-range falloff (middle). In contrast, a tri-scale
brush leads to localized displacements with a faster decay (right).

40:5

Our approach leverages the linearity of the elastostatics equation
with respect to differentiation. More specifically, given a regularized Kelvinlet u ε and its associated force vector f , we compute thedirectional derivative д·∇ of (2) along the vector д, yieldingµ∇ (∇ · u ε ) + b
0 = д·∇ µ∆u ε +(1 − 2ν )µ= µ∆ (д·∇u ε ) +∇ [∇ · (д·∇u ε )] + д·∇b
(1 − 2ν )µeeε +eε ] + b.
= µ∆ u∇ [∇ · u(1 − 2ν )e ) =д·∇b(r ), andThis implies that we can define a new body load b(rits associated elastic response corresponds to the displacement fieldeε (r ) =д·∇u ε (r ).
ueεi j generated
We now consider the nine possible deformations u
by setting f =ei and д =e j for every pair (i, j), where the vectors{e 1 , e 2 , e 3 } form an orthonormal bases spanning R3 . Due to supereεi j with scalar coefficients Fi j ,position, we can linearly combine u
and obtain a matrix-driven solution of (2) of the formÕeε (r ) =u
F e ·∇(K ε (r ) ei ) = ∇K ε (r ) : F ,(12)
ij ij j where F = Fi j is a 3×3 force matrix, and the symbol : indicates the
double contraction of F to the third-order tensor ∇K ε (r ), thus returning a vector. Similarly, we can write the body load that generateseε as
the deformation u
Õ
e )=
b(r
Fi j ei e tj ∇ρ ε (r ) = F ∇ρ ε (r ).
(13)ij

By computing the spatial derivatives of u ε , we obtain the displaceeε (r ) in terms of the force matrix F :ment field u
1 3ε 2eε (r ) = − a 3 + 5 Frur ε 2r ε(14) 3 t 1t+b
F +F +tr(F )I − 5 r Fr I r .
r ε3rεNote that the first term in (14) corresponds to an affine transformation Fr with a radial falloff similar to existing affine brushes, while
the second term includes a symmetric affine transformation andcontrols volume compression through the Poisson ratio ν that b
depends on. Therefore, we name this matrix-based extension of thefundamental solution of linear elasticity as a locally affine regularized Kelvinlet. For conciseness, we denote this displacement field byeε (r ) ≡ A ε (r ) F®, where F® ∈ R9 is a vectorized form of F and A(r )uis the 3×9 matrix that maps F® to a displacement at r .
In contrast to (6), the deformation generated by (14) has zeroeε (0) = 0, but a non-trivial
displacement at the brush center, i.e., ugradient in terms of F (the closed-form expression is provided in the
supplemental material). As the radial scale ε approaches zero, ourmatrix-based solutions reproduce the definition of Kelvinlet doublets [Phan-Thien and Kim 1994]. These expressions also coincidewith the regularized Stokeslet doublets [Ainley et al. 2008] in theincompressible limit (ν = 1/2). Following the matrix decompositionin Section 3, we can further construct specialized versions of thelocally affine regularized Kelvinlets by setting F to different typesof matrices, as illustrated in Figure 5.
ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.

40:6 • F. de Goes and D. L. James

Original

Twist

Scale

Pinch

Fig. 5. Elastic Locally Affine Brushes: Given an input image (left), we compute a twisting (left-center), a scaling (center-right), and a pinching (right)
deformation via a locally affine regularized Kelvinlet in 2D with Poisson ratio ν = 0.4. Input image courtesy of Eftychios Sifakis.

Twisting: In the case of a skew-symmetric matrix, we can associate F to a vector q via the cross product matrix, i.e., F ≡ [q]×
where [q]×r =q×r , then (14) simplifies to a twist deformation
1 3ε 2(15)t ε (r ) = − a 3 + 5 q × r .
r ε 2r ε
By analyzing the deformation gradient of (15) (see supplemental
material), one can verify that its symmetric part (the strain tensor)
is trivial for any r . Consequently, this displacement field has zero
divergence (i.e., ∇·t ε (r ) = 0) and defines a volume preserving deformation, independent of the Poisson ratio ν . Instead, its curl is
non-zero and can be used to relate the vector q to the vorticity ω at
x 0 via the linear constraint ∇×t ε (0) =ω.
Scaling: Another type of locally affine regularized Kelvinlet canbe generated by a force matrix of the form F =s I , where s is a scalar.
In this case, (14) reduces to a scaling deformation
1 3ε 2(16)s ε (r ) = (2b − a) 3 + 5 (s r ) ,r ε 2r ε
where positive values of s represent contractions, and negativevalues determine dilations. Notice that we have s ε (r ) = 0 for incompressible elastic materials, since ν = 1/2 implies a = 2b.
Pinching: The last type of locally affine regularized Kelvinlet isconstructed based on a symmetric force matrix F with zero trace(in a total of 5 DoFs), and it generates displacements of the formp ε (r ) =(2b −a)3 Fr − 5 2 b r t Fr I +a ε 2 F r .
3
rε
2r ε

Multi-scale extrapolation: Since our affine brushes are based on
the derivative of (6), the extrapolation scheme described in Section 5
applies to these displacement fields with no modification. We canthen combine locally affine regularized Kelvinlets linearly and generate new matrix-driven solutions of linear elasticity with arbitrarily
fast far-field decay. In particular, we obtain bi-scale and tri-scale
brushes with O(1/r 4 ) and O(1/r 6 ) falloffs, respectively, while thesingle-scale case has an O(1/r 2 ) decay.

7

CONSTRAINED DEFORMATIONS

By exploiting the linearity of (2), regularized Kelvinlets and variants
can be superposed to form new solutions of linear elasticity. These
compound brushes are of particular interest for designing deformations with pointwise contraints. Since regularized Kelvinlets arelinear in terms of force vectors f and matrices F , these constrained
deformations can be efficiently computed based on user-prescribed
displacements and gradients. In this section, we describe some examples of constrained deformations.
Displacement Constraints: Previously we assigned the brush tip
displacement u and solved analytically for the necessary force vector
f in (7). We can replicate this constraint numerically for a list of
brushes. To this end, we consider n regularized Kelvinlets placed at{x 1 , . . . , x n } and impose n displacement constraints {u 1 , . . . , u n },one for each brush center x i . By superposition, these brushes definea solution to (2) of the form
Õnu(x) =
K εi (x −x i ) fi ,
(18)
i=1

(17)

To geometrically characterize this deformation, we computed thedisplacement gradient ∇p ε at x 0 , and observed that the resulting
matrix is also symmetric with zero trace. This indicates that the
deformation generated by p ε (r ) compensates infinitesimal stretching in one direction by contractions in the other directions, thus
resembling a physical pinching interaction.
ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.

where εi and fi indicate the radial scale and the force vector for
the i-th brush, respectively. The displacement constraints u andforce vectors f are thus related by the linear system u =K f , where
the 3n×3n matrix K has the contribution K εi (x j − x i ) of every i-th
brush to every j-th brush center.
An usual scenario for this constrained deformation is when wepin down zero displacement to n −1 locations, and keep the n-th
brush “live” for interactive sculpting. Given a tip displacement u n

Regularized Kelvinlets •40:7

updated every user edit, we can efficiently compute the force vectors
f by exploiting the block structure of the linear system
# " #
" # "
Kpp Kpn
fp
0
=
,
(19)
un
Knp Knnfn
where the subscript p indicates values for the n−1 pinned brushes,and n denotes the active brush. Observe that the block Kpp is anonsymmetric matrix that relates the n−1 pinned brushes to themselves, but it is independent of the n-th brush. Therefore, we cancache the LU factorization of Kpp and solve for f rapidly at every
user interaction via the Schur complement [Cottle 1974], whichthen requires a simple 3×3 solve. Figure 6 (center-right) displays aresult with displacement constraints used in a 3D editing session.
Gradient Constraints: We can also constrain the gradients of ourdeformations by employing locally affine regularized Kelvinlets in
our compound displacement u(x). By doing so, the force matrix F
can be used to precisely control the 9 DoFs of the deformation gradient via the linear constraint G(x i ) =I + ∇u(x i ) at a brush centerx i . This leads to the aggregated displacement fieldÕnu(x) =A εi(x − x i ) F®i .
(20)
i=1

More specialized gradient control can be further achieved via individual twist, scale, and pinch brushes (Section 6). For instance, apointwise vorticity constraint ∇×u can be enforced based on the 3
DoFs of the vector q in a twist brush, while the single parameter sof a scale brush can determine a divergence constraint ∇·u. We canalso employ a pinch brush to control the infinitesimal stretches in
two directions of a rotated frame, for a total of 5 DoFs. Note thatthe third infinitesimal strecth is induced by the first two values,
since a pinch brush has a traceless gradient. Similar to the displacement case, these gradient constraints relate to their respective force
parameters (F , q, or s) through a single linear system. As before,a Schur complement approach can be employed to speedup solve
times when sculpting with fixed constraints. In Figure 6 (right),
pointwise gradient constraints were used to ensure rigid deformations in selected regions of the eyeballs.
Symmetrized Deformations: A common feature in sculpting tools
is the ability to symmetrize deformations by mirroring a brush
operation across a user-specified plane. This is performed by replicating the brush at x 0 to its image point x 1 =c +M(x 0 −c), where
M =I −2nnt indicates the reflection matrix of a plane passing throughRest

Unconstrainedu(x i ) = 0∇u(x i ) = 0

Fig. 6. Constraints: The deformation of an unconstrained regularized
Kelvinlet distorts the eyeballs (left-center). The roundness of the irises andpupils can be restored by adding pointwise constraints. This is achieved by either pinning down zero displacements at these selected points (center-right),
or enforcing locally rigid edits via gradient constraints (right). This example
used a single 3D brush with ν = 1/2 and 160 constraints. ©Disney/Pixar

Rest

Deformed

Fig. 7. Symmetrized edits: Regularized Kelvinlets also support symmetrized deformations. Here we show a symmetrized grab applied to theflippers, and a symmetrized twist sculpting the eyebrows of a sea lion. Bothcases used a tri-scale brush in 3D with ν = 1/2. ©Disney/Pixara base point c and with a normal vector n. The first case of symmetrized physically based deformation consists of copying a regularized Kelvinlet u ε (r ) of force vector f0 from x 0 to x 1 , while keeping
its radius ε but reflecting its force vector to f1 = M f0 . The resulting
deformation is then written asu(x) = K ε (x − x 0 )f0 + K ε (x − x 1 )f1 .

(21)

We show in the supplemental material that (21) satisfies the identityu(Mx) = M u(x) for any force vector f0 and at any evaluation point
x, i.e., the displacement generated by (21) at the image of x is thereflection of the displacement at x. This also implies that the force
vecor f0 can be computed from a given tip displacement u via asingle constraint at x 0 .
Similarly, the symmetrization of locally affine brushes can becomputed by mirroring the force matrix F 0 to F 1 = MF 0 M. The symmetrized displacement field is thenu(x) = A ε (x − x 0 )F®0 + A ε (x − x 1 )F®1 .

(22)

As before, the force matrix F 0 can be obtained in terms of a gradient constraint, if necessary. At last, we point out that multi-scale
extrapolation applies to these formulations with no modification.
Figure 7 shows symmetrized edits done by grab and twist brushes.

8

2D REGULARIZED KELVINLETS

We now discuss the construction of regularized Kelvinlets for an
infinite elastic medium in R2 . Besides image editing, these deformations are also suitable for volume sculpts restricted to the camera
plane (Figure 8). In 2D, elastostatics is formulated using the same
expressions for the energy (1) and for the equilibrium state (2) asin 3D, but now with differential operators (∆, ∇, ∇·) including only
(x, y)-derivatives [Slaughter 2002]. This restriction introduces a newlog term to the singular fundamental solutions [Phan-Thien and
Kim 1994], which makes our regularization scheme surpringsly
more elaborated than the 3D case. As detailed next, we address theconstruction of 2D regularized Kelvinlets by considering a 2D bodyload as a 3D line force distribution passing through the brush center.
This interpretation allows us to compute 2D solutions by integrating
the associated 3D elastic responses through depth.
ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.

40:8 • F. de Goes and D. L. Jamesthe 3D displacements, the same multi-scale extrapolation rules previously stated for the 3D case work in 2D, and the observed far-fielddecay for bi-scale and tri-scale 2D brushes are O(1/r 2 ) and O(1/r 4 ),respectively.

BeforeAfter

BeforeAfter

Fig. 8. Depth-preserving edits: A 2D regularized Kelvinlet with ν = 0.4
was used to bulge the chest of a human character (left), while maintaing the
body thickness (right). In this case, the deformation was applied tangent tothe camera plane, thus keeping the depth information intact. ©Disney/Pixar

Derivation: Hereafter we denote depth by the z-axis and use r toindicate the 2D relative position vector (i.e., r ≡ [r, z]). We refer tothe 2D norm as r = krk, and to the regularized 2D distance as rε (sothat r ε2 = rε2 +z 2 ). We start by constructing a 2D force distributionthat integrates the smoothed 3D density function ρ ε (r ) in (5) along
the z-axis, producing∫ +∞2ε 2 1
ρ ε (r) =ρ ε (r ) dz =
.
(23)
π rε6
−∞
With this density function, we can represent any 2D regularized
Kelvinlet as the solution of (2) still in 3D, but now generated byan infinite line load b(r) = f ρ ε (r), where f has its z-component set
to zero. Due to symmetry, we can also show that the z-componentof the 3D deformation generated by b(r) is zero. Therefore, theequation of elastostatics in 3D with load b(r) simplifies to its 2D
counterpart with no z-derivatives. As a result, we can compute the2D regularized Kelvinlet u ε (r) by carefully integrating the (x, y)components of the 3D regularized Kelvinlet u ε (r ),
"
# ∫ "
#
∞ u x (r )u εx (r)
ε
=
dz,
(24)
y
y
u ε (r)u ε (r )-∞which leads to the closed-form expression (see Appendix B)


ε2
rr t
u ε (r) = 2 (b −a) ln(rε )I + 2b 2 + a 2I f .
rεrεExtension to affine loads: Following the same derivation from
Section 6, we can also construct 2D versions of the locally affine
regularized Kelvinlets, resulting in:
1 ε2eε (r) = − 2 a 2 + 4 F r
u
r rε
 ε

(26)
 2 t 
1
t
+ 2b
F
+F
+tr(F
)I
−
r
F
r
I
r,
rε2
rε4
where F is now a 2 × 2 force matrix. Expressions for twisting (1DoF), scaling (1-DoF) and pinching (2-DoF) can also be derived.
We provide the list of closed-form solutions for 2D locally affine
regularized Kelvinlets in the supplemental material.

9

RESULTSIn this section, we detail our implementation and provide a seriesof experiments showcasing the performance and the visual quality of regularized Kelvinlets compared to existing sculpting tools.
The accompanying video also includes several examples of editing
sessions using our physically based brushes.
Implementation: We implemented regularized Kelvinlets and variants as a C++ plugin to the sculpting package of Pixar animation
system (Presto). Once a brush type is selected, the brush center isassigned to the mouse click location, and the force parameters are
set based on the mouse displacement. The user also has interactive
control of the brush radius ε, the multi-scale mode (single, bi, or
tri-scale), and the Poisson ratio ν . During a mouse event, we deform every selected point in the scene by moving them along thestreamlines defined by the brush’s displacement field. This pointbased advection can be computed using any existing line integration
method [Nielson et al. 1997]. In our experiments, we employed afourth-order Runge-Kutta method similar to [von Funck et al. 2006],
but other integrators or substepping schemes can be easily incorporated. Notice that our deformation is evaluated at every selected
point, including those outside the brush radius, because they may(25)

We notice that (25) converges to the 2D singular Kelvinlets as εapproaches zero [Phan-Thien and Kim 1994] and, in the incompressible limit (ν = 1/2), we obtain a 2D regularized Stokeslet. In contrast
to [Cortez 2001], we employed a sharper 2D density function (givenin (23)) that relates the regularization from 3D to 2D.
Multi-scale extrapolation: Compared to the 3D solutions, the regularized Kelvinlets in 2D introduce unbounded displacements as
r → ∞, due to the presence of the log term, thus making theminappropriate for localized edits. Fortunately, the multi-scale extrapolation presented in Section 5 can be used to produce spatial falloffs.
In fact, since 2D regularized Kelvinlets are integrated versions of
ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.

Fig. 9. Posing via sculpts: The final pose of a character sculpted by anartist using regularized Kelvinlet brushes exclusively. ©Disney/Pixar

Regularized Kelvinlets •still have a non-zero displacement depending on the decay chosen for the brush. Therefore, the computational cost of our sculpts
is linear on the number of selected points, in contrast to existingbrushes that restrict the edits within the brush radius. In our implementation, we use multi-threading via TBB [Reinders 2007], andobserved performances averaging 57 frames per second on a 2.3
GHz Intel Xeon E5-2699 with 18 cores for scenes with 100k points.
In the supplemental video, we also include a test with one million
points, timing 18 ms per mouse drag. We expect even faster andmore scalable running times by implementing regularized Kelvinlets
in the GPU or as a geometry shader, which is feasible due to ourclosed-form analytical expressions.
Examples: Figures 2 and 5 illustrate the basic elastic deformations
generated by displacement and affine loads, respectively. Figure 1
shows a gallery of facial expressions sculpted by an artist using combinations of our elastic brushes. Additionally, we include in Figure 9
a full-body deformed pose also sculpted by an artist via regularized Kelvinlets. We note that this model has multiple disconnected
meshes, and our brush edits were applied to them simultaneously.
In Figure 8, we used a 2D brush to bulge the chest of a character
while preserving the body thicknesss. Figure 12 displays a sequenceof volume edits with varying Poisson ratio. We demonstrate symmetrized grab and twist deformations in Figure 7. In Figure 6, we
compare constrained deformations using displacement and gradientconstraints. In this example, we employed the Schur complement
approach described in Section 7 to precompute the constraint matrix
only once during the mouse click, thus keeping the brush evaluation interactive. We point the reader to the supplemental video for
additional examples and editing sessions.
Moving brushes: We can also modify the brush construction inorder to support large deformations. So far our brush setup keeps
its center stationary at the click location, and accumulates the force
vector as the mouse moves. The resulting displacement may thenintroduce artifacts under large deformations, as expected from solutions of linear elasticity. Instead, by advecting the brush center
throughout the course of the mouse edit, we can reset the force
vector to the latest mouse shift and then reproduce within a single
mouse click the deformation of a sequence of small clicks. Figure 10
shows an example that uses a moving brush to reduce distortion
under large deformations. Note, however, that the deformation generated by a single click of a moving brush is path-dependent andmay not restore the original shape as the mouse moves back to theclick position, due to the accumulated displacements.

Fig. 10. Moving brush: Keeping the brush center stationary at the mouseclick location leads to visual artifacts under large deformations (left). Thisdistortion is alleviated by displacing the brush center during the mouse edit(right). ©Disney/Pixar

Classic grab brush

40:9

Regularized Kelvinlet

Fig. 11. Comparison: The left column shows results of two consecutive
deformations using a grab brush with a Gaussian falloff. The right column shows the same two consecutive grabs now deformed by regularized
Kelvinlets in 3D with Poisson ratio ν = 1/2. Notice how our physically based
sculpting tool improves the local volume preservation. ©Disney/Pixar

Discussion: Figure 11 exhibits the deformation generated by afew clicks on a tentacle mesh using a (Maya-like) grab brush with aGaussian falloff versus our 3D regularized Kelvinlet. This example
illustrates the ability of our tool to capture broad volume deformations even with no knowledge of the surface structure, in contrast
to traditional brushes that tend to collapse the volume. This result
also suggests that our deformations could be used as an initial guessfor iterative mesh-based deformers [Sorkine and Alexa 2007] andsimulators [McAdams et al. 2011], which can better capture meshdependent local features. While the physical values for the Poisson
ratio lie within the range [0, 1/2] [Slaughter 2002], our method supports a broader spectrum of values. In particular, we show in Figure 2
that we can reproduce existing brushes with radial falloffs by setting
ν = ±∞. We also notice that our twist deformation coincides to aswirling-sweeper brush with radial falloff [Angelidis et al. 2006].
Limitations: The simplicity and speed of our approach come at
the cost of several limitations. Foremost, since regularized Kelvinlets
are solutions to the elasticity equations in an infinite continuum,
they know nothing about the geometry they are used to deform.
Consequently, they can not be used for accurate elastic analysis
of solid shapes. Furthermore, surfaces deformed using regularized
Kelvinlets move as if embedded in an infinite elastic continuum, thus
disregarding any form of surface traction. Embedded deformations
can also produce unintended and undesirable nonlocal interactions.
For example, grabbing one tentacle can cause a second nearby tentacle to deform, even though these parts are far away geodesically.
These issues motivate the use in the future of post-processing steps,
such as surface-based masking, combined to our sculpting tools. We
also point out that, while regularized Kelvinlets can produce smoothelastoplastic deformations, distorting discrete shapes may require
dynamic remeshing in order to sufficiently resolve the flow with novisual artifacts (see, e.g., [von Funck et al. 2006]). We finally note
that, even though we show results for posing deformable characters(Figure 9), our approach is primarily useful for relatively modest
shape edits, and is not intended to replace articulated character rigs.
ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.

40:10 •F. de Goes and D. L. James

Fig. 12. Volume adjustment: A series of one-click sculpts used for local volume adjustments. These deformations were computed using a regularized Kelvinlet
in 2D with various values for the Poisson ratio. ©Disney/Pixar

10

CONCLUSION

We have presented a family of deformation tools based on regularized fundamental solutions of linear elasticity for infinite media in
2D and 3D. Our method provides real-time feedback since it exploits
closed-form analytical expressions and avoids the spatial discretization of elastic objects. This trade-off allows us to infuse “just enough”
physical behavior into sculpting brushes to improve traditional grab,
twist, pinch, and scale editing. We also addressed the problem oflong-range interactions by introducing a multi-scale extrapolation
scheme, and resolved various pointwise constraints using standard
linear solves.
We believe this work opens up new possibilities for analyticalmethods to be used for real-time sculpting [Cani and Angelidis 2006]
and contact interactions [Pauly et al. 2004]. We have introduced simple force primitives for brushes, but extensions with more generalload distributions could be constructed for specialized purposes [vonFunck et al. 2006]. Regularized fundamental solutions for a halfspace elastic continuum, such as the Boussinesq’s problem [PodioGuidugli and Favata 2014], and the method of images [Ainley et al.
2008] are also of interest. Regularized Kelvinlets are also well-suited
to kinesthetic haptic force and torque feedback, and to high-rate
modeling applications in virtual and augmented reality.

ACKNOWLEDGMENTS
We are grateful to Alonso Martinez and Kevin Singleton for generating the artistic examples in this work, and to Andrew Butts
and Venkateswaran Krishna for their assistance with the Presto
sculpting package. We also thank Michael Comet, Jeremie Talbot,
Evan Bonifacio, and Dirk Van Gelder for discussions, and Tony
DeRose, Theodore Kim, and Mathieu Desbrun for feedback on the
manuscript. The image examples are courtesy of Mirela Ben-Chen(Figure 2) and Eftychios Sifakis (Figure 5).

REFERENCES
J. Ainley, S. Durkin, R. Embid, P. Boindala, and R. Cortez. 2008. The method of images
for regularized Stokeslets. J. of Computational Physics 227, 9 (2008), 4600–4616.
A. Angelidis, M. P. Cani, G. Wyvill, and S. King. 2006. Swirling-Sweepers: Constantvolume modeling. Graph. Models 68, 4 (2006), 324âĂŞ–332.
A. Angelidis, G. Wyvill, and M. P. Cani. 2004. Sweepers: Swept user-defined tools formodeling by deformation. In Proc. of Shape Modeling Applications. IEEE, 63–73.
Autodesk. 2016. Maya User Guide. (2016). https://autodesk.com/maya.
J. R. Barber. 2010. Elasticity. Solid Mechanics and Its Applications, Vol. 172. Springer.
J. Barbič and D. L. James. 2005. Real-Time Subspace Integration for St. Venant-Kirchhoff
Deformable Models. ACM Trans. Graph. 24, 3 (2005), 982–990.
J. Barbič and Y. Zhao. 2011. Real-time Large-deformation Substructuring. ACM Trans.
Graph. 30, 4, Article 91 (2011).
J. C. Bazin, C. Plüss (Kuster), G. Yu, T. Martin, A. Jacobson, and M. Gross. 2016. Physically
Based Video Editing. Computer Graphics Forum (2016).
M. Ben-Chen, O. Weber, and C. Gotsman. 2009. Variational Harmonic Maps for Space
Deformation. ACM Trans. Graph. 28, 3 (2009).

ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.

C. A. Brebbia, J. C. F. Telles, and L. Wrobel. 2012. Boundary element techniques: theory
and applications in engineering. Springer Science & Business Media.
C. Brezinski and M. R. Zaglia. 2013. Extrapolation methods: Theory and practice. Studies
in Computational Mathematics (Book 2), Vol. 2. Elsevier.
M. P. Cani and A. Angelidis. 2006. Towards Virtual Clay. In ACM SIGGRAPH Courses.
67–83.
A. T. Chwang and T. Y.-T. Wu. 1975. Hydromechanics of low-Reynolds-number flow.
Part 2. Singularity method for Stokes flows. J. of Fluid Mechanics 67, 04 (1975),
787–815.
S. Coquillart. 1990. Extended Free-form Deformation: A Sculpturing Tool for 3D
Geometric Modeling. In ACM SIGGRAPH. 187–196.
F. Cordier, Y. Gingold, E. Entem, M. P. Cani, and K. Singh. 2016. Sketch-based Modeling.
In Eurographics Tutorials.
R. Cortez. 2001. The Method of Regularized Stokeslets. SIAM J. on Scientific Computing
23, 4 (2001), 1204–1225.
R. Cortez, L. Fauci, and A. Medovikov. 2005. The method of regularized Stokeslets inthree dimensions: Analysis, validation, and application to helical swimming. Physics
of Fluids 17 (2005).
R. W. Cottle. 1974. Manifestations of the Schur complement. Linear Algebra and its
Applications 8, 3 (1974), 189 – 211.
G. Dewaele and M. P. Cani. 2004. Interactive Global and Local Deformations for Virtual
Clay. Graph. Models 66, 6 (2004).
E. Ferley, M. P. Cani, and J.-D. Gascuel. 2001. Resolution Adaptive Volume Sculpting.
Graph. Models 63, 6 (2001).
S. F. Frisken, R. N. Perry, A. P. Rockwood, and T. R. Jones. 2000. Adaptively sampled
distance fields: a general representation of shape for computer graphics. In ACM
SIGGRAPH. 249–254.
T. A. Galyean and J. F. Hughes. 1991. Sculpting: An Interactive Volumetric ModelingTechnique. In ACM SIGGRAPH. 267–274.
F. Hahn, S. Martin, B. Thomaszewski, R. Sumner, S. Coros, and M. Gross. 2012. Rig-space
Physics. ACM Trans. Graph. 31, 4 (2012).
G. J. Hancock. 1953. The Self-Propulsion of Microscopic Organisms through Liquids.
Proc. of the Royal Soc. of London A: Mathematical, Physical and Engineering Sciences
217, 1128 (1953), 96–121.
A. Jacobson, I. Baran, L. Kavan, J. Popović, and O. Sorkine. 2012. Fast Automatic
Skinning Transformations. ACM Trans. Graph. 31, 4 (2012).
A. Jacobson, I. Baran, J. Popović, and O. Sorkine. 2011. Bounded Biharmonic Weights
for Real-time Deformation. ACM Trans. Graph. 30, 4, Article 78 (2011).
D. L. James and D. K. Pai. 1999. ArtDefo: Accurate Real Time Deformable Objects. In
ACM SIGGRAPH. 65–72.
D. L. James and D. K. Pai. 2003. Multiresolution Green’s Function Methods for Interactive
Simulation of Large-scale Elastostatic Objects. ACM Trans. Graph. 22, 1 (2003), 47–
82.
P. Joshi, M. Meyer, T. DeRose, B. Green, and T. Sanocki. 2007. Harmonic Coordinates
for Character Articulation. ACM Trans. Graph. 26, 3 (2007).
L. Kavan and O. Sorkine. 2012. Elasticity-Inspired Deformers for Character Articulation.
ACM Trans. on Graph. 31, 6 (2012).
Lord Kelvin. 1848. Note on the integration of the equations of equilibrium of an elastic
solid. Cambridge and Dublin Mathematical Journal 3 (1848), 87–89.
Y. Lipman, D. Cohen-Or, R. Gal, and D. Levin. 2007. Volume and Shape Preservation
via Moving Frame Manipulation. ACM Trans. Graph. 26, 1, Article 5 (2007).
Y. Lipman, D. Levin, and D. Cohen-Or. 2008. Green Coordinates. ACM Trans. Graph.
27, 3, Article 78 (2008).
N. Magnenat-Thalmann, R. Laperrière, and D. Thalmann. 1988. Joint-dependent Local Deformations for Hand Animation and Object Grasping. In Proc. on Graphics
Interface. 26–33.
A. McAdams, Y. Zhu, A. Selle, M. Empey, R. Tamstorf, J. Teran, and E. Sifakis. 2011.
Efficient Elasticity for Character Skinning with Contact and Collisions. ACM Trans.
Graph. 30, 4, Article 37 (2011).
G. Nielson, H. Hagen, and H. Müller. 1997. Scientific Visualization. IEEE Computer
Society.
M. Pauly, D. K. Pai, and L. J. Guibas. 2004. Quasi-rigid Objects in Contact. In Proc. of the2004 ACM SIGGRAPH/Eurographics Symp. on Computer Animation. Eurographics

Regularized Kelvinlets • 40:11
Association, 109–119.
N. Phan-Thien and S. Kim. 1994. Microstructures in elastic media : principles andcomputational methods. Oxford U. Press.
P. Podio-Guidugli and A. Favata. 2014. Elasticity for Geotechnicians. Springer.
J. Reinders. 2007. Intel Threading Building Blocks. O’Reilly & Associates, Inc.
T. W. Sederberg and S. R. Parry. 1986. Free-form Deformation of Solid Geometric
Models. In ACM SIGGRAPH. 151–160.
R. Setaluri, Y. Wang, N. Mitchell, L. Kavan, and E. Sifakis. 2014. Fast grid-based nonlinear
elasticity for 2D deformations. In Proc. of the ACM SIGGRAPH/Eurographics Symp.
on Computer Animation. 67–76.
K. Singh and E. Fiume. 1998. Wires: A Geometric Deformation Technique. In ACM
SIGGRAPH. 405–414.
W. S. Slaughter. 2002. The Linearized Theory of Elasticity. Birkhäuser Basel.
O. Sorkine and M. Alexa. 2007. As-rigid-as-possible Surface Modeling. In Proc. of theFifth Eurographics Symposium on Geometry Processing. 109–116.
W. von Funck, H. Theisel, and H. P. Seidel. 2006. Vector field based shape deformations.
ACM Trans. on Graph. 25, 3 (2006), 1118–1125.
Wolfram Research Inc. 2016. Mathematica Version 11. Wolfram Research Inc.

A

DERIVATION OF 3D REGULARIZED KELVINLETS

We derived the analytical expression (6) for the regularized Kelvinlet
in 3D using the so-called Papkovich-Neuber potentials (or PN potentials); see, e.g., [Barber 2010]. Given a load distribution b(r ), the PN
potentials correspond to a pair of scalar-valued and vector-valued
harmonic fields given by the integrals∫∫b(s)s t b(s)Ψ(r ) =
ds, ϕ(r ) =ds.
R3 4π kr − s k
R3 4π kr − s kfield u ε (r ) given by (6) along the z-axis, as shown in (24). However,by naively substituting (6) to (24), we find
q


∫ ∞

rε2 + L2 ª
L
+
©
1
 ­
® → ∞.
dz = lim 2 ln­
®
rε
L→∞ 
-∞ r ε«¬To overcome this issue, we exploit the fact that the equation ofelastostatics is invariant to a global translation, i.e., we can translatea displacement satisfying (2) by a constant and it remains a solution.
Based on this observation, we translate the 2D displacements in (24)by −2 ln(L), which leads toq © L + rε2 + L2 ª ­® − 2 ln(L) = −2 ln(rε ).
lim 2 ln­
®

rε
L→∞ 


¬
 «

The remaining terms in (6) are easily integrated, resulting in (25).

Once the PN potentials are known, the displacement solution for (2)can be computed by



1
1
Ψ(r ) +∇ ϕ(r ) − r t Ψ(r ) .
(27)u(r ) =µ4(1 − ν )For our specific load b(r ) = f ρ ε (r ) with force vector f and normalized distribution ρ ε (r ) given by (5), we have∫ρ ε (s)ds ≡ f ψ ε (r ), Ψ(r ) = f
R3 4π kr − s k
(28)
∫


sρ ε (s)ttds ≡ f Φε (r ).
 ϕ(r ) = f
R3 4π kr − s kThe scalar field ψ ε can then be interpreted as the electric potential
associated with the charge density ρ ε (s). Similarly, the i-th component of the vector field Φε corresponds to the electric potential
with charge density si ρ ε (s). The closed-form expression for ψ ε canbe found in [Cortez et al. 2005]:


1 2
ε2
ψ ε (r ) =+.
8π r ε r ε3
The expression for Φε is more complicated to derive: we used [Wolfram Research Inc. 2016] to compute an infinite Laplace series in
spherical coordinates which, after a few algebraic manipulations,simplifies to3ε 2 rΦε (r ) = −.
8π r ε2
Finally, substituting Φε and ψ ε into (27) we obtain (6).

B

DERIVATION OF 2D REGULARIZED KELVINLETS

We now detail the computations involved to obtain (25). Regularized
Kelvinlets in 2D can be derived by integrating the 3D displacement
ACM Transactions on Graphics, Vol. 36, No. 4, Article 40. Publication date: July 2017.