Encapsulates geometry rendering. 更多...
头: | #include <QGeometryRenderer> |
CMake: |
find_package(Qt6 COMPONENTS 3drender REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::3drender) |
qmake: | QT += 3drender |
Since: | Qt 5.7 |
实例化: | 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.
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 |
Holds the base instance.
访问函数:
int | firstInstance () const |
void | setFirstInstance (int firstInstance ) |
通知程序信号:
void | firstInstanceChanged (int firstInstance ) |
Holds the base vertex.
访问函数:
int | firstVertex () const |
void | setFirstVertex (int firstVertex ) |
通知程序信号:
void | firstVertexChanged (int firstVertex ) |
Holds the geometry.
访问函数:
Qt3DCore::QGeometry * | geometry () const |
void | setGeometry (Qt3DCore::QGeometry * geometry ) |
通知程序信号:
void | geometryChanged (Qt3DCore::QGeometry * geometry ) |
Holds the byte offset into the index buffer.
访问函数:
int | indexBufferByteOffset () const |
void | setIndexBufferByteOffset (int offset ) |
通知程序信号:
void | indexBufferByteOffsetChanged (int offset ) |
Holds the base vertex.
访问函数:
int | indexOffset () const |
void | setIndexOffset (int indexOffset ) |
通知程序信号:
void | indexOffsetChanged (int indexOffset ) |
Holds the instance count.
访问函数:
int | instanceCount () const |
void | setInstanceCount (int instanceCount ) |
通知程序信号:
void | instanceCountChanged (int instanceCount ) |
Holds the primitive restart flag.
访问函数:
bool | primitiveRestartEnabled () const |
void | setPrimitiveRestartEnabled (bool enabled ) |
通知程序信号:
void | primitiveRestartEnabledChanged (bool primitiveRestartEnabled ) |
Holds the primitive type.
访问函数:
Qt3DRender::QGeometryRenderer::PrimitiveType | primitiveType () const |
void | setPrimitiveType (Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType ) |
通知程序信号:
void | primitiveTypeChanged (Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType ) |
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 .
Holds the primitive count.
访问函数:
int | vertexCount () const |
void | setVertexCount (int vertexCount ) |
通知程序信号:
void | vertexCountChanged (int vertexCount ) |
Holds vertices per patch.
访问函数:
int | verticesPerPatch () const |
void | setVerticesPerPatch (int verticesPerPatch ) |
通知程序信号:
void | verticesPerPatchChanged (int verticesPerPatch ) |
Constructs a new QGeometryRenderer with parent .