TENSOR PRODUCT VOLUMES AND MULTIVARIATE METHODS CAGD Presentation by Eric Yudin June 27, 2012
Jan 11, 2016
TENSOR PRODUCT VOLUMES AND MULTIVARIATE METHODSCAGD Presentation by Eric Yudin
June 27, 2012
MULTIVARIATE METHODS: OUTLINE
Introduction and Motivation Theory Practical Aspects Application: Free-form Deformation (FFD)
INTRODUCTION AND MOTIVATION
Until now we have discussed curves ( ) and surfaces ( ) in space.
Now we consider higher dimensional – so-called “multivariate” objects in
23
, 3n n
INTRODUCTION AND MOTIVATION
ExamplesScalar or vector-valued physical fields
(temperature, pressure, etc. on a volume or some other higher-dimensional object)
INTRODUCTION AND MOTIVATION
ExamplesSpatial or temporal variation of a surface
(or higher dimensions)
INTRODUCTION AND MOTIVATION
ExamplesFreeform Deformation
MULTIVARIATE METHODS: OUTLINE
Introduction and Motivation Theory Practical Aspects Application: Free-form Deformation (FFD)
THEORY – GENERAL FORM
Definition (21.1): The tensor product B-spline function in three variables is called a trivariate B-spline function and has the form
It has variable ui, degree ki, and knot vector ti in the ith dimension
1 2 31 2 3 1 1 2 2 3 3
1 2 3
1 2 3 , , 1 2 3, , , , , ,( , , ) ( ) ( ) ( )i i i i k i k i k
i i i
T u u u P B u B u B u
THEORY – GENERAL FORM
Definition (21.1) (cont.): Generalization to arbitrary dimension q: Determining the vector of polynomial degree
in each of the q dimensions, n, (?), forming q knot vectors ti, i=1, …, q
Let m=(u1, u2, …, uq)
Let i = (i1, i2, …, iq), where each ij, j=1, …, q q-variate tensor product function:
Of degrees k1, k2, …, kq in each variable
1 2 31 1 2 2 3 3
1 2 3
1 2 3, , , , , , , ,( ) ... ( ) ( ) ( )... ( )q
q qq
qi k i k i k i ki i i i
T PB u B u B u B u
i
q
THEORY – GENERAL FORM
is a multivariate function from to given that
If d > 1, then T is a vector (parametric function)
( )T q ddP i
THEORY – GENERAL FORM
Definition for Bézier trivariates : A Tensor-Product Bézier volume of degree (l,m,n) is defined to be
where
and are the Bernstein polynomials of degree , index .
Bézier trivariates can similarly be generalized to an arbitrary-dimensional multivariate.
, , ,0 0 0
( ) ( ) ( ) ( )l m n
ijk i l j m k mi j k
X u v w
u P
( , , ), , , [0,1]u v w u v w u
THEORY
From here on, unless otherwise specified, we will concern ourselves only with Bézier trivariates and multivariates.
THEORY – OPERATIONS & PROPERTIES
Convex Hull Property: All points defined by the Tensor Product Volume lie inside the convex hull of the set of points .
Parametric Surfaces: Holding one dimension of a Tensor Product Bézier Volume constant creates a Bézier surface patch – specifically, an isoparametric surface patch.
Parametric Lines: Holding two dimensions of a Tensor Product Bézier Volume constant creates a Bézier curve – again, an isoparametric curve.
THEORY – OPERATIONS AND PROPERTIES
Boundary surfaces: The boundary surfaces of a TPB volume are TPB surfaces. Their Bézier nets are the boundary nets of the Bézier grid.
Boundary curves: The boundary curves of a TPB volume are Bézier curve segments. Their Bézier polygons are given by the edge polygons of the Bézier grid.
Vertices: The vertices of a TPB volume coincide with the vertices of its Bézier grid.
THEORY – OPERATIONS AND PROPERTIES
Derivatives: The partial derivatives of order of a Tensor Product Bézier volume of degree ( at the point u = is given by
Where the forward difference operator is:
and
( )p q r
p q rX
u v w
u , , ,
0 0 0
! ! !( ) ( ) ( )
( )! ( )! ( )!
l p m q n rpqr
ijk i l p j m q k n ri j k
l m nu v w
l p m q n r
P
000
00 0 0 0,0, 1 0,0, 1, , 1[ ( )]
ijk ijk
pqr p q r rijk i j k ijk
P P
P P P
1
1 20
:
: ... ( 1)1 2
i i i
kk li i k i k i k i i k l
l
k k k
l
P P P
P P P P P P
THEORY – OPERATIONS AND PROPERTIES
Degree Raising: To raise a Tensor Product Bezier volume of degree to degree , then the new points
This works similarly for the other dimensions as well.
(0,1,... ),
all ,
J
iJk ijkj J
J m J
J mj m j
m i k
m
P P
THEORY – OPERATIONS AND PROPERTIES
Degree Reduction: To lower a Tensor Product Bezier volume of degree to one of degree , we need:
Then the new points are given recursively by:
Each iteration reduces the degree of the dimension of interest by 1. This works similarly for the other dimensions as well.
0 0
( 1 ,...,
0, 0,1,...,
all ,
qijk
q m m
j m q
i k
P
, 1,all ,1
( ),0,1,..., 1
ijk i j kijk
i km j
j mm j
P P P
THEORY – TERMINOLOGY
Isosurfaces: In constrast to isoparametric surfaces, an isosurface, or constant set is generated when the Tensor Product Bezier Volume function is set to a constant:
Data-wise, this might represent all of the locations in space having equal temperature, pressure, etc.
An isosurface is an implicit surface.
THEORY – CONSTRUCTORS
Extruded Volume & Ruled Volume
THEORY – CONSTRUCTORS
Extruded Volume: A surface crossed with a line.
Let and be a parametric spline surface and a unit vector, respectively. Then
represents the volume extruded by the surface as it is moved in direction It is linear in .
THEORY – CONSTRUCTORS
Ruled Volume: A linear interpolation between two surfaces.
Let and be two parametric spline surfaces in the same space (i.e., with the same order and knot sequence). Then the trivariate
constructs a ruled volume between and .
MULTIVARIATE METHODS: OUTLINE
Introduction and Motivation Theory Practical Considerations Application: Free-form Deformation
(FFD)
APPLICATION: FREE-FORM DEFORMATION
Introduction & Motivation: Embed curves, surfaces and volumes in the
parameter domain of a free-form volume Then modify that volume to warp the inner
objects on a ‘global’ scale [DEMO]
APPLICATION: FREE-FORM DEFORMATION
APPLICATION: FREE-FORM DEFORMATION
Process (Bézier construction):1. Obtain/construct control point structure (the
FFD)2. Transform coordinates to FFD domain3. Embed object into the FFD equation
From the paper:Sederberg, Parry: “Free-form Deormation of Solid Geometric Models.” ACM 20 (1986) 151-160.
APPLICATION: FREE-FORM DEFORMATION
Obtain/construct control point structure (the FFD):
A common example is a lattice of points P such that:
Where is the origin of the FFD space S, T, U are the axes of the FFD space l, m, n are the degrees of each Bézier dimension i, j, k are the indices of points in each dimension Edges mapped into Bézier curves
0ijk
i j kP X S T U
l m n
0X
APPLICATION: FREE-FORM DEFORMATION
Transform coordinates to FFD domain:Any world point has coordinates in this system such that:
So X in FFD space is given by the coordinates:0 0 0( ) ( ) ( )
, ,T U X X S U X X S T X X
s t uT U S S U T S T U
APPLICATION: FREE-FORM DEFORMATION
Embed object into the FFD equation:
The deformed position of the coordinates are given by:
0 0 0
(1 ) [ (1 ) [ (1 ) ]]l m n
t i t m j j n k kffd ijk
i j k
l m nX s s t t u u P
i j k
APPLICATION: FREE-FORM DEFORMATION
Embed object into the FFD equation:
If the coordinates of our object are given by:
and
then we simply embed via:
( ( (s f t g u h
( , , )ffdX X s t u
( ( , ( , ( )ffdX X f g h
APPLICATION: FREE-FORM DEFORMATION
Volume Change: If the FFD is given by
and the volume of any differential element is , then its volume after the deformation is
where J is the Jacobian, defined by:
( , , ) ( ( , , ), ( , , ), ( , , ))x y z F x y z G x y z H x y zF
( ( , , ))J x y z dx dy dz F
( )
F F F
x y z
G G GJ
x y z
H H H
x y z
F
APPLICATION: FREE-FORM DEFORMATION
Volume Change Results:
If we can obtain a bound on over the deformation region, then we have a bound on the volume change.
There exists a family of FFDs for which , i.e., the FFD preserves volume.
APPLICATION: FREE-FORM DEFORMATION
Examples Surfaces (solid modeling) Text (one dimension lower): Text Sculpt
[DEMO]
MULTIVARIATE METHODS: OUTLINE
Introduction and Motivation Theory Practical Considerations Application: Free-form Deformation (FFD)
PRACTICAL ASPECTS – EVALUATION
Tensor Product Volumes are composed of Tensor Product Surfaces, which in turn are composed of Bezier curves.
Everything is separable, so each component can be handled independently
PRACTICAL ASPECTS – VISUALIZATION
Marching Cubes Algorithm Split space up into cubes For each cube, figure out which points are
inside the iso-surface 28=256 combinations, which map to 16
unique cases via rotations and symmetries Each case has a configuration of triangles
(for the linear case) to draw within the current cube
PRACTICAL ASPECTS – VISUALIZATION
Marching Cubes Algorithm: 2D case
With ambiguity in cases 5 and 10
PRACTICAL ASPECTS – VISUALIZATION
Marching Cubes Algorithm: 3D case. Generalizable by 15 families via rotations and symmetries.