180 likes | 196 Views
Visualization Data Representation. Ray Gasser rayg@bu.edu. Characteristics of Data. Data is discrete Interpolation functions generate data values in between known points Structure may be regular or irregular Regular (structured)
E N D
Visualization Data Representation Ray Gasser rayg@bu.edu SCV Visualization Workshop – Fall 2008
Characteristics of Data • Data is discrete • Interpolation functions generate data values in between known points • Structure may be regular or irregular • Regular (structured) • need to store only beginning position, spacing, number of points • smaller memory footprint per cell (topology can be generated on the fly) • examples: image data, rectilinear grid, structured grid • Irregular (unstructured) • information can be represented more densely where it changes quickly • higher memory footprint (topology must be explicitly written) but more freedom • examples: polygonal data, unstructured grid SCV Visualization Workshop – Fall 2008
Characteristics of Data • Data has a topological dimension • determines methods for visualization • determines data representation • examples: • 0D - points • 1D - lines/Curves • 2D - surfaces • 3D - volumes • Data is organized into datasets for visualization • Datasets consist of two pieces • organizing structure • cells (topology) • points (geometry) • data attributes associated with the structure • File format derived from organizing structure SCV Visualization Workshop – Fall 2008
Organizing Structure (Topology) • Topology • the way in which constituent parts are interrelated or arranged • specified by one or more cells (types vary with visualization packages) • vertex - (0D) point • polyvertex - (0D) arbitrarily ordered list of points • line - (1D) defined by two points • polyline - (1D) ordered list of one or more connected lines • triangle - (2D) ordered list of three points • triangle strip - (2D) ordered list of n + 2 points (n is the number of triangles) • polygon - (2D) ordered list of three or more points lying in a plane • pixel - (2D) ordered list of four points with geometric constraints • quadrilateral - (2D) - ordered list of four points lying in a plane • tetrahedron - (3D) ordered list of four nonplanar points • voxel - (3D) ordered list of eight nonplanar points with geometric constraints • hexahedron - (3D) ordered list of eight nonplanar points SCV Visualization Workshop – Fall 2008
Examples of Cell Types SCV Visualization Workshop – Fall 2008
Organizing Structure (Geometry) • Geometry • point coordinates assigned to a topology in 3D space • represented by points • example: (0 0 0), (0 1 0), (1 0 0) would be the geometry for a triangle SCV Visualization Workshop – Fall 2008
Examples of Dataset Types • Image Data (Structured Points) • regular in both topology and geometry • examples: lines, pixels, voxels • applications: imaging CT, MRI • Rectilinear Grid • regular topology but geometry only partially regular • examples: pixels, voxels • Structured Grid • regular topology and irregular geometry • examples: quadrilaterals, hexahedron • applications: fluid flow, heat transfer SCV Visualization Workshop – Fall 2008
Examples of Dataset Types • Unstructured Points • no topology and irregular geometry • examples: vertex, polyvertex • applications: data with no inherent structure • Polygonal Data • irregular in both topology and geometry • examples: vertices, polyvertices, lines, polylines, polygons, triangle strips • Unstructured Grid • irregular in both topology and geometry • examples: any combination of cells • applications: finite element analysis, structural design, vibration SCV Visualization Workshop – Fall 2008
Examples of Dataset Types • XML • much more complicated than the dataset types described above, but supports many more features • provides the user with the ability to extend a file format with application specific tags • in VTK the XML dataset has support for compression, portable binary encoding, random access, byte ordering, and multiple file representation of piece data SCV Visualization Workshop – Fall 2008
Data Attributes • Data attributes associated with the organizing structure • Scalars • single valued • examples: temperature, pressure, density, elevation • Vectors • magnitude and direction • examples: velocity, momentum • Normals • direction vectors (magnitude of 1) used for shading • Texture Coordinates • used to map a point in Cartesian space into 1, 2, or 3D texture space • used for texture mapping • Tensors (generalizations of scalars, vectors and matrices) • rank 0 ( scalar), rank 1 (vector), rank 2 (matrix), rank3 (3D rectangular array) • examples: stress, strain SCV Visualization Workshop – Fall 2008
Visualization of Attributes • Scalar Algorithms • Color Mapping • maps scalar data to colors • implemented by using scalar values as an index into a color lookup table • Contouring • construct a boundary between distinct regions • two steps: • explore space to find points near contour • connect points into contour (2D) or surface (3D) • 2D contour map (isoline): • applications: elevation contours from topography, pressure contours (weather maps) from meteorology SCV Visualization Workshop – Fall 2008
Visualization of Attributes • Contouring (cont) • 3D isosurface: • applications: tissue surfaces from tomography, constant pressure or temperature in fluid flow, implicit surfaces from math and CAD • Scalar Generation • extract scalars from part of data • example: extracting z coordinate (elevation) from terrain data to create scalar values SCV Visualization Workshop – Fall 2008
Visualization of Attributes • Vector Algorithms • Hedgehogs • oriented scaled line for each vector • Oriented Glyphs • orientation indicates direction • scale indicates magnitude • color indicates magnitude, pressure, temperature, or any variable • Warping • advect a simple object to indicate flow • vertices individually translated by flow SCV Visualization Workshop – Fall 2008
Visualization of Attributes • Vector Algorithms (cont) • Field Lines • Fluid flow is described by a vector field in three dimensions for steady (fixed time) flows or four dimensions for unsteady (time varying) flows • Three techniques for determining flow • Pathline (Trace) • tracks particle through unsteady (time-varying) flow • shows particle trajectories over time • rake releases particles from multiple positions at the same time instant • reveals compression, vorticity • Streamline • tracks particle through steady (fixed-time) flow • holds flow steady at a fixed time • snapshot of flow at a given time instant • Streakline • particles released from the same position over a time interval (time-varying) • snapshot of the variation of flow over time • example: dye steadily injected into fluid at a fixed point SCV Visualization Workshop – Fall 2008
Visualization of Attributes • Field Lines (cont) • Four ways to show flow • Streamlines • lines show particle flow • Streamlets • half way between streamlines and glyphs • example: stream arrows • Streamribbon • rake of two particles to create a ribbon • maintain constant tangent distance between particles • reveals vorticity • Streamtube • circular rake of particles to create a tube • relative radius of tube indicates compression/divergence • color can indicate pressure, temperature SCV Visualization Workshop – Fall 2008
Visualization of Attributes • Modeling Algorithms • Clipping • can reveal internal details of a surface • Cutting/Slicing • cutting through a dataset with a surface • Subsampling • reduces data size by selecting a subset of the original data • modifies topology SCV Visualization Workshop – Fall 2008
Visualization of Attributes • Volume Rendering • used for data that is inherently volumetric • examples: biomedical imaging, MR scans, CT scans, ultrasounds • Time Animation SCV Visualization Workshop – Fall 2008
Sources • The Visualization Toolkit, 3rd Edition, Will Schroeder, Pearson Education, Inc, 2002. • The VTK User’s Guide, 4.2 Edition, Kitware, 2003. • Kitware: www.vtk.org SCV Visualization Workshop – Fall 2008