Generative Modeling
Generative Modeling and Related Methods
Generative modeling is a method of creating and manipulating
three-dimensional geometric models. It has been implemented in a
powerful, robust software package which has been used in a great
variety of applications involving geometric shapes and their
mathematical representations.
Generative Modeling
Like many types of modeling systems, generative models are models
described by mathematical functions and operators arranged in a hierarchy.
What distinguishes it is the set of operators that are available.
Generative modeling is founded on the idea that a wide variety of
mathematical operators, including constraint solution,
differentiation, integration and more traditional modeling operators
of hierarchical transformations and constructive solid geometry, form
a natural language for shape specification. To this end, generative
modeling offers a mathematically closed set of operators made up of
the standard hierarchical operations for rigid objects (push, pop,
rotate, translate, name object, etc.), constructive solid geometry
operations (intersection, union, subtraction), and operators for
creating time-dependent surfaces and other shapes (such as sweep
operators, differentiation, integration, inverse functions, constraint
solution, constrained minimization).
These operators are all made robust using the powerful mathematical
technique of
interval analysis,
and provide a rich architecture and environment in which to base a
modeling system.
Details of this work have been published in
a 1992 SIGGRAPH paper
and
John Snyder's 1992 Book .
Applications of Generative Modeling
The Generative Modeling approach provides a general tool for other
systems to interact mathematically with the modelled shapes.
Through this interface, generative models can be used as the
geometrical specification for a large variety of applications.
Rendering
Any object specified by the generative modeling system can be rendered
in a number of ways. It is possible to generate polygonal
representations of the surface at arbitrary sampling resolution for
use in depth-buffer systems, such as the ones implemented in graphics
hardware on most modern graphics workstations. The high-level
representation, however, can also be rendered with more sophisticated
methods, such as direct raytracing. Because all generative modeling
objects are defined as differentiable manifolds, it is possible to
find exact intersections of rays with the surface, and then to
calculate the normal at the exact intersection point. This
representation can also be used in manufacturing to directly calculate
the trajectory of a cutting tool.
Simulation
The usefulness of this mathematical representation extends to
simulation and analysis in addition to the visual domain. Generative
models have been used in a
structured modeling system
as the basic specification of shape. This system is designed to be
used as a universal mathematical and computational environment for
physical simulations and physcially-based animations. The generative
modeling system is used to provide the mathematical representation of
shape used to calculate physical properties, effects, and conditions.
The shapes described by a generative model can be integrated to get
the moment of intertia tensor, and can be used directly to calculate
collisions in a phsical rigid- or flexible-body simulation. Functions,
such as stress, strain, or temperature, can be defined as a function
of body position, and the generative modeling system can mesh objects
by surface or volume for finite element simulations.
Because of design philosophy of mathematical closure under the
generative modeling operators, it is possible to create parameterized
models in which the designer can have direct control over the specific
degrees of freedom which are applicable. It is also possible to define
objects which vary over time (e.g. objects which have time as a
geometric parameter), to create objects imbedded in other spaces (such
as density functions on volumes or vector fields on surfaces), or to
specify objects as the solutions to specific mathematical equations,
such as differential, integral, or constrained optimization equations.
The Newgen System
These methods have been implemented in a software system known as
Newgen, which is a modeling environment based on the
GENMOD language described in
John Snyder's 1992 Book Generative Modeling for Computer Graphics
and CAD.
Newgen uses and interpreted extension of the C language called cinterp
as its environment for specifying the shape functions, and includes a
curve editor for specifying curves by interactive design. It can also
create models from implicit functions and extract them from volume
datasets, such as
MRI images.
An important element of the design philosophy of newgen is the idea
that the user should be able to see the shape in full detail during
the design stages. Therefore, newgen provides a viewing system which
allows interactive examination in a continuous, real-time polygonal
representation with interactively-controlled sampling resolution and
rendering properties.
Newgen has been used as the geometric, and often the mathematical,
interface for several raytracers and physical simulators, and to
produce the short animated movies
Fruit Tracing (1993)
and
Going Bananas (1987).
Newgen is available for HP9000 series 700 workstations via
FTP .
All images on this page Copyright(C) Caltech Computer Graphics Group
Last modified: 27 Dec 1994
webmaster@gg.caltech.edu