feature based modeling and design alyn rockwood kun gao kaust

60
Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Upload: noreen-white

Post on 18-Jan-2016

229 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Feature Based Modeling and Design

Alyn Rockwood Kun GaoKAUST

Page 2: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Greetings from Saudi Arabia

Page 3: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Greetings from Journal of Graphics Tools

Announcing a special issue of

Geometric Algebra and Graphics Applications!

Page 4: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Modeling with rectangular patches:Problems

“… current digital tools are unable to decouple the creative process from the underlying mathematical attributes of the surface.” -K. Singh

Laying out patches

Non-intuitive design curves:NOT what an artist would chooseto represent face.Awkward patch layout

Page 5: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

What is a “Feature?”

• Die Mathematiker sind eine Art Franzosen; redet man mit ihnen, so übersetzen sie es in ihre Sprache, und dann ist es also bald ganz etwas anderes.– Mathematicians are like Frenchmen; if you talk

to them, they translate it into their own language, and then it is immediately completely different.

– Johann Wolfgang von Goethe

Page 6: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

What is a “Feature?”

Boundaries, G1 discontinuities, creases, high curvature regions, ridges, peaks…

Page 7: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Modeling with features

A model that more closely reflects the artist’s conception

Page 8: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Desiderata•Multisided patches. Feature curves are not always rectangular.

•Freeform topology. Does not constrain design by forcing on how to layout patch networks, rather than features.

•Floating curves and points. Interior attributes allow fine-tuning and richness with minimal input.

•General curve Input. trig functions and fractals, isolated points, derivative information such as slopes and curvature enhance modeling effects.

•G2 continuity. Connecting patches smoothly

•Functionality. Compact database, rapidly computed, analytic

surfaces and supports rendering.

Page 9: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Desiderata

Page 10: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

A New Approach - foundations

Discrete least squares minimizes

(x - xi)2 + (y - yi)2 + (z - zi)2

Weighted least squares minimizes

wi(x,y,z) [(x - xi)2 + (y - yi)2 + (z - zi)2]

Where, for example

wi(x,y,z) = 1 / [(x - xi)2 + (y - yi)2 + (z - zi)2+ i ]

Page 11: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

A New Approach

In parameter space,

find ui, the closest point on the ith footprint to given point u

u

u1

u2u3

Page 12: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

A New Approach

In parameter space,

find di, the “distance” to closest point on the ith footprint

ud3

d2

d1

Page 13: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

A New Approach

Footprints are pre-images of features in object space via feature maps fi . on the ith footprint. Define xi so that fi (ui) = xi

u1

u2u3

x1

x2

x3

f3f2

f1

Page 14: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

A New Approach

In object space, find weighted least squares solution of the xi

where the weights wi(x,y,z) = 1 / di

x1

x2

x3

x

Page 15: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

A New Approach

F(u) = x

• F(u) = x

u

Page 16: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

A New Approach

To summarize:From u find point on ith footprintand compute point on attributeto use it in least squares

where weight is determined as reciprocal distance.

Do it for all footprints

Page 17: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Example

Move uSee x move

F

u

x

u2

u1

u3

x3

x1

Page 18: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Example

When u is close to the footprint then thecorresponding feature dominates because its distance is small.The interpolation property

F

u

xx1

x3

u3

u2

u1

Page 19: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Solving the least squares

Let fi: (u,v) (x,y,z), be the attribute functions

Let wi: (u,v) wi R be the weight functions.

For F = (xi(u,v) , yi(u,v) , zi(u,v) ) minimize:

E = i ||fi(u,v) - F|| 2 wi(u,v)Hence without loss

E/x = i [-2(xi(u,v) - x ) wi(u,v) + (xi(u,v) - x )2 wi(u,v) /x]

= i [-2(xi(u,v) - x ) wi(u,v)] .

Minimizing by setting it to 0

  i xi(u,v) wi(u,v) = x i wi(u,v).  implies

  x = i xi(u,v) wi(u,v) / i wi(u,v). 

Putting it together:

 

Page 20: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Mildly surprising discovery

