QGeometryRenderer Class

(Qt3DRender::QGeometryRenderer)

Encapsulates geometry rendering 更多...

头文件: #include <QGeometryRenderer>
qmake: QT += 3drender
开始支持版本: Qt 5.7
Instantiated By: GeometryRenderer
基类: Qt3DCore::QComponent
派生类:

Qt3DExtras::QConeMesh, Qt3DExtras::QCuboidMesh, Qt3DExtras::QCylinderMesh, Qt3DExtras::QExtrudedTextMesh, Qt3DExtras::QPlaneMesh, Qt3DExtras::QSphereMesh, Qt3DExtras::QTorusMesh, and Qt3DRender::QMesh

公有类型

enum PrimitiveType { Points, Lines, LineLoop, LineStrip, ..., Patches }

属性

公有函数

QGeometryRenderer(Qt3DCore::QNode *parent = nullptr)
int firstInstance() const
int firstVertex() const
QGeometry *geometry() const
QGeometryFactoryPtr geometryFactory() const
int indexOffset() const
int instanceCount() const
bool primitiveRestartEnabled() const
PrimitiveType primitiveType() const
int restartIndexValue() const
void setGeometryFactory(const QGeometryFactoryPtr &factory)
int vertexCount() const
int verticesPerPatch() const

公有槽函数

void setFirstInstance(int firstInstance)
void setFirstVertex(int firstVertex)
void setGeometry(QGeometry *geometry)
void setIndexOffset(int indexOffset)
void setInstanceCount(int instanceCount)
void setPrimitiveRestartEnabled(bool enabled)
void setPrimitiveType(PrimitiveType primitiveType)
void setRestartIndexValue(int index)
void setVertexCount(int vertexCount)
void setVerticesPerPatch(int verticesPerPatch)

信号

void firstInstanceChanged(int firstInstance)
void firstVertexChanged(int firstVertex)
void geometryChanged(QGeometry *geometry)
void indexOffsetChanged(int indexOffset)
void instanceCountChanged(int instanceCount)
void primitiveRestartEnabledChanged(bool primitiveRestartEnabled)
void primitiveTypeChanged(PrimitiveType primitiveType)
void restartIndexValueChanged(int restartIndexValue)
void vertexCountChanged(int vertexCount)
void verticesPerPatchChanged(int verticesPerPatch)

受保护的函数

QGeometryRenderer(QGeometryRendererPrivate &dd, Qt3DCore::QNode *parent = nullptr)

其他继承的成员

  • 1 个公有变量继承自 QObject
  • 10 个静态公有成员继承自 QObject
  • 2 个受保护的变量继承自 QObject

详细描述

Encapsulates geometry rendering

A Qt3DRender::QGeometryRenderer holds all the information necessary to draw a Qt3DRender::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.

ConstantValueDescription
Qt3DRender::QGeometryRenderer::Points0x0000List of points
Qt3DRender::QGeometryRenderer::Lines0x0001List of lines
Qt3DRender::QGeometryRenderer::LineLoop0x0002Connected group of lines connected at ends forming a loop
Qt3DRender::QGeometryRenderer::LineStrip0x0003Connected group of lines
Qt3DRender::QGeometryRenderer::Triangles0x0004List of triangles
Qt3DRender::QGeometryRenderer::TriangleStrip0x0005List of connected triangles
Qt3DRender::QGeometryRenderer::TriangleFan0x0006List of connected triagles where all triangles share the first vertex
Qt3DRender::QGeometryRenderer::LinesAdjacency0x000AAllows geometry shader to access adjacent lines in a line list
Qt3DRender::QGeometryRenderer::TrianglesAdjacency0x000CAllows geometry shader to access adjacent triangles in a triangle list
Qt3DRender::QGeometryRenderer::LineStripAdjacency0x000BAllows geometry shader to access adjacent lines in a line strip
Qt3DRender::QGeometryRenderer::TriangleStripAdjacency0x000DAllows geometry shader to access adjacent triangles in a triangle strip
Qt3DRender::QGeometryRenderer::Patches0x000EOnly 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)

Notifier signal:

void firstInstanceChanged(int firstInstance)

firstVertex : int

Holds the base vertex.

访问函数:

int firstVertex() const
void setFirstVertex(int firstVertex)

Notifier signal:

void firstVertexChanged(int firstVertex)

geometry : Qt3DRender::QGeometry *

Holds the geometry.

访问函数:

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

Notifier signal:

void geometryChanged(QGeometry *geometry)

indexOffset : int

Holds the base vertex.

访问函数:

int indexOffset() const
void setIndexOffset(int indexOffset)

Notifier signal:

void indexOffsetChanged(int indexOffset)

instanceCount : int

Holds the instance count.

访问函数:

int instanceCount() const
void setInstanceCount(int instanceCount)

Notifier signal:

void instanceCountChanged(int instanceCount)

primitiveRestartEnabled : bool

Holds the primitive restart flag.

访问函数:

bool primitiveRestartEnabled() const
void setPrimitiveRestartEnabled(bool enabled)

Notifier signal:

void primitiveRestartEnabledChanged(bool primitiveRestartEnabled)

primitiveType : PrimitiveType

Holds the primitive type.

访问函数:

PrimitiveType primitiveType() const
void setPrimitiveType(PrimitiveType primitiveType)

Notifier signal:

void primitiveTypeChanged(PrimitiveType primitiveType)

restartIndexValue : int

Holds the restart index.

访问函数:

int restartIndexValue() const
void setRestartIndexValue(int index)

Notifier signal:

void restartIndexValueChanged(int restartIndexValue)

vertexCount : int

Holds the primitive count.

访问函数:

int vertexCount() const
void setVertexCount(int vertexCount)

Notifier signal:

void vertexCountChanged(int vertexCount)

verticesPerPatch : int

Holds vertices per patch.

访问函数:

int verticesPerPatch() const
void setVerticesPerPatch(int verticesPerPatch)

Notifier signal:

void verticesPerPatchChanged(int verticesPerPatch)

成员函数

QGeometryRenderer::QGeometryRenderer(Qt3DCore::QNode *parent = nullptr)

Default constructs an instance of QGeometryRenderer.

[protected] QGeometryRenderer::QGeometryRenderer(QGeometryRendererPrivate &dd, Qt3DCore::QNode *parent = nullptr)

Copy constructor.

QGeometryFactoryPtr QGeometryRenderer::geometryFactory() const

Returns the geometry functor.

参见 setGeometryFactory().

void QGeometryRenderer::setGeometryFactory(const QGeometryFactoryPtr &factory)

Sets the geometry factory.

参见 geometryFactory().