Класс QGeometryRenderer
класс Qt3DRender::QGeometryRendererОборачивает рендеринг геометрии. Подробнее...
| Заголовок: | #include <QGeometryRenderer> |
| CMake: | find_package(Qt6 COMPONENTS 3drender REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake: | QT += 3drender |
| С момента: | Qt 5.7 |
| Инициализируется: | GeometryRenderer |
| Наследуется от: | Qt3DCore::QBoundingVolume |
| Наследует: | Qt3DExtras::QConeMesh, Qt3DExtras::QCuboidMesh, Qt3DExtras::QCylinderMesh, Qt3DExtras::QExtrudedTextMesh, Qt3DExtras::QPlaneMesh, Qt3DExtras::QSphereMesh, Qt3DExtras::QTorusMesh и Qt3DRender::QMesh |
Типы публичного доступа
| перечисление | PrimitiveType { Точки, Линии, Цикл линий, Линейная лента, Треугольники, …, Пластины } |
Свойства
|
|
Открытые функции
| 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 содержит всю необходимую информацию для отрисовки Qt3DCore::QGeometry. QGeometry содержит координаты данных геометрии — QGeometryRenderer определяет, как интерпретировать эти данные.
Документация по типам членов
перечисление QGeometryRenderer::PrimitiveType
Тип примитива.
| Постоянная | Значение | Описание |
|---|---|---|
Qt3DRender::QGeometryRenderer::Points |
0x0000 |
Список точек |
Qt3DRender::QGeometryRenderer::Lines |
0x0001 |
Список линий |
Qt3DRender::QGeometryRenderer::LineLoop |
0x0002 |
Связанная группа линий, соединённых в концах, образуя цикл |
Qt3DRender::QGeometryRenderer::LineStrip |
0x0003 |
Связанная группа линий |
Qt3DRender::QGeometryRenderer::Triangles |
0x0004 |
Список треугольников |
Qt3DRender::QGeometryRenderer::TriangleStrip |
0x0005 |
Список соединённых треугольников |
Qt3DRender::QGeometryRenderer::TriangleFan |
0x0006 |
Список соединённых треугольников, где все треугольники имеют общую первую вершину |
Qt3DRender::QGeometryRenderer::LinesAdjacency |
0x000A |
Позволяет шейдеру геометрии получить доступ к смежным линиям в списке линий |
Qt3DRender::QGeometryRenderer::TrianglesAdjacency |
0x000C |
Позволяет шейдеру геометрии получить доступ к смежным треугольникам в списке треугольников |
Qt3DRender::QGeometryRenderer::LineStripAdjacency |
0x000B |
Позволяет шейдеру геометрии получить доступ к смежным линиям в ленте линий |
Qt3DRender::QGeometryRenderer::TriangleStripAdjacency |
0x000D |
Позволяет шейдеру геометрии получить доступ к смежным треугольникам в ленте треугольников |
Qt3DRender::QGeometryRenderer::Patches |
0x000E |
Только тип примитива, принимаемый шейдером трассировки, где патч состоит из произвольного числа вершин |
Документация по свойствам
firstInstance : int
Содержит базовый экземпляр.
Функции доступа:
| int | firstInstance() const |
| void | setFirstInstance(int firstInstance) |
Сигнал уведомления:
| void | firstInstanceChanged(int firstInstance) |
firstVertex : int
Содержит базовую вершину.
Функции доступа:
| int | firstVertex() const |
| void | setFirstVertex(int firstVertex) |
Сигнал уведомления:
| void | firstVertexChanged(int firstVertex) |
geometry : Qt3DCore::QGeometry*
Содержит геометрию.
Функции доступа:
| Qt3DCore::QGeometry * | geometry() const |
| void | setGeometry(Qt3DCore::QGeometry *geometry) |
Сигнал уведомления:
| void | geometryChanged(Qt3DCore::QGeometry *geometry) |
indexBufferByteOffset : int
Содержит смещение в байтах в буфере индексов.
Функции доступа:
| int | indexBufferByteOffset() const |
| void | setIndexBufferByteOffset(int offset) |
Сигнал уведомления:
| void | indexBufferByteOffsetChanged(int offset) |
indexOffset : int
Содержит базовую вершину.
Функции доступа:
| int | indexOffset() const |
| void | setIndexOffset(int indexOffset) |
Сигнал уведомления:
| void | indexOffsetChanged(int indexOffset) |
instanceCount : int
Содержит количество экземпляров.
Функции доступа:
| int | instanceCount() const |
| void | setInstanceCount(int instanceCount) |
Сигнал уведомления:
| void | instanceCountChanged(int instanceCount) |
primitiveRestartEnabled : bool
Содержит флаг перезапуска примитива.
Функции доступа:
| bool | primitiveRestartEnabled() const |
| void | setPrimitiveRestartEnabled(bool enabled) |
Сигнал уведомления:
| void | primitiveRestartEnabledChanged(bool primitiveRestartEnabled) |
primitiveType : PrimitiveType
Содержит тип примитива.
Функции доступа:
| Qt3DRender::QGeometryRenderer::PrimitiveType | primitiveType() const |
| void | setPrimitiveType(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType) |
Сигнал уведомления:
| void | primitiveTypeChanged(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType) |
restartIndexValue : int
Содержит индекс перезапуска.
Функции доступа:
| int | restartIndexValue() const |
| void | setRestartIndexValue(int index) |
Сигнал уведомления:
| void | restartIndexValueChanged(int restartIndexValue) |
sortIndex : float
Переопределяет индекс сортировки, когда включена сортировка по глубине.
Если сортировка по глубине включена в графе кадров, рендерер отсортирует объекты в зависимости от того, насколько центр ограничивающего объема находится от камеры, и отобразит объекты от самого дальнего до самого близкого.
Это свойство можно использовать для переопределения индекса глубины и точного управления порядком отображения объектов. Это полезно, когда все объекты находятся на одинаковом физическом расстоянии от камеры.
Фактические значения не имеют значения, только то, что они определяют порядок сортировки объектов. Объекты сортируются таким образом, что объект с наименьшим значением отображается первым, затем второй наименьший и так далее.
Примечание: Установка этого значения в -1.f отключит явную сортировку для этого сущности и вернёт использование расстояния от центра ограничивающего объема.
Это свойство было добавлено в Qt 6.0.
Функции доступа:
| float | sortIndex() const |
| void | setSortIndex(float sortIndex) |
Сигнал уведомления:
| void | sortIndexChanged(float sortIndex) |
См. также Qt3DRender::QSortPolicy.
vertexCount : int
Содержит количество примитивов.
Функции доступа:
| int | vertexCount() const |
| void | setVertexCount(int vertexCount) |
Сигнал уведомления:
| void | vertexCountChanged(int vertexCount) |
verticesPerPatch : int
Содержит вершины на сегмент.
Функции доступа:
| int | verticesPerPatch() const |
| void | setVerticesPerPatch(int verticesPerPatch) |
Сигнал уведомления:
| void | verticesPerPatchChanged(int verticesPerPatch) |
Документация по функциям-членам
QGeometryRenderer::QGeometryRenderer(Qt3DCore::QNode *parent = nullptr)
Конструирует новый QGeometryRenderer с parent.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qt3drender-qgeometryrenderer.html