Класс QSGAbstractRenderer
QSGAbstractRenderer предоставляет доступ к узлам графика сцены и к отрисовке QSGEngine. Подробнее...
| Заголовок: | #include <QSGAbstractRenderer> |
| qmake: | QT += quick |
| С тех пор: | Qt 5.4 |
| Наследуется от: | QObject |
Типы
| флаги | ClearMode |
| перечисление | ClearModeBit { ClearColorBuffer, ClearDepthBuffer, ClearStencilBuffer } |
Открытые функции
| QColor | clearColor() const |
| ClearMode | clearMode() const |
| QRect | deviceRect() const |
| QMatrix4x4 | projectionMatrix() const |
| virtual void | renderScene(GLuint fboId = 0) = 0 |
| QSGRootNode * | rootNode() const |
| void | setClearColor(const QColor &color) |
| void | setClearMode(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 открытая функция унаследованная от QObject
Сигналы
| void | sceneGraphChanged() |
- 2 сигнала унаследованных от QObject
Дополнительные унаследованные члены
- 1 свойство, унаследованное от QObject
- 1 открытый слот, унаследованный от QObject
- 11 статических открытых членов, унаследованных от QObject
- 9 защищенных функций, унаследованных от QObject
Подробное описание
QSGAbstractRenderer предоставляет доступ к узлам графика сцены и к отрисовке QSGEngine.
QSGAbstractRenderer, созданный QSGEngine, позволяет задать дерево 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().
ClearMode QSGAbstractRenderer::clearMode() const
Флаги, определяющие, какой атрибут буфера кадра будет очищен перед каждой отрисовкой сцены.
См. также setClearMode() и clearColor().
QRect QSGAbstractRenderer::deviceRect() const
Возвращает область устройства, на которое выполняется отрисовка.
См. также setDeviceRect().
QMatrix4x4 QSGAbstractRenderer::projectionMatrix() const
Возвращает матрицу проекции.
См. также setProjectionMatrix() и setProjectionMatrixToRect().
[pure virtual] void QSGAbstractRenderer::renderScene(GLuint fboId = 0)
Отрисовать сцену в указанном 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)
Используйте color для очистки буфера кадра, когда clearMode() установлено в QSGAbstractRenderer::ClearColorBuffer.
См. также clearColor() и setClearMode().
void QSGAbstractRenderer::setClearMode(ClearMode mode)
Определяет, какой фрагмент буфера фрейма следует очистить перед каждым рендерингом сцены с помощью флага mode.
См. также clearMode() и setClearColor().
void QSGAbstractRenderer::setDeviceRect(const QRect &rect)
Устанавливает rect в качестве геометрии поверхности, на которую производится рендеринг.
См. также deviceRect().
void QSGAbstractRenderer::setDeviceRect(const QSize &size)
Это перегруженный метод.
Устанавливает 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)
Это перегруженный метод.
Устанавливает 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/archives/qt-5.6/qsgabstractrenderer.html