- class QOpenGLPaintDevice#
类
QOpenGLPaintDevice
通过 QPainter 实现了对 OpenGL 上下文的绘制。更多...概述#
方法#
def
__init__()
def
context()
def
dotsPerMeterX()
def
dotsPerMeterY()
def
paintFlipped()
定义
setSize()
定义
size()
虚方法#
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译有问题,您也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建ticket来告知我们
详细描述#
QOpenGLPaintDevice
使用当前 QOpenGL 上下文来渲染 QPainter 绘图命令。上下文在构造时捕获。它需要支持OpenGL (ES) 2.0或更高版本。性能#
QOpenGLPaintDevice
几乎总是硬件加速的,理论上可能比软件光栅化快得多。然而,它对状态变化更敏感,因此需要仔细排序绘图命令以实现最佳性能。抗锯齿和质量#
OpenGL绘图引擎中的抗锯齿采用多采样实现。大多数硬件在执行多采样时需要更多的内存,且结果质量可能与软件绘图引擎质量不相上下。OpenGL绘图引擎的优势在于其性能,而不是其视觉渲染质量。
状态变化#
使用 QPainter 在
QOpenGLPaintDevice
上进行绘图时,绘图引擎将通过更改当前OpenGL上下文的当前状态来满足其需求。应用程序不应依赖于将OpenGL状态重置到其原始条件,尤其是当前着色程序、OpenGL视口、纹理单位和绘图模式。组合 QPainter 和 OpenGL#
在混用 QPainter 和 OpenGL 时,需要通知 QPainterOpenGL状态可能已混乱,以便它可以恢复其内部状态。这是通过在开始OpenGL渲染之前调用 QPainter::beginNativePainting()和在完成OpenGL渲染之后调用 QPainter::endNativePainting()来实现的。
另请参阅
- __init__()#
构造一个
QOpenGLPaintDevice
。《QOpenGLPaintDevice》类(PySide6.QtOpenGL.QOpenGLPaintDevice)仅在当前上下文中有效。
另请参阅
- __init__(size)
- 参数:
size –
QSize
使用给定的
size
构造一个QOpenGLPaintDevice
。《QOpenGLPaintDevice》类(PySide6.QtOpenGL.QOpenGLPaintDevice)仅在当前上下文中有效。
另请参阅
- __init__(width, height)
- 参数:
width – int
height – int
使用给定的
width
和height
构造一个QOpenGLPaintDevice
。《QOpenGLPaintDevice》类(PySide6.QtOpenGL.QOpenGLPaintDevice)仅在当前上下文中有效。
另请参阅
- context()#
- 返回类型:
返回与画布关联的OpenGL上下文。
- dotsPerMeterX()#
- 返回类型:
float
返回横向每米像素数。
另请参阅
- dotsPerMeterY()#
- 返回类型:
float
返回纵向每米像素数。
另请参阅
- ensureActiveTarget()#
这个虚方法提供一个回调,允许在不同
QOpenGLPaintDevice
实例交替发出绘制调用时重新绑定目标帧缓冲对象或上下文。调用 beginNativePainting() 也会触发此方法。
默认实现不执行任何操作。
- paintFlipped()#
- 返回类型:
bool
如果绘制是围绕Y轴翻转的,则返回
true
。另请参阅
- setDevicePixelRatio(devicePixelRatio)#
- 参数:
devicePixelRatio – float
将画布的设备像素比设置为
devicePixelRatio
。- setDotsPerMeterX(arg__1)#
- 参数:
arg__1 – float
将每米水平像素数设置为
dpmx
。另请参阅
- setDotsPerMeterY(arg__1)#
- 参数:
arg__1 – float
将每米垂直像素数设置为
dpmy
。另请参阅
- setPaintFlipped(flipped)#
- 参数:
flipped – bool
设置是否在Y轴周围翻转绘画到
flipped
。另请参阅
设置绘画设备的像素大小为
size
。另请参阅
返回绘画设备的像素大小。
另请参阅