walberla::gui::ScalarFieldDisplayAdaptor< field_t > Class Template Reference

Detailed Description

template<typename field_t>
class walberla::gui::ScalarFieldDisplayAdaptor< field_t >

Class for drawing a slice of a scalar field.

Scalar fields can be displayed either by showing the numeric values as text, or by using a colormap.

#include <ScalarFieldDisplayAdaptor.h>

+ Inheritance diagram for walberla::gui::ScalarFieldDisplayAdaptor< field_t >:

Public Member Functions

 ScalarFieldDisplayAdaptor (ConstBlockDataID scalarFieldID)
 
 ~ScalarFieldDisplayAdaptor ()
 
virtual void addConfigurationItem (QTreeWidgetItem *parentItem)
 Optionally adds a QTreeWidgetItem to a tree, containing configuration options. More...
 
virtual void draw (QVector< QVector< CellView * > > &grid, int nrOfGhostLayers)
 Draws data structure represented by this Adaptor to a grid of cells Block has to be set first! More...
 
void configure (const IBlock *block, int sliceDim, cell_idx_t sliceValue, Vector3< uint_t > &innerSize, cell_idx_t &ghostLayers)
 Configures the DisplayAdaptor by passing in a block and slice information. More...
 
- Public Member Functions inherited from walberla::gui::FieldDisplayAdaptor< field_t >
 FieldDisplayAdaptor (ConstBlockDataID fieldId)
 

Private Types

typedef field_t::value_type T
 

Private Member Functions

void drawScalarFieldNumeric (CellView *cell, const typename field_t::const_iterator &it)
 
void drawScalarFieldColormap (CellView *cell, const typename field_t::const_iterator &it, T min, T max)
 

Private Attributes

cell_idx_t f
 
DisplayPropertiesItemdisplayProperties_
 

Static Private Attributes

static const uint_t F_SIZE = field_t::F_SIZE
 

Additional Inherited Members

- Signals inherited from walberla::gui::DisplayAdaptor
void requestRedraw ()
 This signal requests a redraw, for example after a configuration change. More...
 
- Protected Member Functions inherited from walberla::gui::FieldDisplayAdaptor< field_t >
Cell permuteCoordAccordingToSlice (Cell input, int sliceCoord)
 
void getFieldSizeInfo (CellInterval &ciOut, cell_idx_t &ghostLayerOut)
 
- Protected Attributes inherited from walberla::gui::FieldDisplayAdaptor< field_t >
const field_t * field_
 
CellInterval sliceInterval_
 
cell_idx_t sliceDim_
 
ConstBlockDataID blockDataId_
 

Member Typedef Documentation

◆ T

template<typename field_t >
typedef field_t::value_type walberla::gui::ScalarFieldDisplayAdaptor< field_t >::T
private

Constructor & Destructor Documentation

◆ ScalarFieldDisplayAdaptor()

template<typename field_t >
walberla::gui::ScalarFieldDisplayAdaptor< field_t >::ScalarFieldDisplayAdaptor ( ConstBlockDataID  scalarFieldID)

◆ ~ScalarFieldDisplayAdaptor()

template<typename field_t >
walberla::gui::ScalarFieldDisplayAdaptor< field_t >::~ScalarFieldDisplayAdaptor

Member Function Documentation

◆ addConfigurationItem()

template<typename field_t >
void walberla::gui::ScalarFieldDisplayAdaptor< field_t >::addConfigurationItem ( QTreeWidgetItem *  )
virtual

Optionally adds a QTreeWidgetItem to a tree, containing configuration options.

Reimplemented from walberla::gui::DisplayAdaptor.

◆ configure()

template<typename field_t >
void walberla::gui::ScalarFieldDisplayAdaptor< field_t >::configure ( const IBlock block,
int  sliceDim,
cell_idx_t  sliceValue,
Vector3< uint_t > &  innerSize,
cell_idx_t ghostLayers 
)
virtual

Configures the DisplayAdaptor by passing in a block and slice information.

Parameters
[in]blockthe block that should be displayed
[in]sliceDimThe coordinate value of this dimension is kept constant. Defines the slice direction 0 means x, 1 means y, 2 means z
[in]sliceValueThe fixed value of the sliceDim coordinate. If the value is not in the allowed range nothing is displayed
[out]innerSizesize of the field, without ghost layer. innerSize[0] is the horizontal extent and will be the first coordinate in the grid array of draw() innerSize[1] is the vertical extend and will be the second coordinate in the grid array innerSize[2] is used for limiting the allowed sliceValues
[out]ghostLayersnumber of ghost layers for all three dimensions of innerSize

Reimplemented from walberla::gui::FieldDisplayAdaptor< field_t >.

◆ draw()

template<typename field_t >
void walberla::gui::ScalarFieldDisplayAdaptor< field_t >::draw ( QVector< QVector< CellView * > > &  grid,
int  nrOfGhostLayers 
)
virtual

Draws data structure represented by this Adaptor to a grid of cells Block has to be set first!

Parameters
[in,out]gridGrid of cells. Use functions of CellView to draw The Grid has dimension of innerSize + ghostLayers
[in]nrOfGhostLayersthe number of ghost layers in each direction. This value may be bigger than the returned value of configure() since other fields might have more ghost layers. The cell at grid[0][0] lies at the outermost ghost layer

Implements walberla::gui::DisplayAdaptor.

◆ drawScalarFieldColormap()

template<typename field_t >
void walberla::gui::ScalarFieldDisplayAdaptor< field_t >::drawScalarFieldColormap ( CellView cell,
const typename field_t::const_iterator &  it,
T  min,
T  max 
)
private

◆ drawScalarFieldNumeric()

template<typename field_t >
void walberla::gui::ScalarFieldDisplayAdaptor< field_t >::drawScalarFieldNumeric ( CellView cell,
const typename field_t::const_iterator &  it 
)
private

Member Data Documentation

◆ displayProperties_

template<typename field_t >
DisplayPropertiesItem* walberla::gui::ScalarFieldDisplayAdaptor< field_t >::displayProperties_
private

◆ f

template<typename field_t >
cell_idx_t walberla::gui::ScalarFieldDisplayAdaptor< field_t >::f
private

◆ F_SIZE

template<typename field_t >
const uint_t walberla::gui::ScalarFieldDisplayAdaptor< field_t >::F_SIZE = field_t::F_SIZE
staticprivate

The documentation for this class was generated from the following files: