cubit research at the university of south florida
DESCRIPTION
Presented by Eugene Fink. CUBIT Research at the University of South Florida. Graduate students Shiraj Khan Matt Boonstra Undergrad students Kevin Albrecht Plamen Stoyanov Will Frost. Faculty Sunil Saigal Eugene Fink. People. CUBIT team Steve Owen Byron Hanks. Shiraj Khan. - PowerPoint PPT PresentationTRANSCRIPT
CUBIT Research
at the University of South Florida
Presented byEugene Fink
People
CUBIT teamSteve OwenByron Hanks
FacultySunil SaigalEugene Fink
Graduate studentsShiraj KhanMatt Boonstra
Undergrad studentsKevin AlbrechtPlamen StoyanovWill Frost
Tasks
• Spatial indexing
• Surface flattening
• Format conversion
• Code cleanup
Shiraj Khan
Kevin Albrecht
Matt Boonstra
Plamen Stoyanov
Will Frost
Tasks
• Spatial indexing
• Surface flattening
• Format conversion
• Code cleanup
, and areas , angles• Preserve lengths
Surface flattening
Problem:
• Map a faceted sur- face into the plane x
yz
u
v
Surface flattening
Methods:
• Orthogonal projection, FacetProjParamTool
• RoadKill (by Alla Sheffer), FacetParamTool
• RoadKill with hole patching, FacetParamTool
ProjectionFlatten a faceted surface byprojecting it onto a plane.
x
yz
Projection• Find the best-fit plane
• If there are overlaps, then report a failure
Drawback:Works only for near-flat surfaces.
x
yz• Project onto this plane
• Else, convert the projection into two coordinates u
v
RoadKill
An algorithm for flattening faceted surfaces,by Alla Sheffer and Eric de Sturler (2001).
• Minimizes the deformation of angles
• Uses Newton’s method to solve a constrained minimization problem
Drawback:Works only for surfaces without holes.
Patching holesClose all holes andthen apply RoadKill.
x
yz
Patching holes• Project a hole onto the best-fit plane
Drawback:Works only for near-flat holes.
x
yz
• Triangulate the resulting projection• Map the triangulation back onto the surface
Examples• Orthogonal projection
• RoadKill (by Alla Sheffer)• RoadKill with hole patching
Future extensions
• Patching complex holes
• Cracking faceted surfacesx
yz
u
v
Tasks
• Spatial indexing
• Surface flattening
• Format conversion
• Code cleanup
• Deletion of objects
• Addition of new objects
Spatial indexingProblem:Indexing and retrieval ofobjects in three dimensions.
• Retrieval of the nearest neighbors
• Retrieval of the objects that intersect a given object
Spatial indexing
Methods:
• Previous: R-trees (Guttman, 1984), RTree• Current: KD-trees (Bentley, 1975), KDDTree
• Future: R*-trees (Beckmann et al.,1990), RStarTree
KD-treesA binary tree for indexing ofpoints in multiple dimensions.
a
b
c
d
e f
ab
c
d
e
fThis tree also allows:
• Indexing of boxes by their center points
• Indexing of arbitrary objects by their bounding boxes
KD-treesAdvantages:• Fast initial construction• Fast retrieval of points
Drawbacks:• Slow insertion• Slow deletion
Performance in CUBIT:KD-trees are usuallyfaster than R-trees.
Performance
number of facets
seco
nds
KD-trees1,000
30
10
110,000 100,000
Initial construction
3
KD-trees are faster than R-trees:• Construction is about 3 times faster• Retrieval is about 1.5 times faster
R-trees
Retrieval of points
KD-trees
R-trees
mill
isec
onds
1,000
30
10
110,000 100,000
3
number of facets
Future extensions
• Improving efficiency of KD-trees
• Implementing R*-trees
Tasks
• Spatial indexing
• Surface flattening
• Format conversion
• Code cleanup
Format conversion
• Converting between STL and facet format
• Loading and saving these formats
• Collapsing close pointsFacet
format
BinarySTL
ASCIISTL
Close pointsProblem:Identify and collapse all pairs of closely located points.
Methods:
• R-tree indexing, RTree
• Grid indexing, GridSearchTree
d
Grid indexing
Indexing of points by their locationsin a grid of equal-size cubes.
Grid indexing
• Divide the space into cubes ;the edge length is twice largerthan the collapsing distance
2 · d• Index points by cube locations; each cube is a bucket of points
• Given a point, retrieve the points in the same cube and seven adjacent cubes
d
Performance
number of facets
seco
nds
10 100 1,000 10,0000.01
0.1
110
1,000100
Exactcomparisons
Grid loading is ten to hundredtimes faster than R-tree loading.
Gridindexing
R-treeindexing
Future extensions
• Grid with templates for general use in CUBIT
• Basic repair of surfaces
x
yz
x
yz
Tasks
• Spatial indexing
• Surface flattening
• Format conversion
• Code cleanup
Code cleanup• User commands for saving faceted surfaces in STL and facet format• Newton-Raphson procedure in the advancing-front meshing• Arguments and returned values in the procedures for cutting spatial objects
• Testing the beta version of CUBIT 8
Future tasks
• Topology extraction
x
yz
• Decimation of facetsz
x
y
• Repair of surfacesx
yz
• Smooth representationx
yz
Future tasks
• Topology extraction
• Decimation of facets
• Repair of surfaces
• Smooth representation
Plamen Stoyanov
Kevin Albrecht
New student
New student
Matt Boonstra