82 static double calculateEntityGpuMemorySize( Qt3DCore::QEntity *entity );
105 const QString &outputDirectory,
106 const QString &fileNameTemplate,
107 const QSize &outputSize,
116 static int maxZoomLevel(
double tile0width,
double tileResolution,
double maxError );
141 static QString matrix4x4toString(
const QMatrix4x4 &m );
143 static QMatrix4x4 stringToMatrix4x4(
const QString &
str );
152 static bool isCullable(
const QgsAABB &bbox,
const QMatrix4x4 &viewProjectionMatrix );
200 static void estimateVectorLayerZRange(
QgsVectorLayer *layer,
double &zMin,
double &zMax );
209 static QgsRay3D rayFromScreenPoint(
const QPoint &point,
const QSize &windowSize, Qt3DRender::QCamera *camera );
215 static QVector3D screenPointToWorldPos(
const QPoint &screenPoint,
double depth,
const QSize &screenSize, Qt3DRender::QCamera *camera );
221 static void pitchAndYawFromViewVector( QVector3D vect,
double &pitch,
double &yaw );
229 static QVector2D screenToTextureCoordinates( QVector2D screenXY, QSize winSize );
237 static QVector2D textureToScreenCoordinates( QVector2D textureXY, QSize winSize );
247 return ( ( qRed( pixel ) / 255.0 + qGreen( pixel ) ) / 255.0 + qBlue( pixel ) ) / 255.0;
255 static std::unique_ptr< QgsPointCloudLayer3DRenderer > convert2DPointCloudRendererTo3D(
QgsPointCloudRenderer *renderer );
290 static float screenSpaceError(
float epsilon,
float distance,
int screenSize,
float fov );
304 static void computeBoundingBoxNearFarPlanes(
const QgsAABB &bbox,
const QMatrix4x4 &viewMatrix,
float &fnear,
float &ffar );
323 static QByteArray addDefinesToShaderCode(
const QByteArray &shaderCode,
const QStringList &defines );
333 static QByteArray removeDefinesFromShaderCode(
const QByteArray &shaderCode,
const QStringList &defines );
342 static void decomposeTransformMatrix(
const QMatrix4x4 &matrix, QVector3D &translation, QQuaternion &rotation, QVector3D &scale );
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
Helper struct to store ray casting parameters.