scientific visualization - kth
Post on 29-Oct-2021
8 Views
Preview:
TRANSCRIPT
SCIENTIFICVISUALIZATION
Lecture 9Lecture 9part 1part 1
Scientific Visualization GroupVisual Information Technology and ApplicationsLinköping University
CONTENTS
• More Scalar Algorithms• Vector Algorithms• Modelling Algorithms
– Decimation– Triangulation– Mesh smoothing
• Unstructured points
DIVIDING CUBES
• Similar to Marching Cubes• Rendering points faster than
rendering polygons• Generate points at display
resolution• Zooming creates holes!• Can be deployed iteratively
DIVIDING CUBES
DIVIDING CUBES iterations
DIVIDING CUBES
• Nice example with Iron Protein EX: 9:1
CUTTING• Cutting surface defined by
an implicit function– For each cell point evaluate
F(x,y,z)– Find contour of F(x,y,z)=0– Interpolate attribute data
along cut edges– Does it sound familiar? (MC
algorithm with F(x,y,z))
• Implemented in VTK usingvtkCutter
CLIPPING• Clipping defined by an
implicit function– For each cell point evaluate
F(x,y,z)– Find contour of F(x,y,z)=0– Interpolate attribute data
along cut edges– Insert new points along
edges
• Implemented in VTK usingvtkClipPolyData
• Streamribbons: Start two streamlines closeand draw a surface connecting them (createsa ribbon)
• Streamsurfaces: Start a number ofstreamlines on a curve, then draw as asurface
• Streampolygons:transport polygonaccording to vectorfield derivatives
VECTOR FIELDS
STREAM POLYGON• Map strain, shear and
rotation to n-sidedpolygon
• Align polygon normalwith the local vector
• Connect edges ofpolygons to form“tubes”
• Radius of tube could beproportional to vectormagnitude Example 9:2
CRITICAL POINTS• Critical points are
found in cells where allvector componentspass through 0
• Iterative proceduresused to find criticalpoints
• Use the eigenvalues ofthe Jacobian
CRITICAL POPINTS IN 2D
MODELLING ALGORITHMS
• Visualizing geometry• Data extraction• Probing• Triangle strip generation• Connectivity• Polygon normal
generation• Mesh decimation and
compression
•Mesh smoothing•Swept volumes andsurfaces•Visualizing unstructuredpoints•Multidimensionalvisualization•Texture algorithms
The Zoo
DATA EXTRACTION
• Geometry extraction– Range of cell Ids– Spatial extraction– Subsampling
• Select every nth datapoint
– Masking• Select every nth cell
•Thresh holding–selection based onvalue of attribute date–Use clipping if cells areon the boundary
PROBING• Sample one data set
with another data set• Constitutes a
generalization of cuttingusing general data sets– Can be user as means for
data extraction byprobing of a subregion
– Probing along specialdata sets can give subsetslike plans for contours ...
TRIANGLE STRIP GENERATION• To achieve better
performance• Gather polygons into
triangle strips• Start with unmarked
triangle• “Grow” a strip in
direction of first foundunmarked neighbor
• Memory savings canbe large
CONNECTIVITY
• Important to find structures that aretopologically connected
• Contours, isosurfaces, etc.• Use neighbor operator to find cells that share
boundary features• Recursively visit all cells and give them a
connectivity ID• Can be used to reduce “noise” in datasets
NORMAL GENERATION• Point normals not always
supported in file formats• compute polygon
normals around a point• average normals to point
– Need to check forconsistency in ordering ofpoints in polygon
– Traverse all neighboursand mark as consistent tofind surface
•Check for largedifferences in normals–Define “feature angle”–If angle larger duplicatepoints, i.e. split surface andintroduce an edge
•Example 9:3
DECIMATION• Point classification
– simple• surrounded by complete cycle of
triangles, each edge used byexactly two triangles
– complex• if point used by triangle not in
cycle or each edge not used byexactly two triangles
– boundary• Point on the boundary of the
mesh– interior edge
• when angle between triangles incycle exceeds the feature angle
– corner• more than one feature edge
•Decimation Criterion–Complex and corner points are notdeleted–Approximate area around point with plane(least square or area average)–Delete point if distance to plane is smallerthan specified parameter d
•Triangulation–use 3D divide and conquer technique tofill hole–split the the loop into two halves–checks aspect ratio of resulting triangle–continue to split until each loop has threeedges
Example 9:4
UNSTRUCTURED POINTS• Splatting
– sample points withstructured points data set
– Use Gaussian function to“splat” the point on thegrid
– Use standard techniquesfor structured points tovisualize
•Interpolation–Build an interpolationfunction that represents eachof the points in the data set–Sample the new functionover the a structured pointsdata set–use standard techniques forstructured points to visualize
DELAUNAY TRIANGULATION
• Build a triangular mesh (2D) or tetrahedralmesh (3D) from unstructured points
Bounding triangle Create new triangulationInsert point
top related