prototype modeling from sketched silhouettes based on ... · prototype modeling from sketched...
TRANSCRIPT
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