i
i
i
i
i
i
i
i
390 16. Implicit Modeling
with distance fields started with Ricci (Ricci, 1973); R-functions (Rvachev, 1963)
were first applied to shape modeling more than 20 years later (see (Shapiro, 1994)
and (A. Pasko et al., 1995)).
An R-function or Rvachev function is a function whose sign can change if
and only if the sign of one of its arguments changes; that is, its sign is determined
solely by its arguments. R-functions provide a robust theoretical framework for
boolean composition of real functions, permitting the construction of C
n
CSG
operators (Shapiro, 1988). These CSG operators can be used to create blending
operators simply by adding a fixed offset to the result (A. Pasko et al., 1995).
Although these blending functions are no longer technically R-functions, they
have most of the desirable properties and can be mixed freely with R-functions
to create complex hierarchical models (Shapiro, 1988). These R-function-based
blending and CSG operators are referred to as R-operators (see Section 16.4).
The Hyperfun system (Adzhiev et al., 1999) is based on F-reps (function repre-
sentation), another name for an implicit surface. The system uses a procedural
C-like language to describe many types of implicit surfaces.
16.1.3 Level Sets
It is useful to represent an implicit field discretely via a regular grid (Barthe et al.,
2002) or an adaptive grid (Frisken et al., 2000). This is exactly what the polygo-
nization algorithm does in the case of level sets; moreover, the grid can be used
for various other purposes beside building polygons. Discrete representations of
f are commonly obtained by sampling a continuous function at regular intervals.
For example, the sampled function may be defined by other volume model repre-
sentations (V. V. Savchenko et al., 1998). The data may also be a physical object
sampled using three-dimensional imaging techniques. Discrete volume data has
most often been used in conjunction with the level sets method (Osher & Sethian,
1988), which defines a means for dynamically modifying the data structure using
curvature-dependent speed functions. Interactive modeling environments based
on level sets have been defined (Museth et al., 2002), although level sets are only
one method employing a discrete representation of the implicit field. Methods
for interactively defining discrete representations using standard implicit surfaces
techniques have also been explored (Baerentzen & Christensen, 2002).
A key advantage to employing a discrete data structure is its ability to act as a
unifying approach for all of the various volume models defined by potential fields
(discrete or not) (V. V. Savchenko et al., 1998). The conversion of any continuous
function to a discrete representation introduces the problem of how to reconstruct
a continuous function, needed for the combined purposes of additional modeling