QSGImageNode Class

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

该类在 Qt 5.8 引入。

公共类型

enum TextureCoordinatesTransformFlag { NoTransform, MirrorHorizontally, MirrorVertically }
flags TextureCoordinatesTransformMode

公共函数

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 image node class must have a texture before being added to the scene graph to be rendered.

成员类型文档编制

enum QSGImageNode:: TextureCoordinatesTransformFlag
flags QSGImageNode:: TextureCoordinatesTransformMode

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.

成员函数文档编制

[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 ().

void QSGImageNode:: setRect ( qreal x , qreal y , qreal w , qreal h )

这是重载函数。

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 ().

void QSGImageNode:: setSourceRect ( qreal x , qreal y , qreal w , qreal h )

这是重载函数。

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 ().