Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

vtkGDBStructReader Class Reference

create geometrical representation of GDB structure. More...

#include <vtkGDBStructReader.h>

Inheritance diagram for vtkGDBStructReader

Inheritance graph

[legend]
List of all members.

Public Methods

virtual const char* GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream& os, vtkIndent indent)
virtual void SetGDBStruct ( GDB* )
virtual GDB* GetGDBStruct ()
vtkPolyDataGetVerticesOutput ()
vtkPolyDataGetEdgesOutput ()
vtkPolyDataGetSurfacesOutput ()
vtkPolyDataGetSurfacesPickOutput ()
int* GetSurfaceCellIds (int surfaceId)
int GetSurfaceId (int pickId)
virtual void SetMergePoints ( int )
virtual int GetMergePoints ()
virtual void MergePointsOn ()
virtual void MergePointsOff ()
virtual void SetMergeSurfacePoints ( int )
virtual int GetMergeSurfacePoints ()
virtual void MergeSurfacePointsOn ()
virtual void MergeSurfacePointsOff ()
B2SPLINE_POINTS GetGrid (int sid)
int HaveGrid (int sid)
int InsertNextGrid (int sid, B2SPLINE_POINTS grid)
void SetGrid (int loc, B2SPLINE_POINTS grid)
void CleanGridList ()
void UpdateInformation ()
void UpdateData (vtkDataObject *output)

Static Public Methods

vtkGDBStructReader* New ()
int IsTypeOf (const char *type)
vtkGDBStructReader* SafeDownCast (vtkObject *o)
void GetCellCenter (float center[3], vtkCell *cell)

Protected Methods

 vtkGDBStructReader ()
 ~vtkGDBStructReader ()
 vtkGDBStructReader (const vtkGDBStructReader&)
void operator= (const vtkGDBStructReader&)
void Execute ()

Protected Attributes

GDB* GDBStruct
int MergePoints
int MergeSurfacePoints
B2SPLINE_POINTS* gridList
vtkIdListgridId
int gridListSize
vtkIntArrayIa
vtkIdListId
vtkTimeStamp ExecuteTime

Detailed Description

create geometrical representation of GDB structure.

vtkGDBStructReader is a source object that creates four polygonal data outputs: vertices, edges, surfaces and surfaces pick points. They are used for geometrical representation of GDB structure. Vertices, edges and surfaces are represented by vertex, polyline and triangle strip cells respectively. Surface pick points are represented by vertex cells and are used only as a helper objects for picking surfaces. They are placed in the parametrical center of each visible surface. Each of these pick points is associated with surface cell id list and surface id list so surface can be manipulated (e.g. highlighted). The reason why each entity has its own output is flexibility. Each entity can be colored, labeled and filtered individually. It also simplifies picking since cell ids match GDB ids.

A special grid list is provided for holding computational grids for individual surfaces which are used to speed up interaction. Grids are automaticaly generated only for invisible surfaces, others can be inserted at a later time (but are lost when this object reexecutes).

Warning:
Since vertices are connected with edges, they both use the same vtkPoints objects. vtkMergePoints object is used to merge exactly coincident points. Surfaces use their own vtkPoints object so that their graphical representation can be simplified if necesary. Merging of coincident surface points can also be used for reducing data size.

See also:
vtkMergePoints vtkCellPicker vtkGeometryFilter


Member Function Documentation

void CleanGridList ( )
 

Emptys the grid list.

void GetCellCenter ( float center[3],
vtkCell * cell ) [static]
 

Returns the center of the specified cell. (The center is the parametric center of the cell, not necessarily the geometric or bounding box center.)

B2SPLINE_POINTS GetGrid ( int sid ) [inline]
 

Get computational grid for specified surface. If the grid was not yet generated, returns the first grid in the list.

int * GetSurfaceCellIds ( int surfaceId )
 

Get minimum and maximum cell id of a surface. Surface cells with ids between these two (inclusive) represent a surface.

int GetSurfaceId ( int pickId ) [inline]
 

Returns surface id of the picked surface pick point.

vtkPolyData * GetVerticesOutput ( ) [inline]
 

Get dataset for each entity.

int HaveGrid ( int sid ) [inline]
 

Check if there is a grid for specified surface. Returns 1 if there is one, 0 otherwise.

int InsertNextGrid ( int sid,
B2SPLINE_POINTS grid )
 

Inserts computational grid for specified surface in the list. Memory is allocated if necessary.

vtkGDBStructReader * New ( ) [static]
 

Instantiates object with both points merging on.

Reimplemented from vtkPolyDataSource.

void SetGDBStruct ( GDB * ) [virtual]
 

Set/Get pointer to GDB structure to read from.

void SetGrid ( int loc,
B2SPLINE_POINTS grid ) [inline]
 

Inserts computational grid in specified location in the list. Memory checking is not performed. Can be used for replacing a grid.

void SetMergePoints ( int ) [virtual]
 

Enable/Disable merging of cooncident points when building vertices and edges output.

void SetMergeSurfacePoints ( int ) [virtual]
 

Enable/Disable merging of cooncident points when building surfaces output.


The documentation for this class was generated from the following file:
Generated at Tue Sep 26 18:34:00 2000 for Grid Edit by doxygen1.2.0 written by Dimitri van Heesch, © 1997-2000