===== QLineF ===== La classe QLineF propose un vecteur à deux dimensions utilisant une précision décimale. [[#Description détaillée|Plus d'informations...]] ==== Description détaillée ==== La classe QLineF propose un vecteur à deux dimensions utilisant une précision décimale. Une QLineF décrit une ligne de longueur finie (un segment de droite) sur une surface à deux dimensions. QLineF définit les points de départ et d'arrivée de la ligne en utilisant une précision décimale pour les coordonnées des points. Utilisez la fonction [[#toLine()]] pour récupérer une copie de la ligne en nombre entier. | {{ http://qt.developpez.com/doc/4.6/images/qline-point.png }} | {{ http://qt.developpez.com/doc/4.6/images/qline-coordinates.png }} | Les positions des points de départ et d'arrivée de la ligne peuvent être retrouvées avec les fonctions [[#p1()]], [[#x1()]], [[#y1()]], [[#p2()]], [[#x2()]] et [[#y2()]]. Les fonctions [[#dx()]] et [[#dy()]] retournent les composantes horizontales et verticales de la ligne, respectivement. La longueur de la ligne peut être retrouvée en utilisant la fonction [[#length()]] et modifiée en utilisant la fonction [[#setLength()]]. De façon similaire, [[#angle()]] et [[#setAngle()]] sont respectivement utilisées pour récupérer et modifier l'angle de la ligne. Utilisez [[#isNull()]] pour déterminer si QLineF représente une ligne valide ou nulle. La fonction [[#intersect()]] détermine le type [[#IntersectType-enum|IntersectType]] pour cette ligne et une ligne donnée, tandis que la fonction [[#angle()]] retourne l'angle entre les lignes. De plus, la fonction [[#unitVector()]] retourne une ligne qui a le même point de départ que cette ligne mais avec une longueur de 1, tandis que la fonction [[#normalVector()]] retourne une ligne qui est perpendiculaire à cette ligne avec le même point de départ et la même longueur. Finalement, la ligne peut être translatée en utilisant la fonction [[#translate()]] et peut être parcourue en utilisant la fonction [[#pointAt()]]. Voir aussi [[QLine]], [[QPolygonF]] et [[QRectF]]. ==== Types ==== === IntersectType-enum === ''enum QLineF::IntersectType'' Décrit l'intersection entre deux lignes. | {{ http://qt.developpez.com/doc/4.6/images/qlinef-unbounded.png }} | {{ http://qt.developpez.com/doc/4.6/images/qlinef-bounded.png }} | | ''QLineF::UnboundedIntersection'' | ''QLineF::BoundedIntersection'' | ^ Constante ^ Valeur ^ Description ^ | ''QLineF::NoIntersection'' | 0 | Indique que les lignes ne se croisent pas, c'est-à-dire qu'elles sont parallèles. | | ''QLineF::UnboundedIntersection'' | 2 | Les deux lignes se croisent mais pas dans la plage définie par leur longueur. Dans ce cas, les lignes ne sont pas parallèles. | [[#intersect()]] retournera également cette valeur si le point d'intersection est le point de départ ou d'arrivée de seulement une des lignes. ^ Constante ^ Valeur ^ Description ^ | ''QLineF::BoundedIntersection'' | 1 | Les deux lignes se croisent entre leurs point de départ et d'arrivée respectifs. | Voir aussi [[#intersect()]]. ==== Fonctions membres ==== === QLineF() === ''QLineF::QLineF ()'' Construit une ligne nulle. === QLineF() === ''QLineF::QLineF ( const [[QPointF]] & p1, const [[QPointF]] & p2 )'' Construit un objet ligne qui représente la ligne entre les points ''p1'' et ''p2''. === QLineF() === ''QLineF::QLineF ( [[qtglobal#qreal-typedef|qreal]] x1, [[qtglobal#qreal-typedef|qreal]] y1, [[qtglobal#qreal-typedef|qreal]] x2, [[qtglobal#qreal-typedef|qreal]] y2 )'' Construit un objet ligne qui représente la ligne entre les points de coordonnées (''x1'', ''y1'') et (''x2'', ''y2''). === QLineF() === ''QLineF::QLineF ( const [[QLine]] & line )'' Construit un objet [[QLineF]] à partir d'une ligne en précision entière ''line'' donnée. Voir aussi [[#toLine()]]. === p1() === ''[[QPointF]] QLineF::p1 () const'' Retourne le point de départ de la ligne. Voir aussi [[#setP1()]], [[#x1()]], [[#y1()]] et [[#p2()]]. === p2() === ''[[QPointF]] QLineF::p2 () const'' Retourne le point d'arrivée de la ligne. Voir aussi [[#setP2()]], [[#x2()]], [[#y2()]] et [[#p1()]]. === x1() === ''[[qtglobal#qreal-typedef|qreal]] QLineF::x1 () const'' Retourne la coordonnée ''x'' du point de départ de la ligne. Voir aussi [[#p1()]]. === x2() === ''[[qtglobal#qreal-typedef|qreal]] QLineF::x2 () const'' Retourne la coordonnée ''x'' du point d'arrivée de la ligne. Voir aussi [[#p2()]]. === y1() === ''[[qtglobal#qreal-typedef|qreal]] QLineF::y1 () const'' Retourne la coordonnée ''y'' du point de départ de la ligne. Voir aussi [[#p1()]]. === y2() === ''[[qtglobal#qreal-typedef|qreal]] QLineF::y2 () const'' Retourne la coordonnée ''y'' du point d'arrivée de la ligne. Voir aussi [[#p2()]]. === angle() === ''[[qtglobal#qreal-typedef|qreal]] QLineF::angle () const'' Retourne l'angle de la ligne en degrés. Les valeurs positives pour les angles signifient le sens anti-horaire tandis que les valeurs négatives signifient le sens horaire. Zéro degré est à la position 3 heures. Cette fonction a été introduite dans Qt 4.4. Voir aussi [[#setAngle()]]. === angleTo() === ''[[qtglobal#qreal-typedef|qreal]] QLineF::angleTo ( const QLineF & line ) const'' Retourne l'angle (en degrés) de cette ligne à la ligne donnée, prenant en compte la direction des lignes. Si les lignes ne se croisent pas dans cette plage, c'est le point d'intersection des lignes étendues qui sert d'origine (voir [[#IntersectType-enum|QLineF::UnboundedIntersection]]). La valeur retournée représente le nombre de degrés que vous devez ajouter à cette ligne pour qu'elle ait le même angle que la ligne donnée, en allant dans le sens anti-horaire. Cette fonction a été introduite dans Qt 4.4. Voir aussi [[#intersect()]]. === dx() === ''[[qtglobal#qreal-typedef|qreal]] QLineF::dx () const'' Retourne la composante horizontale (''x'') du vecteur de la ligne. Voir aussi [[#dy()]] et [[#pointAt()]]. === dy() === ''[[qtglobal#qreal-typedef|qreal]] QLineF::dy () const'' Retourne la composante verticale (''y'') du vecteur de la ligne. Voir aussi [[#dx()]] et [[#pointAt()]]. === fromPolar() === ''QLineF QLineF::fromPolar ( [[qtglobal#qreal-typedef|qreal]] length, [[qtglobal#qreal-typedef|qreal]] angle ) [static]'' Retourne une [[QLineF]] avec la longueur ''length'' et l'angle ''angle'' donnés. Le premier point de cette ligne sera à l'origine. Les valeurs positives pour les angles signifient le sens anti-horaire tandis que les valeurs négatives signifient le sens horaire. Zéro degré est à la position 3 heures. Cette fonction a été introduite dans Qt 4.4. === intersect() === ''[[#IntersectType-enum|IntersectType]] QLineF::intersect ( const QLineF & line, [[QPointF]] * intersectionPoint ) const'' Retourne une valeur indiquant si oui ou non, cette ligne croise la ligne ''line'' donnée. Le point d'intersection actuel est placé dans ''intersectionPoint'' (si le pointeur est valide). Si les lignes sont parallèles, le point d'intersection est indéfini. === isNull() === ''bool QLineF::isNull () const'' Retourne ''true'' si la ligne n'est pas définie avec un point de départ et d'arrivée valide ; sinon retourne ''false''. === length() === ''[[qtglobal#qreal-typedef|qreal]] QLineF::length () const'' Retourne la longueur de la ligne. Voir aussi [[#setLength()]]. === normalVector() === ''QLineF QLineF::normalVector () const'' Retourne une ligne qui est perpendiculaire à cette ligne avec le même point de départ et la même longueur. {{ http://qt.developpez.com/doc/4.6/images/qlinef-normalvector.png }} Voir aussi [[#unitVector()]]. === pointAt() === ''[[QPointF]] QLineF::pointAt ( [[qtglobal#qreal-typedef|qreal]] t ) const'' Retourne le point à la position paramétrée indiquée par ''t''. La fonction retourne le point de départ de la ligne si ''t = 0'' et le point d'arrivée si ''t = 1''. Voir aussi [[#dx()]] et [[#dy()]]. === setP1() === ''void QLineF::setP1 ( const QPointF & p1 )'' Définit le point de départ de cette ligne comme étant ''p1''. Cette fonction a été introduite dans Qt 4.4. Voir aussi [[#setP2() et [[#p1()]]. === setP2() === ''void QLineF::setP2 ( const QPointF & p2 )'' Définit le point d'arrivée de cette ligne comme étant ''p2''. Cette fonction a été introduite dans Qt 4.4. Voir aussi [[#setP1()]] et [[#p2()]]. === setAngle() === ''void QLineF::setAngle ( [[qtglobal#qreal-typedef|qreal]] angle )'' Définit l'angle de la ligne avec l'angle ''angle'' donné (en degrés). La position du second point sera changée pour que la ligne obtienne l'angle voulu. Les valeurs positives pour les angles signifient le sens anti-horaire tandis que les valeurs négatives signifient le sens horaire. Zéro degré est à la position 3 heures. Cette fonction a été introduite dans Qt 4.4. Voir aussi [[#angle()]]. === setLength() === ''void QLineF::setLength ( [[qtglobal#qreal-typedef|qreal]] length )'' Définit la longueur de la ligne à ''length''. [[QLineF]] déplacera le point d'arrivée ([[#p2()]]) pour donner à la ligne sa nouvelle longueur. Si la ligne est une ligne nulle, la longueur restera nulle quelle que soit la longueur spécifiée. Voir aussi [[#length()]] et [[#isNull()]]. === setLine() === ''void QLineF::setLine ( [[qtglobal#qreal-typedef|qreal]] x1, [[qtglobal#qreal-typedef|qreal]] y1, [[qtglobal#qreal-typedef|qreal]] x2, [[qtglobal#qreal-typedef|qreal]] y2 )'' Définit cette ligne avec, comme départ, le point de coordonnéess ''(x1 ; y1)'' et, comme arrivée, le point de coordonnéess ''(x2 ; y2)''. Cette fonction a été introduite dans Qt 4.4. Voir aussi [[#setP1()]], [[#setP2()]], [[#p1()]] et [[#p2()]]. === setPoints() === ''void QLineF::setPoints ( const [[QPointF]] & p1, const [[QPointF]] & p2 )'' Défini le point de départ de cette ligne à ''p1'' et le point d'arrivé à ''p2''. Cette fonction a été introduite dans Qt 4.4. Voir aussi [[#setP1()]], [[#setP2()]], [[#p1()]] et [[#p2()]]. === toLine() === ''QLine QLineF::toLine () const'' Retourne une copie de la ligne en nombre entier. Notez que la ligne entière retournée voit les coordonnées de ses points de départ et d'arrivée arrondies à l'entier le plus proche. Voir aussi [[#QLineF()]]. === translate() === ''void QLineF::translate ( const [[QPointF]] & offset )'' Translate cette ligne avec le décalage ''offset'' donné. === translate() === ''void QLineF::translate ( [[qtglobal#qreal-typedef|qreal]] dx, [[qtglobal#qreal-typedef|qreal]] dy )'' Il s'agit d'une fonction surchargée. Translate cette ligne avec la distance spécifiée par ''dx'' et ''dy''. === translated() === ''QLineF QLineF::translated ( const [[QPointF]] & offset ) const'' Retourne la ligne translatée par le décalage ''offset'' donné. Cette fonction a été introduite dans Qt 4.4. === translated() === ''QLineF QLineF::translated ( [[qtglobal#qreal-typedef|qreal]] dx, [[qtglobal#qreal-typedef|qreal]] dy ) const'' Il s'agit d'une fonction surchargée. Retourne la ligne translatée par la distance spécifiée par ''dx'' et ''dy''. Cette fonction a été introduite dans Qt 4.4. === unitVector() === ''QLineF QLineF::unitVector () const'' Retourne le vecteur unitaire pour cette ligne, c'est-à-dire une ligne commençant au même point de départ que cette ligne mais avec une longueur de 1.0. Voir aussi [[#normalVector()]]. === operator!=() === ''bool QLineF::operator!= ( const QLineF & line ) const'' Retourne ''true'' si la ligne ''line'' donnée n'est pas la même que cette ligne. Une ligne est différente d'une autre si, soit son point de départ, soit son point d'arrivée est différent ou si l'ordre interne des points est différent. === operator==() === ''bool QLineF::operator== ( const QLineF & line ) const'' Retourne ''true'' si la ligne ''line'' donnée est la même que cette ligne. Une ligne est identique à une autre si les points de départ et d'arrivée sont identiques et si l'ordre interne des points est le même. ==== En relation mais non membres de la classe ==== === operator<<() === ''[[QDataStream]] & operator<< ( [[QDataStream]] & stream, const QLineF & line )'' Écrit la ligne ''line'' donnée dans le flux ''stream'' donné et retourne une référence sur le flux. Voir aussi [[datastreamformat|le format des opérateurs QDataStream]]. === operator>>() === ''[[QDataStream]] & operator>> ( [[QDataStream]] & stream, QLineF & line )'' Lit une ligne à partir du flux ''stream'' donné, la place dans la ligne ''line'' donnée et retourne une référence sur le flux. Voir aussi [[datastreamformat|le format des opérateurs QDataStream]]. ==== Remerciements ==== Merci à pour la traduction, à pour la traduction et la relecture ainsi qu'à et pour la relecture !