Beruflich Dokumente
Kultur Dokumente
Figure 1: Objects created with our system. (a) boolean operations with scanned geometry, (b) an Octopus modeled by deforming and extrud-
ing a sphere, (c) a design study for a Siggraph coffee mug created by boolean operations, free-form deformation and displacement mapping.
641
In this paper we propose a hybrid geometry representation that large point-sampled models. Nevertheless, we believe that phys-
is designed to combine the advantages of implicit and parametric ics-based simulation provides an expressive and intuitive approach
surface models. We use an unstructured cloud of point samples to to surface design.
represent the mere geometric shape. As a second component, we Free-form shape deformations have been studied extensively
add an implicit surface definition based on the moving least in the past [Barr 1984], [Sederberg and Parry 1986], [Chang and
squares projection [Levin , to appear], which provides access to Rockwood 1994]. Our free-form modeling tool bears some simi-
important surface attributes such as the signed distance function or larity to the wires system of [Singh and Fiume 1998], which uses a
normal information. set of one-dimensional curves to define a smooth deformation
We exploit this hybrid structure to integrate robust boolean field. We extend this scheme by allowing arbitrary subsets of the
operations and constrained free-form deformations into a unified surface to define the underlying distance functions (see Section 4).
shape modeling framework. The surface geometry can be explic- Similarly, surface modeling using boolean operations has been
itly accessed through the sample points, while the implicit surface the focus of significant research efforts. For an overview, we refer
model is used for distance and normal queries. the reader to [Hoffmann 1989]. A modeling framework based on
For boolean operations this combination allows us to reliably level sets has been presented in [Museth et al. 2002]. This system
recover the intersection curves of two objects and place additional clearly demonstrates the strength of implicit representations for
samples exactly on the resulting sharp feature line. performing boolean operations and handling complex surface
topology. Interactivity is very limited, however, partly because the
For free-form modeling, we are able to perform very large sur- model has to be converted to a triangle mesh for display.
face deformations using a sampling method that dynamically Various researchers have addressed the problem of dynamically
inserts or deletes sample points when the local sample density adapting the sampling density of discrete surfaces in the presence
becomes too low or too high. During deformations, the point cloud of large geometric deformations. Welch and Witkin [Welch and
is not treated as a fixed, static representation of the underlying Witkin 1994] have presented a shape modeling system for triangle
manifold surface, but rather as a set of temporary samples that meshes that uses vertex split and edge collapse operators to keep
evolves over time as the surface deforms. This gives the designer the sampling density uniform. A similar approach was taken in
great flexibility when modeling a well-defined region of the sur- [Kobbelt et al. 2000] for multiresolution meshes with dynamic ver-
face by pulling, pushing or twisting a control handle. In addition, tex connectivity. Our dynamic sampling method is also based on
the modeling tool utilizes the signed distance function to provide point splitting operations. The main difference is that we do not
strict topology control: Intersections of the deformed surface with have to maintain the consistency of a mesh connectivity graph,
itself can be detected efficiently and, depending on the design which leads to simpler code and increased performance.
intent, surfaces can be repulsed or merged. For completeness, we
have also implemented a blending operator to create smooth tran- 2 HYBRID SURFACE MODEL
sitions between two merged surface parts.
Our input data consists of an unstructured point cloud
We consider our work as an integrated component of an intui- P = { p i = ( x i, y i, z i ) 1 ≤ i ≤ n } that approximates some underly-
tive modeling system for the creation of 3D content for computer ing manifold surface. Additional to the geometric position, each
graphics applications. As opposed to industrial design applica- sample point can also store a set of scalar attributes, such as color,
tions, where geometric models are usually constructed from material properties, or texture coordinates.
scratch, the creation of 3D models for computer graphics is often We extend this explicit point cloud representation by the mov-
based on editing detailed models that have been acquired by some ing least squares (MLS) surface model introduced in [Levin , to
3D scanning device. Such scanners typically provide dense sam- appear]. The continuous MLS surface S is defined implicitly as
plings of some physical prototype. Point-based modeling tech- the stationary set of a projection operator Ψ ( P, r ) that projects a
niques can directly handle this kind of input data without requiring point r ∈ IR3 onto the MLS surface
extensive pre-processing. Additionally, recent progress in the effi- S = { x ∈ IR3 Ψ ( P, x ) = x } . To evaluate Ψ ( P, r ) we first com-
cient rendering of point-sampled surfaces [Zwicker et al. 2001], pute a local reference plane
[Rusinkiewicz and Levoy 2000], [Botsch et al. 2002] demonstrates
that point-based representations are well suited for interactive H = { x ∈ IR3 x ⋅ n – D = 0 } (1)
applications.
by minimizing the weighted sum of squared distances
642
The characteristics of the surface can be controlled by the ker- For point-sampled geometry we can use the MLS projection
nel function φ . Typically, a Gaussian φ ( t ) = exp ( – t2 ⁄ h 2 ) is operator both for inside/outside classification as well as for explic-
chosen, where h is a global scale parameter that determines the itly sampling the intersection curve. The goal is to perform a bool-
feature size of the resulting surface. As has been observed in ean operation on two orientable, closed surfaces S 1 and S 2 that
[Alexa et al. 2001], the MLS projection operator essentially imple- are represented by two point clouds P 1 and P 2 , to obtain a new
ments a low-pass filter, where the degree of smoothness depends point cloud P° that defines the resulting surface S° . P° consists
on the scale parameter. This smoothing effect can be exploited for of two subsets Q 1 ⊆ P1 and Q 2 ⊆ P 2 plus a set of newly gener-
pre-processing noisy scanner data (see also Figure 19). ated sample points that explicitly represent the intersection curves.
Thus in order to perform a boolean operation for point-sampled
Adaptive MLS projection. Using a fixed global scale factor
geometry, we need the following techniques:
can be problematic for non-uniformly sampled surfaces. If h is too
large, areas of high sampling density will be smoothed excessively, • a classification predicate to determine the two sets Q 1 and Q 2 ,
while numerical instabilities occur in sparsely sampled regions, if • an algorithm to find samples on the intersection curve, and
h is too small. To deal with this problem we use an extension of • a rendering method that allows to display crisp features curves
using point primitives.
643
intersection curve
ny Q1 Q2
x np
π r
p > ---
x 2 q1 q2
ny y Ψ ( P, x ) = y
S1
S2
(a) (b)
p np
(a) (b)
Figure 4: Inside/outside test. For x very close to the surface, the q 1' q 2' r'
closest point p ∈ P can yield a false classification (right image). In
this case, x is classified according to its MLS projection y .
plex, non-convex surfaces, as illustrated in Figure 3. Since we are (c) (d)
only interested in an inside/outside classification, we can signifi-
cantly improve the performance by exploiting local coherence:
Ω P ( x ) = ΩP ( x' ) for all points x' that lie in the sphere around x
intersection curve
with radius x – p – η p . Thus the number of closest point queries
and MLS projections can be reduced drastically, in practice up to
90 percent. Given the classification predicate Ω , the subsets Q 1 (e) (f) (g)
and Q 2 can be computed as shown in Table 1.
Figure 5: Sampling the intersection curve. (a) closest pairs of
Q1 Q2 points in Q 1 and Q 2 , (b) first estimate r , (c) re-projection, (d) sec-
S1 ∪ S 2 { p ∈ P1 ΩP ( p ) = 0 } { p ∈ P2 ΩP ( p ) = 0 } ond estimate r' , (e-g) adaptive refinement.
2 1
644
clipped areas
of a point p ∈ χ d after the deformation as p′ = F ( p, t ) , where F
is a deformation function composed of a translatory and a rota-
tional part. We can write F ( p, t ) = F T ( p, t ) + F R ( p, t ) , where
• F T ( p, t ) = p + t ⋅ v with v a translation vector and
• F R ( p, t ) = R ( a, t ⋅ α ) ⋅ p , where R ( a, α ) is the matrix that
specifies a rotation around axis a with angle α .
(a) (e)
Figure 8 shows a translatory deformation of a plane where the
translation vector v is equal to the plane normal. This figure also
illustrates the effect of different choices of the blending
function β . In Figure 9, two rotational deformations of a cylinder
are shown, while a combination of both translatory and rotational
deformations is illustrated in Figure 13.
To perform a free-form deformation the user only needs to
select the zero- and one-regions and choose an appropriate blend-
(b) (c) (d)
ing function. She can then interactively deform the surface by dis-
Figure 6: Rendering the intersection curve. (a) mutual clipping of placing the handle with a mouse or trackball device, similar to
two surfels on the intersection curve, (b) boolean differences on the [Kobbelt et al. 1998]. This gives our method great flexibility for
bunny model, (c) zoom of the intersection curves, (d) sampling dis- handling a wide class of free-form deformations, while still pro-
tribution, where samples on the intersection curve are rendered us- viding a simple and intuitive user interface.
ing two red half ellipses, (e) an example of a corner.
1
0.8
0.6
0.4
0.2
0.8
0.6
0.4
0.2
ing, stretching and compressing of the model surface. For this pur-
pose we introduce a point-based free-form deformation tool that
allows the user to interactively deform a surface by specifying a 1
0.4
surface and marks parts of this region as a control handle. The sur- 0.2
face can then be modified by pushing, pulling or twisting this han- 0 0.2 0.4 0.6 0.8 1
0 p ∈ χj a2
dj ( p ) = , (4)
min q ∈ χj ( p – q ) p ∉ χj
645
4.1 Topology Control
An important issue in shape design using free-form deformation is
the handling of self-intersections. During deformation, parts of the
deformable region can intersect other parts of the surface, which
leads to an inconsistent surface representation. To cope with this (a) (d)
problem we need a method for detecting and resolving such colli-
sions.
Collision Detection. Similar to boolean operations, this
requires an inside/outside classification to determine which parts
of the surface have penetrated others. Thus we can again apply the
classification predicate Ω defined in Section 3.1. We start by com- (b) (e)
puting for each sample point p ∈ χ d the closest point q ∈ χ0 .
This defines an empty sphere s p around p with radius p – q . If
the point p only moves within this sphere during deformation, it is
guaranteed not to intersect with the zero-region (see Figure 10). So
additionally to exploiting spatial coherence as for boolean classifi-
cation, we can now also exploit the temporal coherence induced by
the smooth deformation field. Only when p leaves s p do we have
to re-evaluate the classification predicate Ω , which at the same
time provides a new estimate for the updated sphere s p . (c) (f)
646
(a) (b) (c)
each other nor do they preserve their unit length. The amount of
this distortion can be measured by taking the ratio of the two Figure 13: A very large deformation using a combination of trans-
eigenvalues of (5) (local anisotropy) or by taking their product latory and rotational motion. The left column shows intermediate
(local change of surface area). When the local distortion becomes steps with the top image indicating zero- and one-regions. Each
too strong, we have to insert new samples to re-establish the pre- point of the surface carries texture coordinates, which are interpo-
scribed sampling density. Since Equation (5) defines an ellipse in lated during re-sampling and used for texturing the surface with a
the tangent plane centered at p with the principal axes defined by checkerboard pattern. The bottom row illustrates this interpolation
the eigenvectors and eigenvalues, we can easily replace p by two process, where the function values are indicated by vertical lines.
new samples p 1 and p 2 that we position on the main axis of the
ellipse (cf. Figure 12).
This tangential drift leads to distortions in the associated scalar
5.2 Filter operations functions. To deal with this problem we create a copy of each point
that carries scalar attributes and keep its position fixed during
Whenever a splitting operation is applied, we need to determine relaxation. In particular, we maintain for each sample that is split a
both the geometric position and the scalar function values for the copy with its original data. These points will only be used for inter-
newly generated sample points. Both these operations can be polating scalar values, they are not part of the current geometry
described as the application of a filtering operator: If we apply the description. Since these samples are dead but their function values
operator to the sample positions, we call it a relaxation filter, while still live, we call them zombies. Zombies will undergo the same
we call it an interpolation filter, if we apply it to function values. transformation during a deformation operation as living points, but
their positions will not be altered during relaxation. Thus zombies
Relaxation. Introducing new sample points through a splitting
accurately describe the scalar attributes without distortions. There-
operation creates local imbalances in the sampling distribution. To
fore, we use zombies only for interpolation, while for relaxation
obtain a more uniform sampling pattern, we apply a relaxation
we only use living points. After an editing operation is completed,
operator that moves the sample points within the surface (see
all zombies will be deleted from the representation. Figure 13
Figure 12). Similar to [Turk 1992] we use a simple point repulsion
illustrates our dynamic re-sampling method for a very large defor-
scheme with a repulsion force that drops linearly with distance. We
mation that leads to a substantial increase in the number of sample
can thus confine the radius of influence of each sample point to its
points. While the initial plane consists of 40,000 points, the final
local neighborhood, which allows very efficient computation of
model contains 432,812 points, clearly demonstrating the robust-
the relaxation forces. The resulting displacement vector is then
ness and scalability of our method in regions of extreme surface
projected into the point’s tangent plane to keep the samples on the
stretch.
surface.
Interpolation. Once we have fixed the position of a new sample 5.3 Downsampling
point p using the relaxation filter, we need to determine its associ-
ated function values. This can be achieved using an interpolation Apart from lower sampling density caused by surface stretching,
filter by computing a local average of the function values of neigh- deformations can also lead to an increase in sampling density,
boring sample points. We need to be careful, however. The relax- where the surface is squeezed. It might be desirable to eliminate
ation filter potentially moves all points of the neighborhood of p . samples in such regions while editing, to keep the overall sampling
647
distribution uniform. However, dynamically removing samples Figure 19 demonstrates that our modeling framework is well
also has some drawbacks. Consider a surface that is first squeezed suited for scanned surfaces. The smoothing effect of the MLS pro-
and then stretched back to its original shape. If samples get jection has been used to de-noise the input data set. After this min-
removed during squeezing, surface information such as color will imal pre-processing, free-form deformations and boolean
be lost, which leads to increased blurring when the surface is re- operations can be directly applied to the acquired point cloud. This
stretched. Thus instead of dynamic sample deletion we perform an example also illustrates a typical cut-and-paste operation. The ear
optional “garbage collection” at the end of the editing operation. has been extracted from the Max Planck model and pasted onto the
To reduce the sampling density, we use the iterative simplification scanned surface using a boolean union, resulting in a surface con-
method introduced in [Pauly et al. 2002], which successively con- sisting of 100,269 points.
tracts point pairs according to a quadric error metric.
Implementation. The central computational primitive used in
our algorithms is closest points query: Given a point x ∈ IR 3 find
6 RESULTS AND DISCUSSION
the point(s) p ∈ P such that x – p is minimal. For example, the
We have implemented the algorithms presented in the previous MLS projection operator uses closest point queries to determine
sections as plug-ins to Pointshop3D, a publicly available texturing the initial estimate for the base point q in Equation (2) and to col-
and sculpting tool for point-sampled models [Zwicker et al. 2002]. lect all points that contribute to the least-squares optimization.
The integration of our shape modeling functionality with the We use kd-trees for these spatial query tasks, since they feature
appearance modeling tools provided by Pointshop3D has been efficient construction and fast query response time. For example,
very smooth, since both are based on unstructured point clouds as building a kd-tree of 300,000 points takes 0.23 seconds, while a
the fundamental geometry representation. query for the ten closest points takes between 4.5 and 6.2 micro-
Figure 14 shows boolean operations and deformation in connec- seconds (on a 2.8 GHz Pentium IV). Kd-trees are static data struc-
tion with displacement fields to illustrate the potential for multires- tures, i.e. dynamically updating point positions and inserting or
olution surface modeling [Zorin et al. 1997]. The original model deleting points is computationally expensive. Yet the dynamic
has been low-pass filtered using a large scale parameter in the sampling paradigm (Section 5) is at the heart of our processing
MLS kernel function (see Section 2) to create a base domain for methods. A closer look at our algorithms reveals, however, that
the multiresolution decomposition. Detail vectors can easily be this does not pose serious problems from an implementational
computed by projecting the points of the original model onto the point of view:
base domain using the MLS projection operator. These detail vec- • For boolean classification (Section 3.1), we are dealing with
tors can then be added back to the deformed base domain to enable static objects that can be positioned relative to each other by the
intuitive editing semantics in a multiresolution sense. The same user. Since the resulting affine transformation can be incorpo-
projection method can also be used to build a spectral decomposi- rated into the query, no updates of the kd-tree are necessary.
tion of a point-sampled surface to apply various filtering opera- • For free-form deformation (Section 4) we need closest point
tions similar to [Guskov et al. 1999] or [Pauly and Gross 2001]. queries to evaluate the distance functions d j (see Equation 4) for
Figure 15 shows the model of the Octopus, whose shape has computing the scale factor t . This is done once at the beginning
been created from a single sphere entirely using the free-form of the modeling session, so no dynamic updates of the kd-tree
deformation tool (see also Figure 1 (b)). First a global deformation are required while the user interactively deforms the surface.
has been applied to create an ellipsoid, then the tentacles have been
pulled out using a similar deformation as the one shown in • For collision detection (Section 4.1) we need to evaluate the
Figure 13. The eyes and suckers have been added using displace- classification predicate Ω for dynamically varying point loca-
ment mapping and the model has finally been textured using the tions. Since performance is most critical, we restrict our algo-
paint tool of Pointshop3D. This example illustrates that dynamic rithm to only detect collisions of the deformable region with the
re-sampling is essential when dealing with large deformations. The zero-region, which is described by a static point cloud. Thus our
initial sphere contains 69,706 points, while the final model con- current method cannot handle collisions of the deformable
tains 295,220 points. region with itself.
Figure 16 illustrates that the sharp intersection curves created • When dynamically sampling the surface (Section 5), we need
by a boolean difference operation are well preserved during a sub- closest point information for samples in the deformable region to
sequent deformation. The final model of the spiral consists of apply the relaxation and interpolation filters. Since these sam-
69,268 points. ples vary in position and new samples are inserted dynamically,
In Figure 17 the handle of the coffee mug (222,955 points) has we cannot use the kd-tree efficiently. Therefore we compute
been created using the deformation tool in connection with a bool- these neighborhood relations at the beginning of the interaction
ean union operation and particle-based blending as described in and cache them during deformation (see also [Linsen and
Section 4.1. The interior of the mug has been cut out with a bool- Prautzsch 2002]). When new points are inserted into the point
ean difference and the dragon head has been added using a union cloud, we can dynamically propagate existing neighborhood
operation. Finally, the Siggraph logo has been embossed and the information without re-computing the correct spatial relations.
model has been textured. Thus updates to the kd-tree are only required at the end of an edit-
Figure 18 shows boolean operations with two sparsely and non- ing session, but not during interactive modeling. Note that addi-
uniformly sampled models, illustrating that our methods work well tional structural information such as a mesh connectivity graph
for a wide class of input models. First the skull has been deformed would not be of much use for the above computations. Only for
to better match the shape of the head. Then a boolean difference of relaxation and interpolation would the explicit neighborhood
the head with a plane and a subsequent union with the skull have information be beneficial. However, keeping the internal mesh
been performed, yielding a model of 25,020 points. data structures consistent, while new samples are inserted continu-
648
ously and old samples change their relative position, would be ALEXA, M., BEHR, J., COHEN-OR, D., FLEISHMAN, S., LEVIN, D., AND SILVA,
cumbersome and inefficient. Additionally, the structural simplicity C. T. 2001. Point set surfaces. In Proc. of IEEE Visualization 2001.
BARR, A. H. 1984. Global and local deformations of solid primitives. In Pro-
of the point-based representation leads to a much simpler imple- ceedings of SIGGRAPH 1984.
mentation and avoids most of the numerical instabilities that occur BOTSCH, M., WIRATANAYA, A., AND KOBBELT, L. 2002. Efficient high qual-
when triangles meshes are re-meshed or boolean operations are ity rendering of point sampled geometry. In Eurographics Workshop on
applied. Nevertheless, all algorithms described in this paper can Rendering 2002.
CARR, J., BEATSON, R., CHERRIE, J., MITCHELL, T., FRIGHT, W., MCCAL-
also be applied to triangle meshes, which can be understood as LUM, B., AND EVANS, T. 2001. Reconstruction and representation of 3d
point clouds with a special connectivity graph. objects with radial basis functions. In Proceedings of SIGGRAPH 2001.
CHANG, Y. AND ROCKWOOD, A. 1994. A generalized de casteljau approach
Performance. Currently our point-based shape modeling sys- to 3d free-form deformation. In Proceedings of SIGGRAPH 1994.
tem can handle models of up to 1 million samples at interactive DOCARMO, M. P. 1976. Differential Geometry Of Curves and Surfaces.
rates on a desktop PC. When collision detection is enabled, the Prentice Hall.
framerate is reduced by 10% - 30% depending on the specific con- FARIN, G. 2002. Curves and Surfaces for CAGD, 5rd ed.. Academic Press.
GUSKOV, I., SWELDENS, W., AND SCHRÖDER, P. 1999. Multiresolution signal
figuration. Central to achieving such high performance is the sim- processing for meshes. In Proceedings of SIGGRAPH 1999.
plicity and compactness of our point-based surface representation, HOFFMANN, C. M. 1989. Geometric and solig modeling: An introduction.
which leads to concise and efficient algorithms, reduced memory Morgan Kaufmann.
traffic and enhanced cache performance. We also exploit spatial HOPPE, H., DEROSE, T., DUCHAMP, T., MCDONALD, J., AND STUETZLE, W.
1992. Surface reconstruction from unorganized points. In Proceedings of
and temporal coherence during boolean classification (see SIGGRAPH 1992.
Section 3.1) and collision detection (Section 4.1). In our current KOBBELT, L., CAMPAGNA, S., VORSATZ, J., AND SEIDEL, H.-P. 1998. Inter-
implementation a limiting factor regarding performance is render- active multi-resolution modeling on arbitrary meshes. In Proceedings of
ing speed. We use the purely software-based, high quality surface SIGGRAPH 1998.
KOBBELT, L. P., BAREUTHER, T., AND SEIDEL, H.-P. 2000. Multiresolution
splatting renderer of Pointshop3D (see [Zwicker et al. 2001]). Our shape deformations for meshes with dynamic vertex connectivity. Com-
experiments show that during deformation more than 50% of the puter Graphics Forum, 19(3).
total computation time are devoted to rendering, so we expect sig- KRISHNAN, S. AND MANOCHA, D. 1997. An efficient surface intersection
nificant speed-ups if instead more efficient software renderers (e.g. algorithm based on lower-dimensional formulation. In ACM Transactions
on Graphics 16(1).
[Botsch et al. 2002]) or hardware supported renderers (e.g.
LEVIN, D.. Mesh-independent surface interpolation. In Advances in Comp.
[Rusinkiewicz and Levoy 2000]) are used. Math., to appear.
LEVIN, D. 1998. The approximation power of moving least-squares. In Math.
7 CONCLUSIONS & FUTURE WORK Comp. Vol 67, No. 224.
LEVOY, M. AND WHITTED, T. 1985. The use of points as a display primitive.
We have presented a shape modeling system based on a single uni- In UNC-Chapel Hill Computer Science Tech. Report #85-022, 1985.
LINSEN, L. AND PRAUTZSCH, H. 2002. Fan clouds - an alternative to meshes.
versal geometry representation that consists of an unstructured In Proc. of Dagstuhl Seminar on Theo. Foundations of Computer Vision -
cloud of sample points, which lie on the surface of an object. This Geometry, Morphology, and Computational Imaging.
raw point cloud is enhanced by an efficient tool to locally estimate MUSETH, K., BREEN, D., WHITAKER, R., AND BARR, A. 2002. Level set sur-
the signed distance function of the underlying surface. All the face editing operators. In ACM Transactions on Graphics, Vol. 21(3), July
2002.
demonstrated functionality is built on top of this hybrid representa- OSHER, S. AND FEDKIW, R. 2002. Level Set Methods and Dynamic Implicit
tion. The main features of our system are the integration of bool- Surfaces. Springer Verlag, New York.
ean operations and free-form deformations, a dynamic sampling PAULY, M. AND GROSS, M. 2001. Spectral processing of point-sampled
framework to handle large model deformations, a technique to rep- geometry. In Proceedings of SIGGRAPH 2001.
PAULY, M., GROSS, M. H., AND KOBBELT, L. P. 2002. Efficient simplifica-
resent, sample and render sharp corners in point-sampled models,
tion of point-sampled surfaces. In Proc. of IEEE Visualization 2002.
and an efficient method to detect self-intersection for explicit RUSINKIEWICZ, S. AND LEVOY, M. 2000. QSplat: A multiresolution point
topology control. Due to the structural simplicity of our represen- rendering system for large meshes. In Proceedings of SIGGRAPH 2000.
tation, all these algorithms are efficient, easy to implement and SEDERBERG, T. AND PARRY, S. 1986. Free-form deformation of solid geo-
applicable to a wide range of input models. metric models. In Proceedings of SIGGRAPH 1986.
SINGH, K. AND FIUME, E. 1998. Wires: A geometric deformation technique.
In the future we want to investigate ways to extend our surface In Proceedings of SIGGRAPH 1998.
model to handle more complex shapes, including hairy or furry SZELISKI, R. AND TONNESEN, D. 1992. Surface modeling with oriented par-
ticle systems. In Proceedings of SIGGRAPH 1992.
models, or natural objects such as plants. We also believe that TURK, G. 1992. Re-tiling polygonal surfaces. In Proceedings of SIGGRAPH
dynamic simulations of virtual materials can easily be incorpo- 1992.
rated into our system and that our deformation method is well VELHO, L., GOMES, J., AND FIGUEIREDO, L. H. 2002. Implicit Objects in
suited for animation. Computer Graphics. Springer Verlag, New York.
WELCH, W. AND WITKIN, A. 1994. Free form shape design using triangu-
lated surfaces. In Proceedings of SIGGRAPH 1994.
Acknowledgements WITKIN, A. AND HECKBERT, P. 1994. Using particles to sample and control
implicit surfaces. In Proceedings of SIGGRAPH 1994.
This work is supported by the joint Berlin/Zurich graduate pro- ZORIN, D. AND SCHRÖDER, P. 2000. Subdivision for Modeling and Anima-
tion. SIGGRAPH 2000 Course Notes.
gram Combinatorics, Geometry, and Computation, financed by ZORIN, D., SCHRÖDER, P., AND SWELDENS, W. 1997. Interactive multireso-
ETH Zurich and the German Science Foundation (DFG). lution mesh editing. In Proceedings of SIGGRAPH 1997.
ZWICKER, M., PAULY, M., KNOLL, O., AND GROSS, M. 2002. Pointshop3d:
References An interactive system for point-based surface editing. In Proceedings of
SIGGRAPH 2002.
ALEXA, M., BEHR, J., COHEN-OR, D., FLEISHMAN, S., LEVIN, D., AND SILVA, ZWICKER, M., PFISTER, H., VAN BAAR, J., AND GROSS, M. 2001. Surface
C. T.. Computing and rendering point set surfaces. In IEEE TVCG, to splatting. In Proceedings of SIGGRAPH 2001.
appear.
649
Figure 17: Creating the Siggraph coffee mug using boolean opera-
tions, deformation, collision detection and particle-based blending
(a) (b)
(see Figure 1 (c)).
(c) (d)
Figure 18: Boolean operations of the Max Planck bust, a plane and
the skull model (see Figure 1 (a)).
(a)
(b) (f)
Figure 15: Creating an Octopus from a sphere using the deforma-
tion tool with dynamic sampling (see Figure 1 (b)).
650