Класс QSGAbstractRenderer
QSGAbstractRenderer предоставляет доступ к узлам графа сцены и отрисовке QSGEngine. Подробнее...
| Заголовок: | #include <QSGAbstractRenderer> |
| qmake: | QT += quick |
| С момента: | Qt 5.4 |
| Наследует: | QObject |
Типы public
| флаги | ClearMode |
| перечисление | ClearModeBit { ClearColorBuffer, ClearDepthBuffer, ClearStencilBuffer } |
Public функции
| QColor | clearColor() const |
| QSGAbstractRenderer::ClearMode | clearMode() const |
| QRect | deviceRect() const |
| QMatrix4x4 | projectionMatrix() const |
| virtual void | renderScene(uint fboId = ...) = 0 |
| QSGRootNode * | rootNode() const |
| void | setClearColor(const QColor &color) |
| void | setClearMode(QSGAbstractRenderer::ClearMode mode) |
| void | setDeviceRect(const QRect &rect) |
| void | setDeviceRect(const QSize &size) |
| void | setProjectionMatrix(const QMatrix4x4 &matrix) |
| void | setProjectionMatrixToRect(const QRectF &rect) |
| void | setRootNode(QSGRootNode *node) |
| void | setViewportRect(const QRect &rect) |
| void | setViewportRect(const QSize &size) |
| QRect | viewportRect() const |
- 31 public функция, унаследованные от QObject
Сигналы
| void | sceneGraphChanged() |
- 2 сигнала, унаследованные от QObject
Статические public члены
| const QMetaObject | staticMetaObject |
- 9 статических public членов, унаследованные от QObject
Дополнительные унаследованные члены
- 1 свойство, унаследованное от QObject
- 1 public слот, унаследованный от QObject
- 9 защищённых функций, унаследованные от QObject
Подробное описание
QSGAbstractRenderer предоставляет доступ к узлам графа сцены и отрисовке QSGEngine.
Созданный QSGEngine QSGAbstractRenderer позволяет задать дерево QSGNode через setRootNode() и управлять областью отрисовки через setDeviceRect(), setViewportRect() и setProjectionMatrixToRect(). Наконец, вы можете запустить отрисовку в нужном буфере кадров с помощью renderScene().
QSGAbstractRenderer доступен только при использовании с QSGEngine и не экспонируется при внутреннем использовании QQuickWindow.
См. также QSGEngine и QSGNode.
Документация по типам членов
перечисление QSGAbstractRenderer::ClearModeBitфлаги QSGAbstractRenderer::ClearMode
Используется с setClearMode(), чтобы указать, какой буфер должен быть очищен перед отрисовкой сцены.
| Постоянная | Значение | Описание |
|---|---|---|
QSGAbstractRenderer::ClearColorBuffer |
0x0001 |
Очистить буфер цвета с помощью clearColor(). |
QSGAbstractRenderer::ClearDepthBuffer |
0x0002 |
Очистить буфер глубины. |
QSGAbstractRenderer::ClearStencilBuffer |
0x0004 |
Очистить буфер трафарета. |
Тип ClearMode — это псевдоним для QFlags<ClearModeBit>. Он хранит логическое ИЛИ сочетание значений ClearModeBit.
См. также setClearMode() и setClearColor().
Документация по функциям-членам
QColor QSGAbstractRenderer::clearColor() const
Возвращает цвет, который очищает буфер кадра в начале отрисовки.
См. также setClearColor() и clearMode().
QSGAbstractRenderer::ClearMode QSGAbstractRenderer::clearMode() const
Флаги, определяющие, какой элемент привязки буфера кадра будет очищен перед каждой отрисовкой сцены.
См. также setClearMode() и clearColor().
QRect QSGAbstractRenderer::deviceRect() const
Возвращает прямоугольник устройства, к которому осуществляется отрисовка.
См. также setDeviceRect().
QMatrix4x4 QSGAbstractRenderer::projectionMatrix() const
Возвращает матрицу проекции.
См. также setProjectionMatrix() и setProjectionMatrixToRect().
[pure virtual] void QSGAbstractRenderer::renderScene(uint fboId = ...)
Отрисовать сцену в указанный fboId
Если fboId не указан, граф сцены будет отрисован в буфере кадра по умолчанию. Вам необходимо будет самим вызвать QOpenGLContext::swapBuffers() после этого.
Буфер кадра, указанный fboId, будет автоматически привязан.
См. также QOpenGLContext::swapBuffers() и QOpenGLFramebufferObject::handle().
QSGRootNode *QSGAbstractRenderer::rootNode() const
Возвращает корень сцены QSGNode.
См. также setRootNode().
[signal] void QSGAbstractRenderer::sceneGraphChanged()
Этот сигнал излучается при первом изменении узла в дереве после последней отрисовки сцены.
void QSGAbstractRenderer::setClearColor(const QColor &color)
Используйте цвет для очистки буфера кадра, когда clearMode() установлен в QSGAbstractRenderer::ClearColorBuffer.
См. также clearColor() и setClearMode().
void QSGAbstractRenderer::setClearMode(QSGAbstractRenderer::ClearMode mode)
Определяет, какой фрагмент буфера кадра должен быть очищен перед каждым рендерингом сцены с помощью флага mode.
См. также clearMode() и setClearColor().
void QSGAbstractRenderer::setDeviceRect(const QRect &rect)
Устанавливает rect в качестве геометрии поверхности, на которую выполняется рендеринг.
См. также deviceRect().
void QSGAbstractRenderer::setDeviceRect(const QSize &size)
Это перегруженный метод.
Устанавливает размер поверхности, на которую выполняется рендеринг.
См. также deviceRect().
void QSGAbstractRenderer::setProjectionMatrix(const QMatrix4x4 &matrix)
Используйте matrix для проекции координат QSGNode на пиксели поверхности.
См. также projectionMatrix() и setProjectionMatrixToRect().
void QSGAbstractRenderer::setProjectionMatrixToRect(const QRectF &rect)
Удобный метод, вызывающий setProjectionMatrix() с ортогональной матрицей, сгенерированной из rect.
См. также setProjectionMatrix() и projectionMatrix().
void QSGAbstractRenderer::setRootNode(QSGRootNode *node)
Устанавливает node в качестве корня сцены QSGNode, которую вы хотите отрисовать. Вам необходимо указать node перед попыткой рендеринга сцены.
Примечание: Это не перенимает владения node.
См. также rootNode().
void QSGAbstractRenderer::setViewportRect(const QRect &rect)
Устанавливает rect в качестве геометрии области просмотра для рендеринга на поверхности.
См. также viewportRect().
void QSGAbstractRenderer::setViewportRect(const QSize &size)
Это перегруженный метод.
Устанавливает размер области просмотра для рендеринга на поверхности.
См. также viewportRect().
QRect QSGAbstractRenderer::viewportRect() const
Возвращает прямоугольник области просмотра для рендеринга.
См. также setViewportRect().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qsgabstractrenderer.html