QGIS API Documentation  3.11.0-Master (68611307d7)
Public Member Functions | List of all members
QgsMesh3dDataBlock Class Reference

QgsMesh3dDataBlock is a block of 3d stacked mesh data related N faces defined on base mesh frame. More...

#include <qgsmeshdataprovider.h>

Public Member Functions

 QgsMesh3dDataBlock ()
 Constructs an invalid block. More...
 
 QgsMesh3dDataBlock (int count, bool isVector)
 Constructs a new block for count faces. More...
 
 ~QgsMesh3dDataBlock ()
 Dtor. More...
 
int count () const
 Number of 2d faces for which the volume data is stored in the block. More...
 
QVector< int > faceToVolumeIndex () const
 Returns the indexing between faces and volumes. More...
 
int firstVolumeIndex () const
 Index of the first volume stored in the buffer (absolute) More...
 
bool isValid () const
 Whether the block is valid. More...
 
bool isVector () const
 Whether we store vector values. More...
 
int lastVolumeIndex () const
 Index of the last volume stored in the buffer (absolute) More...
 
void setFaceToVolumeIndex (const QVector< int > &faceToVolumeIndex)
 Sets the indexing between faces and volumes. More...
 
void setValid (bool valid)
 Sets block validity. More...
 
void setValues (const QVector< double > &doubleBuffer)
 Sets the values at volume centers. More...
 
void setVerticalLevels (const QVector< double > &verticalLevels)
 Sets the vertical levels height. More...
 
void setVerticalLevelsCount (const QVector< int > &verticalLevelsCount)
 Sets the vertical level counts. More...
 
QgsMeshDatasetValue value (int volumeIndex) const
 Returns the value at volume centers. More...
 
QVector< double > values () const
 Returns the values at volume centers. More...
 
QVector< double > verticalLevels () const
 Returns the vertical levels height. More...
 
QVector< int > verticalLevelsCount () const
 Returns number of vertical level above 2d faces. More...
 
int volumesCount () const
 Returns number of volumes stored in the buffer. More...
 

Detailed Description

QgsMesh3dDataBlock is a block of 3d stacked mesh data related N faces defined on base mesh frame.

data are implicitly shared, so the class can be quickly copied std::numeric_limits<double>::quiet_NaN() represents NODATA value

Note
The API is considered EXPERIMENTAL and can be changed without a notice
Since
QGIS 3.12

Definition at line 271 of file qgsmeshdataprovider.h.

Constructor & Destructor Documentation

◆ QgsMesh3dDataBlock() [1/2]

QgsMesh3dDataBlock::QgsMesh3dDataBlock ( )
default

Constructs an invalid block.

◆ ~QgsMesh3dDataBlock()

QgsMesh3dDataBlock::~QgsMesh3dDataBlock ( )

Dtor.

Definition at line 360 of file qgsmeshdataprovider.cpp.

◆ QgsMesh3dDataBlock() [2/2]

QgsMesh3dDataBlock::QgsMesh3dDataBlock ( int  count,
bool  isVector 
)

Constructs a new block for count faces.

Definition at line 362 of file qgsmeshdataprovider.cpp.

Member Function Documentation

◆ count()

int QgsMesh3dDataBlock::count ( ) const

Number of 2d faces for which the volume data is stored in the block.

Definition at line 378 of file qgsmeshdataprovider.cpp.

◆ faceToVolumeIndex()

QVector< int > QgsMesh3dDataBlock::faceToVolumeIndex ( ) const

Returns the indexing between faces and volumes.

Definition at line 434 of file qgsmeshdataprovider.cpp.

◆ firstVolumeIndex()

int QgsMesh3dDataBlock::firstVolumeIndex ( ) const

Index of the first volume stored in the buffer (absolute)

Definition at line 383 of file qgsmeshdataprovider.cpp.

◆ isValid()

bool QgsMesh3dDataBlock::isValid ( ) const

Whether the block is valid.

Definition at line 368 of file qgsmeshdataprovider.cpp.

◆ isVector()

bool QgsMesh3dDataBlock::isVector ( ) const

Whether we store vector values.

Definition at line 373 of file qgsmeshdataprovider.cpp.

◆ lastVolumeIndex()

int QgsMesh3dDataBlock::lastVolumeIndex ( ) const

Index of the last volume stored in the buffer (absolute)

Definition at line 390 of file qgsmeshdataprovider.cpp.

◆ setFaceToVolumeIndex()

void QgsMesh3dDataBlock::setFaceToVolumeIndex ( const QVector< int > &  faceToVolumeIndex)

Sets the indexing between faces and volumes.

Definition at line 410 of file qgsmeshdataprovider.cpp.

◆ setValid()

void QgsMesh3dDataBlock::setValid ( bool  valid)

Sets block validity.

Definition at line 466 of file qgsmeshdataprovider.cpp.

◆ setValues()

void QgsMesh3dDataBlock::setValues ( const QVector< double > &  doubleBuffer)

Sets the values at volume centers.

For vector datasets the number of values is doubled (x1, y1, x2, y2, ... )

Definition at line 460 of file qgsmeshdataprovider.cpp.

◆ setVerticalLevels()

void QgsMesh3dDataBlock::setVerticalLevels ( const QVector< double > &  verticalLevels)

Sets the vertical levels height.

Definition at line 428 of file qgsmeshdataprovider.cpp.

◆ setVerticalLevelsCount()

void QgsMesh3dDataBlock::setVerticalLevelsCount ( const QVector< int > &  verticalLevelsCount)

Sets the vertical level counts.

Definition at line 416 of file qgsmeshdataprovider.cpp.

◆ value()

QgsMeshDatasetValue QgsMesh3dDataBlock::value ( int  volumeIndex) const

Returns the value at volume centers.

Parameters
volumeIndexvolume index relative to firstVolumeIndex()
Returns
value (scalar or vector)

Definition at line 446 of file qgsmeshdataprovider.cpp.

◆ values()

QVector< double > QgsMesh3dDataBlock::values ( ) const

Returns the values at volume centers.

For vector datasets the number of values is doubled (x1, y1, x2, y2, ... )

Definition at line 440 of file qgsmeshdataprovider.cpp.

◆ verticalLevels()

QVector< double > QgsMesh3dDataBlock::verticalLevels ( ) const

Returns the vertical levels height.

Definition at line 422 of file qgsmeshdataprovider.cpp.

◆ verticalLevelsCount()

QVector< int > QgsMesh3dDataBlock::verticalLevelsCount ( ) const

Returns number of vertical level above 2d faces.

Definition at line 404 of file qgsmeshdataprovider.cpp.

◆ volumesCount()

int QgsMesh3dDataBlock::volumesCount ( ) const

Returns number of volumes stored in the buffer.

Definition at line 399 of file qgsmeshdataprovider.cpp.


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