Graphics Reference
In-Depth Information
Sometimes one has a choice, but even though the spaces we might get can be
described by a function that parameterizes the space or defines it implicitly, there are
reasons for why it might be useful to generate a space algorithmically:
(1) Not all spaces can be computed and sometimes, like in the case of fractals,
one can only describe them by a limiting process.
(2) The geometry of a space sometimes changes over time or due to external influ-
ences and the best way to describe this may be algorithmically.
(3) Some complex geometric structures are too complicated to describe by
functions.
(4) Algorithmic descriptions may give rise to added flexibility and power.
In [GHSV93] algorithmic models are divided into four main classes.
Geometry-based models:
Generative modeling is an example. Its models are
parameterized by properties and transformations
Functional-based models:
These models are defined by functions and modified by
other functions. Texture functions are an example how
functions can modify geometry.
Grammar-based models:
Here the structure is defined by a language and a
grammar for that language. The grammars can be
divided into geometric (fractals and their initiator/
generator paradigm) and topological (graftals)
grammars.
Physics-based models:
The models are controlled by the laws of physics. See
Section 5.5. Also included here are particle systems,
deformable models (elastic/inelastic), and constraint
systems.
For more details see [GHSV93].
Looked at abstractly, what the theory of algorithmic modeling adds to “standard”
geometric modeling is a symbol generation mechanism that can be either determin-
istic or probabilistic. To formalize this we must generalize the notion of a Turing
machine to one that can deal with continuous functions.
Although the theory of computation is a well-developed subject, the classical
theory of Turing machines deals with discrete computations. Here, an analysis of the
complexity of a computation takes into account the size of numbers in terms of
the number of bits in their binary representation. On the other hand, when we deal
with continuous geometry, as we do in geometric modeling, it would be nice to
make our baseline the reals and to consider the cost of basic arithmetic operations,
such as multiplication, independent of their “size.” To put it another way, since
geometric shapes are usually defined by parameterizations or implicitly, we would like
to have a concept of computability based on reals and appropriate “computable” con-
tinuous functions. We would then like to ask the same types of questions as in the
discrete Turing machine case. For example, which topological spaces are “com-
putable” in this setting? In recent years, such a continuous theory of computation has
Search WWH ::




Custom Search