Top Banner
1 CS 430/536 Computer Graphics I 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel University http://gicl.cs.drexel.edu
46

3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Sep 26, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

1

CS 430/536Computer Graphics I

3D Modeling:Subdivision Surfaces &

Solid Modeling Week 8, Lecture 15

David Breen, William Regli and Maxim PeysakhovGeometric and Intelligent Computing Laboratory

Department of Computer ScienceDrexel University

http://gicl.cs.drexel.edu

Page 2: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

2

Overview

• Subdivision surfaces– Modify topology– Interpolate vertices

• Solid Modeling– Boolean operations– Constructive Solid Geometry

Page 3: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationO

Foundations I:

The Basic Ideas

aÉåáë=wçêáå

kvr

mÉíÉê=pÅÜê∏ÇÉê

`~äíÉÅÜ

Page 4: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationP

pìêÑ~ÅÉ=êÉéêÉëÉåí~íáçåë■ ä~êÖÉ=Åä~ëë=çÑ=ëìêÑ~ÅÉë

■ áåíÉê~ÅíáîÉ=ã~åáéìä~íáçå

■ åìãÉêáÅ~ä=ãçÇÉäáåÖ

Modeling Geometry

Page 5: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationQ

Parameterized Surfaces

tÜ~í=~Äçìí=kro_p\■ ëéäáåÉ é~íÅÜÉë=~êÉ=ÖêÉ~íI=ÄìíÁ

■ ÇáÑÑáÅìäí=íç=ëíáíÅÜ=íÜÉã=íçÖÉíÜÉê

■ íêáããáåÖÁ=EïÜ~í=~=åáÖÜíã~êÉF

■ Å~å=ÄÉ=ëäçï=~åÇ=ÅìãÄÉêëçãÉ

■ ïÉ=åÉÉÇ=ëÅ~ä~ÄäÉ=~äÖçêáíÜãë=Ñçê=íÜÉ=ïÜçäÉ=ê~åÖÉ=Ñêçã=é~íÅÜÉë=íç=ÑáåÉ=ãÉëÜÉë

Page 6: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationR

Complex Shapes

bñ~ãéäÉW=_ìáäÇáåÖ=~=Ü~åÇ■ tççÇóÛë=Ü~åÇ=Ñêçã=máñ~êÛë qçó=píçêó

■ îÉêóI=îÉêó=ÇáÑÑáÅìäí=íç=~îçáÇ=ëÉ~ãë

Page 7: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationS

No More Seams

pìÄÇáîáëáçå=ëçäîÉë=íÜÉ=-ëíáíÅÜáåÖÒ=éêçÄäÉã■ ~=ëáåÖäÉ ëãççíÜ=ëìêÑ~ÅÉ=áë=ÇÉÑáåÉÇ

■ Éñ~ãéäÉW

■ dÉêáÛë=Ü~åÇ================================================EdÉêáÛë=d~ãÉX============================================máñ~êF

Page 8: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationT

Control Polyhedron

eçï=~êÉ=é~íÅÜ=Ä~ëÉÇ=ëìêÑ~ÅÉë=ÅçåíêçääÉÇ\■ Åçåíêçä=éçáåíë=E`sëF

■ éáÉÅÉïáëÉ=éçäóåçãá~ä

■ ïêáíÉ=çìí=ÅçÉÑÑáÅáÉåíë

■ éêçÅÉÇìê~ä=íÜêçìÖÜ=ëìÄÇáîáëáçå>

lo

Page 9: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationU

20+ Years of Subdivision

qÜÉ=ÄÉÖáååáåÖ■ ÅêÉ~íÉ=ëãççíÜ=ëìêÑ~ÅÉë=çìí=çÑ=~êÄáíê~êó=ãÉëÜÉë

Page 10: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationNM

What is Subdivision?

aÉÑáåÉ=~=ëãççíÜ=ëìêÑ~ÅÉ=~ë=íÜÉ=äáãáí=çÑ=~=ëÉèìÉåÅÉ=çÑ=ëìÅÅÉëëáîÉ=êÉÑáåÉãÉåíë

Page 11: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationNN

Why Subdivision?

j~åó=~ííê~ÅíáîÉ=ÑÉ~íìêÉë■ ~êÄáíê~êó=íçéçäçÖó

■ ëÅ~ä~ÄáäáíóI=ila

■ ãìäíáêÉëçäìíáçå

■ ëáãéäÉ=ÅçÇÉ

■ ÉÑÑáÅáÉåí=ÅçÇÉ

Page 12: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Level of Detail Rendering •  Use fewer triangles for models that are further

away, and therefore appear smaller

3

Page 13: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Level of Detail Rendering •  Use fewer triangles for models that are further

away, and therefore appear smaller

4

