Prototype Modeling from Sketched Silhouettes based on ... · Prototype Modeling from Sketched...

Post on 25-Jun-2020

12 views 0 download

Transcript of Prototype Modeling from Sketched Silhouettes based on ... · Prototype Modeling from Sketched...

Prototype Modeling from Prototype Modeling from Sketched Silhouettes based Sketched Silhouettes based

on Convolution Surfaceson Convolution SurfacesPaper Paper by:Chiewby:Chiew--LanLan Tai, et al.Tai, et al.

Graphics Presentation, December Graphics Presentation, December 20052005

Using Using ConvMoConvMo

Target AudienceTarget Audience

Prototype designing/drawingPrototype designing/drawing

Intuitive, freehand (mouse or stylus) Intuitive, freehand (mouse or stylus) drawing and modelingdrawing and modeling

Predecessor: TeddyPredecessor: Teddy

Contributions to free modelingContributions to free modeling

““Method for creating convolution surface Method for creating convolution surface models from silhouette curvesmodels from silhouette curves””

““Enhanced convolution surface model that Enhanced convolution surface model that supports crosssupports cross--section designsection design””

Using Using ConvMoConvMo

1.1. Draw silhouette curve on projection Draw silhouette curve on projection plane (system extracts skeleton)plane (system extracts skeleton)

2.2. System determines parameters and System determines parameters and generates generic round surface modelgenerates generic round surface model

3.3. User modifies circular crossUser modifies circular cross--sectionsection4.4. User may carve or make holesUser may carve or make holes5.5. User may rotate partial shape to a new User may rotate partial shape to a new

plane and repeat steps 1plane and repeat steps 1--4 on a new 4 on a new section.section.

Using Using ConvMoConvMo (cont(cont’’d)d)

Convolution Surface ModelConvolution Surface Model

Extension of pointExtension of point--based field surfacesbased field surfaces

PolynomialPolynomial--weighted Convolution weighted Convolution ModelModel

Enhanced Convolution ModelEnhanced Convolution Model

YY--axis: normal to the reference planeaxis: normal to the reference planeZZ--axis: along the line segment directionaxis: along the line segment directionXX--axis: l x naxis: l x nOrigin: starting point of the line segmentOrigin: starting point of the line segment

Enhanced Convolution ModelEnhanced Convolution Model

User can define the transformation by User can define the transformation by either:either:

Sketch closed profile curveSketch closed profile curveDefine superDefine super--quadraticquadratic

Bezier CurveBezier Curve

SuperSuper--quadratics modelquadratics model

Dinosaur TailDinosaur Tail

Convolution SurfaceConvolution Surface

User sketches an objectUser sketches an object’’s silhouette w/no s silhouette w/no self intersectionsself intersectionsConvert curve to simple polygon from Convert curve to simple polygon from input samplesinput samplesFind simple skeletonFind simple skeletonDetermine field contributions (parameters)Determine field contributions (parameters)

SkeletonSkeleton

Constructing generic convolution Constructing generic convolution surfacessurfaces

Each line segment (l) has endpoints p and q, Each line segment (l) has endpoints p and q, and infer the weights w(0) and w(1)and infer the weights w(0) and w(1)Each line segment needs to convolve a surface Each line segment needs to convolve a surface that locally fits the outlinethat locally fits the outlineAt points where there are multiple lines meeting, At points where there are multiple lines meeting, the weights are divided by the number of line the weights are divided by the number of line segments to prevent multiple contributionssegments to prevent multiple contributionsThe center of the surface needs to be scaled to The center of the surface needs to be scaled to prevent prevent buldgingbuldging..

Global fittingGlobal fitting

ImplementationImplementation

Merging componentsMerging components

Create new component and attach it to the Create new component and attach it to the surface of an existing componentsurface of an existing component

ORORSketch new curve (silhouette) and tell the Sketch new curve (silhouette) and tell the system to merge with an existing surfacesystem to merge with an existing surface

--specify depth of projection plane by specify depth of projection plane by drawing a closed curve on the existing drawing a closed curve on the existing surfacesurface

--rotate object to obtain projection planerotate object to obtain projection plane

Soft carvingSoft carvingCreate a shape (to carve out of the existing shape)Create a shape (to carve out of the existing shape)Then merge to remove the section from the existing Then merge to remove the section from the existing shapeshape(Can also do sharp cuts using Boolean operators)(Can also do sharp cuts using Boolean operators)

Holes in surfacesHoles in surfaces

Merge two separate silhouettes that make Merge two separate silhouettes that make a single object with a holea single object with a holeDraw silhouette for the holeDraw silhouette for the holeDraw a closed curve and specify the Draw a closed curve and specify the radius of the surface around it (so that it radius of the surface around it (so that it doesndoesn’’t fill in) at each skeletal pointt fill in) at each skeletal point

ExamplesExamples

ReferencesReferences

http://www.cs.ust.hk/~taicl/papers/ConvMohttp://www.cs.ust.hk/~taicl/papers/ConvMo--final.pdffinal.pdf