F(u) = wi(u)fi(u) / wi(u)

generalizes Shepard’s formula

Weights and interpolants are defined in a separate parameter space with general distances

Page 21: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Convex combination

The weights

wi(u) / wj(u)

sum to 1 (partition of unity).

• F(u) is affinely invariant.

• The surface lies within the convex hull of the fi(u)

• The surface reproduces the plane/line.

Page 22: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Minimal energy “soap film” effect

Three lines and a sine curve;

no connection needed

Page 23: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Higher order continuity

LetF(u) = Ŵi(u)2Li(u)

where Ŵi(u) = wi(u)/jwj(u) and the loft

Li(u) = (1-si) fi(ti) + si gi(ti).

(si and ti are distance and footprintparameter functions of u) F(u) is cotangent to the linear loft Li(u)

alongthe attribute curve fi(ti).

Tangency is determined by gi(ti).

Page 24: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Interpolation to derivatives

Five sided, horizontal slope,

varying loft fi(ti) gi(ti)

Page 25: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Interpolation to derivatives

Five sided and slopes, linear lofts

Page 26: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Interpolation to derivatives

Five sided and slopes, linear lofts

Page 27: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

G1 continuity

Theorem 1. If F(u) = i [ Ri(si, ti)] (Wi(u)/ i Wi(u))2 are defined with

separate footprints, where Ri(si, ti) = (1- si) fi(ti) + si gi(ti), then,

 F(u0, v0)/u = Ri(0, t0)/u and F(u0, v0)/v = Ri(0, t0)/v  

for point (u0, v0) on the footprint at parameter t0.

Parameter si=si(u,v) is the distance to the ith footprint

Parameter ti=ti(u,v) is then parametric value of the nearest point on the i th footprint

Theorem guarantees that if two patches share a common curve

fi(t) and have two lofts that share tangent planes at the common curve, then the surface patches also share common tangent planes;

they are G1 at fi(t).

Page 28: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

G1 continuity

Contouring of three and four-sided patch configuration.Matched loftsacross curves andat vertices.

Page 29: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Higher order continuity

LetF(u) = Ŵi(u)3Qi(u)

where Ŵi(u) = wi(u)/jwj(u) and

Qi(u) = (1-si)2 fi(ti) + 2 (1-si) si gi(ti) + si 2

hi(ti) .

F(u) is cotangent to the parabolic loft Q i(u)

along the attribute curve fi(ti).

Curvature is determined by gi(ti) and hi(ti) .

Page 30: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

G2 continuity

Let Qi(s,t) = (1-s)2 fi(t) + 2(1-s)s gi (t) + s2 hi(t) be a parabolic loft.

Consider two such lofts for each ith footprint, namely QLi(s,t) and

QRi(s,t),

Theorem 2. Given surfaces L(u) = i QLi(s,t) [Wi(u)/ i Wi(u) ]3, and

R(u) = i QRi(s,t) [Wi(u)/ i Wi(u) ]3 in which QLi(s,t) and QRi(s,t)

meet with G2 continuity on the boundary curves of L(u) and R(u), then L(u) and R(u) are G2 continuous.

Theorem 3. Given surfaces as in Theorem 2 where QLi(s,t) and QRi(s,t)

meet with twist continuity on the boundaries of L(u) and R(u), then

L(u) and R(u) are twist continuous.

Page 31: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

G2 Continuity

• Set of 2, 3, 4 and 5-sided patches

• Isophote showing curvature continuity

Page 32: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

G2 Continuity

Highly reflective, aesthetic surfaces

Page 33: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Editability

Multi-sided patches:Car with 2-, 3- 4- and 5-sided patches

A-pillar a single 7-sided patch

Page 34: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Editability

Minimal curve input for high expressive content

Page 35: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Editability

Editting cuves across interior, arbitrary parameter position.

Page 36: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Editability

Editting cuves across interior, arbitrary parameter position.

Page 37: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Editability– auto footprint

Footprint space inferred from the shape of the patch.

Automobile A-pillar:7-sided and lengths…and flattening!

Page 38: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Editability– demo

Page 39: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Floating edges

