class QQuickTextureFactory#

QQuickTextureFactory 类提供了从 QML 加载自定义纹理的接口。 更多...

Inheritance diagram of PySide6.QtQuick.QQuickTextureFactory

摘要#

方法#

虚方法#

静态函数#

注意

本文档中可能包含自动从 C++ 转换为 Python 的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译中存在问题,也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 上创建工单来通知我们。

详细描述#

纹理工厂的目的是提供一个占位符,用于将图像数据转换为 OpenGL 纹理。

由于负责加载图像数据的线程很少存在 OpenGL 上下文,因此无法直接创建纹理。

__init__()#

构建一个纹理工厂。由于 QQuickTextureFactory 是抽象类,所以不能直接实例化。

抽象 createTexture(window)#
参数:

窗口QQuickWindow

返回类型:

QSGTexture

此函数在场景图渲染线程中调用,用于从工厂创建一个 QSGTexture 实例。 window 提供了此纹理创建的上下文。

根据需要,QML 将内部缓存返回的纹理。每次调用此函数都应返回一个唯一的实例。

在调用此函数时,将绑定用于渲染的 OpenGL 上下文。

image()#
返回类型:

QImage

返回此纹理的图像版本。

返回的图像的寿命是未知的,因此实现应返回一个自包含的 QImage,而不应使用 QImage(uchar *,…) 构造函数。

此函数不常用,并且预计运行速度较慢。

抽象 textureByteCount()#
返回类型:

int

返回纹理占用的字节数。

静态 textureFactoryForImage(image)#
参数:

imageQImage

返回类型:

QQuickTextureFactory

返回包含给定 imageQQuickTextureFactory

通常用作 textureFactory 的辅助函数。

抽象 textureSize()#
返回类型:

QSize

返回纹理的大小。此函数将从任意线程调用,不应依赖于已绑定的 OpenGL 上下文。