Класс QSurface
Класс QSurface — это абстракция рендерируемых поверхностей в Qt. Подробнее...
| Заголовок: | #include <QSurface> |
| CMake: | find_package(Qt6 COMPONENTS Gui REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| С момента: | Qt 5.0 |
| Наследуется от: |
Типы public
| перечисление | SurfaceClass { Window, Offscreen } |
| перечисление | SurfaceType { RasterSurface, OpenGLSurface, RasterGLSurface, OpenVGSurface, VulkanSurface, MetalSurface } |
Функции public
| виртуальный | ~QSurface() |
| виртуальный QSurfaceFormat | format() const = 0 |
| виртуальный QSize | size() const = 0 |
| bool | supportsOpenGL() const |
| QSurface::SurfaceClass | surfaceClass() const |
| виртуальный QPlatformSurface * | surfaceHandle() const = 0 |
| виртуальный QSurface::SurfaceType | surfaceType() const = 0 |
Защищенные функции
| QSurface(QSurface::SurfaceClass type) |
Подробное описание
Размер поверхности доступен с помощью функции size(). Атрибуты, специфичные для рендеринга поверхности, доступны через функцию format().
Документация по типам членов
перечисление QSurface::SurfaceClass
Перечисление SurfaceClass описывает фактический подкласс поверхности.
| Постоянная | Значение | Описание |
|---|---|---|
QSurface::Window |
0 |
Поверхность является экземпляром QWindow. |
QSurface::Offscreen |
1 |
Поверхность является экземпляром QOffscreenSurface. |
перечисление QSurface::SurfaceType
Перечисление SurfaceType описывает тип этой поверхности.
| Постоянная | Значение | Описание |
|---|---|---|
QSurface::RasterSurface |
0 |
Поверхность состоит из пикселей и может быть рендерирована с помощью программного растрирующего устройства, например, растрирующего движка Qt. |
QSurface::OpenGLSurface |
1 |
Поверхность совместима с OpenGL и может использоваться совместно с QOpenGLContext. |
QSurface::RasterGLSurface |
2 |
Поверхность может быть рендерирована с помощью программного растрирующего устройства и также поддерживает OpenGL. Этот тип поверхности предназначен для внутреннего использования Qt и требует использования закрытого API. |
QSurface::OpenVGSurface |
3 |
Поверхность совместима с OpenVG и может использоваться совместно с контекстами OpenVG. |
QSurface::VulkanSurface |
4 |
Поверхность совместима с Vulkan и может использоваться совместно с графическим API Vulkan. |
QSurface::MetalSurface |
5 |
Поверхность совместима с Metal и может использоваться совместно с графическим API Metal Apple. Этот тип поверхности поддерживается только на macOS. |
Документация по функциям членов
[protected] QSurface::QSurface(QSurface::SurfaceClass type)
Создаёт поверхность с заданным типом type.
[virtual] QSurface::~QSurface()
Уничтожает поверхность.
[pure virtual] QSurfaceFormat QSurface::format() const
Возвращает формат поверхности.
[pure virtual] QSize QSurface::size() const
Возвращает размер поверхности в пикселях.
[since 5.3] bool QSurface::supportsOpenGL() const
Возвращает true, если поверхность совместима с OpenGL и может использоваться совместно с QOpenGLContext; в противном случае возвращает false.
Эта функция была введена в Qt 5.3.
QSurface::SurfaceClass QSurface::surfaceClass() const
Возвращает класс поверхности этой поверхности.
[pure virtual] QPlatformSurface *QSurface::surfaceHandle() const
Возвращает указатель на платформенно-специфическую реализацию поверхности.
[pure virtual] QSurface::SurfaceType QSurface::surfaceType() const
Возвращает тип поверхности.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qsurface.html