Unattached footprint maps to unattached attribute curve;surface interpolates floating curve

Page 40: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Floating edges – topology?

• A topologist is one who doesn't know the difference between a doughnut and a coffee cup.– John Kelley

Page 41: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Floating edges

Footprints are orthogonal projections of (red) attributecurves. Appalachian mountain trimmed to square (arbitrary, no polygon!)

Page 42: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Template parameter spaces

Cylindrical footprint space. Circular footprints.Distance is is vertical height from point to circle.

u

distance

Page 43: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Template parameter spaces

Similar shapes. Cylindrical footprint space reapplied to daffodil- twice.

u

distance

Page 44: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Interpolation to fractals

Properly defined lofts yields slope of ridge

brown = fi(ti), red = gi(ti).

Page 45: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Two-sided attributes, single patch

Floating edge with two lofts.

Switch loft on footprint – C0 continuity

glefti(ti)

grighti(ti)

Page 46: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Two-sided attributes, single patch

Several floating edges (7) with paired lofts.

Switch lofts on footprint – C0 continuity

Page 47: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Two-sided attributes, curves

7 Bezier curves with fractal noise is total data base

Page 48: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Floating edge with two attribute functions.

Switch functions again – C-1 continuity!

flefti(ti)

frighti(ti)

Two-sided attributes, single patch

Page 49: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Two-sided attributes, single patch

Several floating edges (3) with paired lofts.

Antelope Island. Cliff

Page 50: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Closure of Parametric Curves

Attributes include any parametric curve, whichallows adding trigonometric noise, for example:

finew(t) = fi

old(t) + [0, 0.3*sin(5*pi*t), 0.2*sin(4*pi*t)],

Page 51: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Closure of Parametric Curves –Trim curves

Trimming from footprint (parameter) space to object space is traditional (5-sided, noise)

Page 52: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Closure of Parametric Curves –Watertight merging of two surfaces

Using trim curve as an attribute for 3-sided

Page 53: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Closure of Parametric Curves –Watertight merging of two surface

Moving 3-sided and trim curve

Page 54: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Closure of Parametric Curves –Watertight merging of two surface

Emblem on shieldand floating curve

Page 55: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Operations – degree of surface

G1 surface with cubic attributes:

F(u) = Ŵi(u)2Li(u):

For ith term:Cubic in t (parameter of attribute)Loft is linear in s (distance parameter)Weight is order (N-1)2 over (N-1)2 in s, where N is number of sides.

For examples, if N=2, 3, 4, and 5then degree in s is 2/1, 5/4, 10/9 and 16/15

(s and t are affine maps of u and v.)

Page 56: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Operations - order of computation

Limit singularity, wi(u) is large number:

F(u) = i fi(u) wi(u) / i wi(u).

Computation is linear with number of attributes

Remove singularity:

F(u) = i ji / wj (u)] fi(ui) / i ji / wj (u)].

Recall wj (u) is reciprocal distance

Computation is quadratic with number of attributes

Page 57: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Economy of data/input

Object Patches Curves Lofts NoisesAuto body 28 25 25 0Cartoon bird 7 21 21 0Morning glory 2 3 2 2Appalachia 1 6 0 0Pikes Peak 1 7 14 1Daffodil 4 5 4 2A-pillar 1 7 7 0

Page 58: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Economy of data/input – Palo Duro Canyon captured with 128 edges

Page 59: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Thank you!

It is impossible to be a mathematician without being a poet in soul.

Sofia Kovalevskaya

Poetry is as exact a science as geometry –Flaubert

Geometry is as sublime an art as poetry - AR

See also www.fredesign3d.com

Page 60: Feature Based Modeling and Design Alyn Rockwood Kun Gao KAUST

Leif’s question

Var. Mesh AB surfacePiecewise linear Algebraically exactNumerical issues AnalyticMesh database(104-6) Small database(102-3)Vertex/feature editing Attribute editingPDE solutions (flow) None -yetLinear time in vertices Linear in attributesLOD re-initialize LOD add attributesResolution re-initialize resampleNone Footprint issues