Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Classes principales  ·  Annotées  ·  Classes groupées  ·  Modules  ·  Fonctions  · 

QQuickQGraphicsTransform3D Class

The QQuickQGraphicsTransform3D class is an abstract base class for building 3D transformations. More...

 #include <QQuickQGraphicsTransform3D>

Inherits: QObject.

Inherited by: QGraphicsBillboardTransform, QGraphicsLookAtTransform, QGraphicsRotation3D, QGraphicsScale3D, and QGraphicsTranslation3D.

This class was introduced in Qt 4.8.

Public Functions

QQuickQGraphicsTransform3D(QObject * parent = 0)
~QQuickQGraphicsTransform3D()
virtual void applyTo(QMatrix4x4 * matrix) const = 0
virtual QQuickQGraphicsTransform3D * clone(QObject * parent = 0) const = 0
  • 31 public functions inherited from QObject

Signals

void transformChanged()

Additional Inherited Members

  • 1 property inherited from QObject
  • 1 public slot inherited from QObject
  • 11 static public members inherited from QObject
  • 9 protected functions inherited from QObject

Detailed Description

The QQuickQGraphicsTransform3D class is an abstract base class for building 3D transformations.

QQuickQGraphicsTransform3D lets you create and control advanced transformations that can be configured independently using specialized properties. Scene nodes have an associated list of transforms, which are applied in order, one at a time, to the modelview matrix. Transformations are computed in true 3D space using QMatrix4x4.

QQuickQGraphicsTransform3D is particularly useful for animations. Whereas QGLPainter::modelViewMatrix() lets you assign any transform directly, there is no direct way to interpolate between two different transformations (e.g., when transitioning between two states, each for which the item has a different arbitrary transform assigned). Using QQuickQGraphicsTransform3D you can interpolate the property values of each independent transformation. The resulting operation is then combined into a single transform which is applied to the modelview matrix during drawing.

If you want to create your own configurable transformation, you can create a subclass of QQuickQGraphicsTransform3D (or any or the existing subclasses), and reimplement the pure virtual applyTo() function, which takes a pointer to a QMatrix4x4. Each operation you would like to apply should be exposed as properties (e.g., customTransform->setVerticalShear(2.5)). Inside you reimplementation of applyTo(), you can modify the provided transform respectively.

See also QGraphicsScale3D, QGraphicsRotation3D, QGraphicsTranslation3D, and QGraphicsBillboardTransform.

Member Function Documentation

QQuickQGraphicsTransform3D::QQuickQGraphicsTransform3D(QObject * parent = 0)

Constructs a 3D transformation and attaches it to parent.

QQuickQGraphicsTransform3D::~QQuickQGraphicsTransform3D()

Destroys this 3D transformation.

void QQuickQGraphicsTransform3D::applyTo(QMatrix4x4 * matrix) const [pure virtual]

Applies the effect of this transformation to the specified modelview matrix.

QQuickQGraphicsTransform3D * QQuickQGraphicsTransform3D::clone(QObject * parent = 0) const [pure virtual]

Clones a copy of this transformation and attaches the clone to parent.

void QQuickQGraphicsTransform3D::transformChanged() [signal]

Signal that is emitted whenever any of the transformation's parameters are changed.

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 5.0-snapshot
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web