Page 14: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Multiresolution Modeling •  Edits made to lower resolution model

are propagated to high resolution model

3 Zorin, Schröder & Sweldens

Page 15: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationNO

Subdivision in 1D

qÜÉ=ëáãéäÉëí=Éñ~ãéäÉ■ éáÉÅÉïáëÉ=äáåÉ~ê=ëìÄÇáîáëáçå

( )rln xx21x += ( )rln yy21y +=

Page 16: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationNQ

Subdivision in 1D

^=ãçêÉ=áåíÉêÉëíáåÖ=Éñ~ãéäÉ■ íÜÉ=Qéí=ëÅÜÉãÉ

( )j2i

j1i

ji

j1i

1jii2 pp9p9p161p ++−

++ −++−=

Page 17: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationPV

Subdivision

^ééäó=ëìÄÇáîáëáçå=íç=Åçåíêçä=éçáåíë■ Çê~ï=ëìÅÅÉëëáîÉ=Åçåíêçä=éçäóÖçåë=ê~íÜÉê=íÜ~å=ÅìêîÉ=áíëÉäÑ

j1j Spp =+

( )tP j

( )tP 1j+

( )tP 2j+

Page 18: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationNS

Subdivision in 2D

nì~Çêáä~íÉê~ä■ áåíÉêéçä~íáåÖW=hçÄÄÉäí ëÅÜÉãÉ

Page 19: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationNT

Subdivision in 2D

qêá~åÖìä~ê■ ~ééêçñáã~íáåÖW=iççé=ëÅÜÉãÉ

Page 20: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationNU

The Basic Setup

qçéçäçÖáÅ~ä=êìäÉ■ ãçÇáÑó=ÅçååÉÅíáîáíó

Page 21: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationNV

The Basic Setup

dÉçãÉíêáÅ=êìäÉ■ ÅçãéìíÉ=ÖÉçãÉíêáÅ=éçëáíáçåë

■ äçÅ~ä=äáåÉ~ê=ÅçãÄáå~íáçå=çÑ=éçáåíë

ÉîÉå=~í=äÉîÉä=á çÇÇ=~í=äÉîÉä=á

Page 22: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationOM

Some Conditions I

pìÄÇáîáëáçå=êìäÉë=ëÜçìäÇ■ ÄÉ=Ñäç~íáåÖ=éçáåí=ÉÑÑáÅáÉåí

■ Ü~îÉ=Åçãé~Åí=ëìééçêí

■ áåÑäìÉåÅÉ=çÑ=Åçåíêçä=éçáåí=áë=ÑáåáíÉ

Page 23: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationON

Some Conditions II

pìÄÇáîáëáçå=êìäÉë=ëÜçìäÇ■ Ü~îÉ=äçÅ~ä=ÇÉÑáåáíáçå

■ ëíÉåÅáä=ïÉáÖÜíë=çåäó=ÇÉéÉåÇ=çå=íÜÉ=ëíêìÅíìêÉ=çÑ=~=ëã~ää=åÉáÖÜÄçêÜççÇ

Page 24: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationOO

Some Conditions III

pìÄÇáîáëáçå=êìäÉë=ëÜçìäÇ■ ÄÉ=~ÑÑáåÉäó áåî~êá~åí

Page 25: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationOP

Some Conditions IV

pìÄÇáîáëáçå=êìäÉë=ëÜçìäÇ■ ÄÉ=ëáãéäÉ

■ çåäó=~=ëã~ää=ëÉí=çÑ=ÇáÑÑÉêÉåí=ëíÉåÅáäë

■ éêÉÑÉê~Ääó=éêÉÅçãéìíÉÇ çÑÑäáåÉ

■ ~ÅÜáÉîÉ=ëçãÉ=çêÇÉê=çÑ=ëãççíÜåÉëë

■ `N É~ëóI=`OãìÅÜ=Ü~êÇÉê

■ éÉêÜ~éë=ïÉ=êÉ~ääó=ï~åí=Ñ~áêåÉëëKKK

Page 26: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationOQ

Some Questions

fë=pìÄÇáîáëáçå=ãçÇÉäáåÖ=áåÜÉêÉåíäó=éçäóÖçå~ä\■ klK=qÜÉ=ëìêÑ~ÅÉ=Åçåëáëíë=çÑ=é~íÅÜÉëI=ïÉ=àìëí=ÄìáäÇ=íÜÉã=éêçÅÉÇìê~ääó

■ ~ää=êÉåÇÉêáåÖ=áë=éçäóÖçå~äÁ

■ ^kaW=åç=ãçêÉ=ïçêêáÉë=~Äçìí=Åçåíáåìáíó=ÅçåÇáíáçåë>

Page 27: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

Subdivision for Modeling and AnimationOR

