QGeometryRenderer Class

class Qt3DRender ::QGeometryRenderer

Encapsulates geometry rendering. 更多...

頭: #include <QGeometryRenderer>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
實例化: GeometryRenderer
繼承: Qt3DCore::QBoundingVolume
繼承者: Qt3DExtras::QConeMesh , Qt3DExtras::QCuboidMesh , Qt3DExtras::QCylinderMesh , Qt3DExtras::QExtrudedTextMesh , Qt3DExtras::QPlaneMesh , Qt3DExtras::QSphereMesh , Qt3DExtras::QTorusMesh ,和 Qt3DRender::QMesh

公共類型

enum PrimitiveType { Points, Lines, LineLoop, LineStrip, Triangles, …, Patches }

特性

公共函數

QGeometryRenderer (Qt3DCore::QNode * parent = nullptr)
int firstInstance () const
int firstVertex () const
Qt3DCore::QGeometry * geometry () const
int indexBufferByteOffset () const
int indexOffset () const
int instanceCount () const
bool primitiveRestartEnabled () const
Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType () const
int restartIndexValue () const
float sortIndex () const
int vertexCount () const
int verticesPerPatch () const

公共槽

void setFirstInstance (int firstInstance )
void setFirstVertex (int firstVertex )
void setGeometry (Qt3DCore::QGeometry * geometry )
void setIndexBufferByteOffset (int offset )
void setIndexOffset (int indexOffset )
void setInstanceCount (int instanceCount )
void setPrimitiveRestartEnabled (bool enabled )
void setPrimitiveType (Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType )
void setRestartIndexValue (int index )
void setSortIndex (float sortIndex )
void setVertexCount (int vertexCount )
void setVerticesPerPatch (int verticesPerPatch )

信號

void firstInstanceChanged (int firstInstance )
void firstVertexChanged (int firstVertex )
void geometryChanged (Qt3DCore::QGeometry * geometry )
void indexBufferByteOffsetChanged (int offset )
void indexOffsetChanged (int indexOffset )
void instanceCountChanged (int instanceCount )
void primitiveRestartEnabledChanged (bool primitiveRestartEnabled )
void primitiveTypeChanged (Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType )
void restartIndexValueChanged (int restartIndexValue )
void sortIndexChanged (float sortIndex )
void vertexCountChanged (int vertexCount )
void verticesPerPatchChanged (int verticesPerPatch )

詳細描述

A Qt3DRender::QGeometryRenderer holds all the information necessary to draw a Qt3DCore::QGeometry . A QGeometry holds the coordinates of the geometry data - QGeometryRenderer specifies how to interpret that data.

成員類型文檔編製

enum QGeometryRenderer:: PrimitiveType

The type of the primitive.

常量 描述
Qt3DRender::QGeometryRenderer::Points 0x0000 List of points
Qt3DRender::QGeometryRenderer::Lines 0x0001 List of lines
Qt3DRender::QGeometryRenderer::LineLoop 0x0002 Connected group of lines connected at ends forming a loop
Qt3DRender::QGeometryRenderer::LineStrip 0x0003 Connected group of lines
Qt3DRender::QGeometryRenderer::Triangles 0x0004 List of triangles
Qt3DRender::QGeometryRenderer::TriangleStrip 0x0005 List of connected triangles
Qt3DRender::QGeometryRenderer::TriangleFan 0x0006 List of connected triagles where all triangles share the first vertex
Qt3DRender::QGeometryRenderer::LinesAdjacency 0x000A Allows geometry shader to access adjacent lines in a line list
Qt3DRender::QGeometryRenderer::TrianglesAdjacency 0x000C Allows geometry shader to access adjacent triangles in a triangle list
Qt3DRender::QGeometryRenderer::LineStripAdjacency 0x000B Allows geometry shader to access adjacent lines in a line strip
Qt3DRender::QGeometryRenderer::TriangleStripAdjacency 0x000D Allows geometry shader to access adjacent triangles in a triangle strip
Qt3DRender::QGeometryRenderer::Patches 0x000E Only primitive type accepted by tesselation shader where a patch consists of arbitrary number of vertices

特性文檔編製

firstInstance : int

Holds the base instance.

訪問函數:

int firstInstance () const
void setFirstInstance (int firstInstance )

通知程序信號:

void firstInstanceChanged (int firstInstance )

firstVertex : int

Holds the base vertex.

訪問函數:

int firstVertex () const
void setFirstVertex (int firstVertex )

通知程序信號:

void firstVertexChanged (int firstVertex )

geometry : Qt3DCore::QGeometry *

Holds the geometry.

訪問函數:

Qt3DCore::QGeometry * geometry () const
void setGeometry (Qt3DCore::QGeometry * geometry )

通知程序信號:

void geometryChanged (Qt3DCore::QGeometry * geometry )

indexBufferByteOffset : int

Holds the byte offset into the index buffer.

訪問函數:

int indexBufferByteOffset () const
void setIndexBufferByteOffset (int offset )

通知程序信號:

void indexBufferByteOffsetChanged (int offset )

indexOffset : int

Holds the base vertex.

訪問函數:

int indexOffset () const
void setIndexOffset (int indexOffset )

通知程序信號:

void indexOffsetChanged (int indexOffset )

instanceCount : int

Holds the instance count.

訪問函數:

int instanceCount () const
void setInstanceCount (int instanceCount )

通知程序信號:

void instanceCountChanged (int instanceCount )

primitiveRestartEnabled : bool

Holds the primitive restart flag.

訪問函數:

bool primitiveRestartEnabled () const
void setPrimitiveRestartEnabled (bool enabled )

通知程序信號:

void primitiveRestartEnabledChanged (bool primitiveRestartEnabled )

primitiveType : PrimitiveType

Holds the primitive type.

訪問函數:

Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType () const
void setPrimitiveType (Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType )

通知程序信號:

void primitiveTypeChanged (Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType )

restartIndexValue : int

Holds the restart index.

訪問函數:

int restartIndexValue () const
void setRestartIndexValue (int index )

通知程序信號:

void restartIndexValueChanged (int restartIndexValue )

[since 6.0] sortIndex : float

Overrides the sorting index when depth sorting is enabled.

If depth sorting is enabled on the frame graph, the renderer will sort objects based on how far the center of the bounding volume is from the camera and render objects from the furthest to the closest.

This property can be used to override the depth index and precisely control the order in which objects are rendered. This is useful when all objects are at the same physical distance from the camera.

The actual values are not significant, only that they define an order to sort the objects. These are sorted such as the object with the smallest value is drawn first, then the second smallest, and so on.

注意: Setting this to -1.f will disable the explicit sorting for this entity and revert to using the distance from the center of the bounding volume.

This property was introduced in Qt 6.0.

訪問函數:

float sortIndex () const
void setSortIndex (float sortIndex )

通知程序信號:

void sortIndexChanged (float sortIndex )

另請參閱 Qt3DRender::QSortPolicy .

vertexCount : int

Holds the primitive count.

訪問函數:

int vertexCount () const
void setVertexCount (int vertexCount )

通知程序信號:

void vertexCountChanged (int vertexCount )

verticesPerPatch : int

Holds vertices per patch.

訪問函數:

int verticesPerPatch () const
void setVerticesPerPatch (int verticesPerPatch )

通知程序信號:

void verticesPerPatchChanged (int verticesPerPatch )

成員函數文檔編製

[explicit] QGeometryRenderer:: QGeometryRenderer ( Qt3DCore::QNode * parent = nullptr)

Constructs a new QGeometryRenderer with parent .