QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
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 <qgsmeshdataset.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 246 of file qgsmeshdataset.h.

Constructor & Destructor Documentation

◆ QgsMesh3dDataBlock() [1/2]

QgsMesh3dDataBlock::QgsMesh3dDataBlock ( )
default

Constructs an invalid block.

◆ ~QgsMesh3dDataBlock()

QgsMesh3dDataBlock::~QgsMesh3dDataBlock ( )

Dtor.

Definition at line 334 of file qgsmeshdataset.cpp.

◆ QgsMesh3dDataBlock() [2/2]

QgsMesh3dDataBlock::QgsMesh3dDataBlock ( int  count,
bool  isVector 
)

Constructs a new block for count faces.

Definition at line 336 of file qgsmeshdataset.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 352 of file qgsmeshdataset.cpp.

◆ faceToVolumeIndex()

QVector< int > QgsMesh3dDataBlock::faceToVolumeIndex ( ) const

Returns the indexing between faces and volumes.

Definition at line 408 of file qgsmeshdataset.cpp.

◆ firstVolumeIndex()

int QgsMesh3dDataBlock::firstVolumeIndex ( ) const

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

Definition at line 357 of file qgsmeshdataset.cpp.

◆ isValid()

bool QgsMesh3dDataBlock::isValid ( ) const

Whether the block is valid.

Definition at line 342 of file qgsmeshdataset.cpp.

◆ isVector()

bool QgsMesh3dDataBlock::isVector ( ) const

Whether we store vector values.

Definition at line 347 of file qgsmeshdataset.cpp.

◆ lastVolumeIndex()

int QgsMesh3dDataBlock::lastVolumeIndex ( ) const

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

Definition at line 364 of file qgsmeshdataset.cpp.

◆ setFaceToVolumeIndex()

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

Sets the indexing between faces and volumes.

Definition at line 384 of file qgsmeshdataset.cpp.

◆ setValid()

void QgsMesh3dDataBlock::setValid ( bool  valid)

Sets block validity.

Definition at line 440 of file qgsmeshdataset.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 434 of file qgsmeshdataset.cpp.

◆ setVerticalLevels()

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

Sets the vertical levels height.

Definition at line 402 of file qgsmeshdataset.cpp.

◆ setVerticalLevelsCount()

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

Sets the vertical level counts.

Definition at line 390 of file qgsmeshdataset.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 420 of file qgsmeshdataset.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 414 of file qgsmeshdataset.cpp.

◆ verticalLevels()

QVector< double > QgsMesh3dDataBlock::verticalLevels ( ) const

Returns the vertical levels height.

Definition at line 396 of file qgsmeshdataset.cpp.

◆ verticalLevelsCount()

QVector< int > QgsMesh3dDataBlock::verticalLevelsCount ( ) const

Returns number of vertical level above 2d faces.

Definition at line 378 of file qgsmeshdataset.cpp.

◆ volumesCount()

int QgsMesh3dDataBlock::volumesCount ( ) const

Returns number of volumes stored in the buffer.

Definition at line 373 of file qgsmeshdataset.cpp.


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