The QSGImageNode class is provided for convenience to easily draw textured content using the QML scene graph. 更多...
头: | #include <QSGImageNode> |
qmake: | QT += quick |
Since: | Qt 5.8 |
继承: | QSGGeometryNode |
enum | TextureCoordinatesTransformFlag { NoTransform, MirrorHorizontally, MirrorVertically } |
flags | TextureCoordinatesTransformMode |
virtual | ~QSGImageNode () override |
virtual QSGTexture::Filtering | filtering () const = 0 |
virtual QSGTexture::Filtering | mipmapFiltering () const = 0 |
virtual bool | ownsTexture () const = 0 |
virtual QRectF | rect () const = 0 |
virtual void | setFiltering (QSGTexture::Filtering filtering ) = 0 |
virtual void | setMipmapFiltering (QSGTexture::Filtering filtering ) = 0 |
virtual void | setOwnsTexture (bool owns ) = 0 |
virtual void | setRect (const QRectF & rect ) = 0 |
void | setRect (qreal x , qreal y , qreal w , qreal h ) |
virtual void | setSourceRect (const QRectF & rect ) = 0 |
void | setSourceRect (qreal x , qreal y , qreal w , qreal h ) |
virtual void | setTexture (QSGTexture * texture ) = 0 |
virtual void | setTextureCoordinatesTransform (QSGImageNode::TextureCoordinatesTransformMode mode ) = 0 |
virtual QRectF | sourceRect () const = 0 |
virtual QSGTexture * | texture () const = 0 |
virtual QSGImageNode::TextureCoordinatesTransformMode | textureCoordinatesTransform () const = 0 |
void | rebuildGeometry (QSGGeometry * g , QSGTexture * texture , const QRectF & rect , QRectF sourceRect , QSGImageNode::TextureCoordinatesTransformMode texCoordMode ) |
The QSGImageNode class is provided for convenience to easily draw textured content using the QML scene graph.
警告: The image node class must have a texture before being added to the scene graph to be rendered.
The TextureCoordinatesTransformFlag enum is used to specify the mode used to generate texture coordinates for a textured quad.
常量 | 值 | 描述 |
---|---|---|
QSGImageNode::NoTransform
|
0x00
|
Texture coordinates are oriented with window coordinates i.e. with origin at top-left. |
QSGImageNode::MirrorHorizontally
|
0x01
|
Texture coordinates are inverted in the horizontal axis with respect to window coordinates |
QSGImageNode::MirrorVertically
|
0x02
|
Texture coordinates are inverted in the vertical axis with respect to window coordinates |
The TextureCoordinatesTransformMode type is a typedef for QFlags <TextureCoordinatesTransformFlag>. It stores an OR combination of TextureCoordinatesTransformFlag values.
[override virtual]
QSGImageNode::
~QSGImageNode
()
Destroys the instance of QSGImageNode. The destructor is virtual.
[pure virtual]
QSGTexture::Filtering
QSGImageNode::
filtering
() const
Returns the filtering for this image node.
另请参阅 setFiltering ().
[pure virtual]
QSGTexture::Filtering
QSGImageNode::
mipmapFiltering
() const
Returns the mipmap filtering for this image node.
另请参阅 setMipmapFiltering ().
[pure virtual]
bool
QSGImageNode::
ownsTexture
() const
返回
true
if the node takes ownership of the texture; otherwise
false
.
另请参阅 setOwnsTexture ().
[static]
void
QSGImageNode::
rebuildGeometry
(
QSGGeometry
*
g
,
QSGTexture
*
texture
, const
QRectF
&
rect
,
QRectF
sourceRect
,
QSGImageNode::TextureCoordinatesTransformMode
texCoordMode
)
Updates the geometry g 采用 texture , the coordinates in rect , and the texture coordinates from sourceRect .
g is assumed to be a triangle strip of four vertices of type QSGGeometry::TexturedPoint2D .
texCoordMode is used for normalizing the sourceRect .
[pure virtual]
QRectF
QSGImageNode::
rect
() const
Returns the target rect of this image node.
另请参阅 setRect ().
[pure virtual]
void
QSGImageNode::
setFiltering
(
QSGTexture::Filtering
filtering
)
Sets the filtering to be used for this image node to filtering .
For smooth scaling, use QSGTexture::Linear . For normal scaling, use QSGTexture::Nearest .
另请参阅 filtering ().
[pure virtual]
void
QSGImageNode::
setMipmapFiltering
(
QSGTexture::Filtering
filtering
)
Sets the mipmap filtering to be used for this image node to filtering .
For smooth scaling between mip maps, use QSGTexture::Linear . For normal scaling, use QSGTexture::Nearest .
另请参阅 mipmapFiltering ().
[pure virtual]
void
QSGImageNode::
setOwnsTexture
(
bool
owns
)
Sets whether the node takes ownership of the texture to owns .
By default, the node does not take ownership of the texture.
另请参阅 ownsTexture ().
[pure virtual]
void
QSGImageNode::
setRect
(const
QRectF
&
rect
)
Sets the target rect of this image node to rect .
另请参阅 rect ().
这是重载函数。
Sets the rectangle of this image node to begin at ( x , y ) and have width w 和高度 h .
[pure virtual]
void
QSGImageNode::
setSourceRect
(const
QRectF
&
rect
)
Sets the source rect of this image node to rect .
另请参阅 sourceRect ().
这是重载函数。
Sets the rectangle of this image node to show its texture from ( x , y ) and have width w 和高度 h relatively to the QSGTexture::textureSize .
[pure virtual]
void
QSGImageNode::
setTexture
(
QSGTexture
*
texture
)
Sets the texture of this image node to texture .
使用 setOwnsTexture () to set whether the node should take ownership of the texture. By default, the node does not take ownership.
警告: An image node must have a texture before being added to the scenegraph to be rendered.
另请参阅 texture ().
[pure virtual]
void
QSGImageNode::
setTextureCoordinatesTransform
(
QSGImageNode::TextureCoordinatesTransformMode
mode
)
Sets the method used to generate texture coordinates to mode . This can be used to obtain correct orientation of the texture. This is commonly needed when using a third-party OpenGL library to render to texture as OpenGL has an inverted y-axis relative to Qt Quick.
另请参阅 textureCoordinatesTransform ().
[pure virtual]
QRectF
QSGImageNode::
sourceRect
() const
Returns the source rect of this image node.
另请参阅 setSourceRect ().
[pure virtual]
QSGTexture
*QSGImageNode::
texture
() const
Returns the texture for this image node.
另请参阅 setTexture ().
[pure virtual]
QSGImageNode::TextureCoordinatesTransformMode
QSGImageNode::
textureCoordinatesTransform
() const
Returns the mode used to generate texture coordinates for this node.
另请参阅 setTextureCoordinatesTransform ().