13.07.2015 Views

CashFlow, A Visualization Framework for 3D Flow - Studierstube ...

CashFlow, A Visualization Framework for 3D Flow - Studierstube ...

CashFlow, A Visualization Framework for 3D Flow - Studierstube ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Implementation4.5. Implementation of SoBaseGrid4.5 Implementation of SoBaseGridOne challenge in scientific visualization is, that there is a large amount of grids availableand in use (see section 3.8 on page 59). If each algorithm has to be implementedon each grid or be adapted to the grid, the number of classes needed derived from thegeneral algorithms would be huge. One other disadvantage of this approach gets obvious,if a new grid is introduced to the framework. In order to be able to render andprocess the grid, all existing algorithms have to be derived to be able to access this newgrid. This approach was used in MeshVis [Mes] by TGS [TGS] and is discussed indetail in appendix A on page 120.Our approach is to abstract the pieces of in<strong>for</strong>mation from the grids needed by thealgorithm. The algorithm communicates with the grid only via this interface. Once anew grid is introduced to the system, the grid only has to provide the topology data andoverload the iterators. Also if a new algorithm is implemented it can access all gridsvia this abstraction layer. This concept is similar to the approach of the Field Modellibrary [Mor03] and was also published at IEEE Vis2001 Tutorial 1 [Tut01].The in<strong>for</strong>mation required by the objects <strong>for</strong> accessing the grid include:• Geometric PrimitivesThere are four types of geometric primitives embedded in <strong>3D</strong>.– Vertex zero dimensional– Edge one dimensional– Face two dimensional– Cell three dimensionalThis concept is similar to the one introduced in section 2.1.4 and figure 2.9 onpage 2.9 published by [CUL89] as well as B-rep lists by [Sam90].• Topology DataConnectivity in<strong>for</strong>mation can be queried and is one way to provide all dataneeded by an algorithm.– per Edge: In<strong>for</strong>mation on the faces sharing this edge.– per Face In<strong>for</strong>mation on adjacent faces.neighborhood– per Cell In<strong>for</strong>mation on adjacent cells.• Grid IteratorThese iterators grant access to each cell or each face etcetera.82

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!