Some Questions

pìÄÇáîáëáçå=é~íÅÜÉë■ Çç=íÜÉó=Ü~îÉ=~=é~ê~ãÉíÉêáò~íáçå\

■ ~êÉ=íÜÉó=É~ëó=íç=Éî~äì~íÉ\

■ ~êÉ=íÜÉó=É~ëó=íç=áãéäÉãÉåí\

■ ~êÉ=íÜÉó=ÉÑÑáÅáÉåí\

^ää=çÑ=íÜÉ=~ÄçîÉ=~åÇ=äçíë=ãçêÉ>■ ãìäíáêÉëçäìíáçåI=ÅçãéêÉëëáçåI=ÉíÅK

Page 28: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

3

Subdivision Surfaces• Coarse Mesh & Subdivision Rule

– Define smooth surface as limit of sequence ofalgorithmic refinements

• Modify topology & interpolate neighboring vertices

Page 29: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

4

Solids and Solid Modeling

• Solid modeling introduces amathematical theory of solid shape– Domain of objects– Set of operations on the domain of objects– Representation that is

• Unambiguous• Accurate• Unique• Compact• Efficient

Page 30: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

5

Solid Objects and Operations

• Solids are point sets– Boundary and interior

• Point sets can be operated on withboolean algebra (union, intersect, etc)

Foley/VanDam, 1990/1994

Page 31: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

6

Solid Object Definitions

• Boundary points– Points where distance to the object and the

object’s complement is zero• Interior points

– All the other points in the object• Closure

– Union of interior points and boundarypoints

Page 32: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

7

Issues with 3D Set Operations

• Ops on 3D objects can create “non-3D objects”or objects with non-uniform dimensions

• Objects need to be “Regularized”– Take the closure of the interior

Foley/VanDam, 1990/1994

Input set Closure Interior Regularized

Page 33: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

8

Regularized BooleanOperations

• 3D Example– Two solids A and B– Intersection leaves a

“dangling wall”• A 2D portion hanging

off a 3D object

– Closure of interiorgives a uniform 3Dresult

Pics/Math courtesy of Dave Mount @ UMD-CP

Page 34: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

9

Boolean Operations

• Other Examples:• (c) ordinary

intersection• (d) regularized

intersection– AB - objects on the

same side– CD - objects on

different sides

Foley/VanDam, 1990/1994

Page 35: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

10

Boolean Operations

Foley/VanDam, 1990/1994

Page 36: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

11

Constructive Solid Geometry(CSG)

• A tree structurecombining primitivesvia regularizedboolean operations

• Primitives can besolids or half spaces

Page 37: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

12

A Sequence of BooleanOperations

• Boolean operations• Rigid transformations

Pics/Math courtesy of Dave Mount @ UMD-CP

Page 38: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

13

The Induced CSG Tree

Pics/Math courtesy of Dave Mount @ UMD-CP

Page 39: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

17

The Induced CSG Tree

•  Can also be represented as a directed acyclic graph (DAG)

Pics/Math courtesy of Dave Mount @ UMD-CP

Page 40: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

15

Issues withConstructive Solid Geometry

• Non-uniqueness• Choice of primitives• How to handle more complex modeling?

– Sculpted surfaces? Deformable objects?

Page 41: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

16

Issues withConstructive Solid Geometry

• Non-Uniqueness– There is more than

one way to modelthe same artifact

– Hard to tell if A and Bare identical

Page 42: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

17

Issues with CSG

• Minor changesin primitiveobjects greatlyaffect outcomes

• Shift up top solidface

Foley/VanDam, 1990/1994

Page 43: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

18

Uses of CSGConstructive Solid Geometry

• Found (basically) inevery CAD system

• Elegant,conceptually andalgorithmicallyappealing

• Good for– Rendering, ray

tracing, simulation– BRL CAD

Page 44: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

19

CAD: Feature-Based Design

• CSG is the basicmachinery behind CADfeatures

• Features are– Local modifications to

object geom/topo withengineering significance

– Often are additive orsubtractive mods to shape

• Hole, pocket, etc…

Page 45: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

20

Parametric Modeling in CAD

Foley/VanDam, 1990/1994

• Feature relationships• Constraints

Page 46: 3D Modeling: Subdivision Surfaces & Solid Modelingdavid/Classes/CS430/Lectures/L... · 3D Modeling: Subdivision Surfaces & Solid Modeling Week 8, Lecture 15 ... Subdivision for Modeling

44

Programming Assignment 5

• Extend XPM to 60 different RGB colors• Read 3 models and assign each a color• Implement Z-buffer rendering• Implement front & back cutting planes

– Only render parts of models between planes• Implement linear depth-cueing

– Color = base_color∗(z-far)/(near-far)• Re-use and extend 2D polygon filling