TraceX
 
Loading...
Searching...
No Matches
LinkItem Class Reference

#include <linkitem.h>

Inheritance diagram for LinkItem:
Collaboration diagram for LinkItem:

Public Slots

void updateLink ()
 Met à jour la position du lien graphique entre les deux items.
 

Public Member Functions

 LinkItem (QGraphicsItem *source, QGraphicsItem *target, int tauxTracabilite)
 Constructeur de la classe LinkItem.
 
QRectF boundingRect () const override
 Retourne le rectangle englobant de l'élément graphique. (tout élément graphique est englobé par un rectangle)
 
void paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override
 Dessine le lien entre les deux items avec le taux de traçabilité.
 
int getTauxTracabilite () const
 Renvoie le taux de traçabilité associé à ce lien.
 

Constructor & Destructor Documentation

◆ LinkItem()

LinkItem::LinkItem ( QGraphicsItem * source,
QGraphicsItem * target,
int tauxTracabilite )

Constructeur de la classe LinkItem.

Crée un lien graphique entre deux éléments (noeuds) (source et cible), avec un taux de traçabilité spécifié.

Parameters
sourcePointeur vers l'élément (noeud) source du lien.
targetPointeur vers l'élément cible du lien.
tauxTracabiliteEntier représentant le taux de traçabilité associé à ce lien.

Ce constructeur initialise les membres "sourceItem", "targetItem" et "tauxTracabilite", puis appelle "updateLink()" pour calculer(nouvel emplacement en cas de déplacement des neouds par l'user) et afficher le lien entre les deux items.

Author
malek
Here is the call graph for this function:

Member Function Documentation

◆ boundingRect()

QRectF LinkItem::boundingRect ( ) const
override

Retourne le rectangle englobant de l'élément graphique. (tout élément graphique est englobé par un rectangle)

lorsque l'élément change. Le rectangle retourné correspond à la ligne tracée entre les deux items (source et cible)

Returns
QRectF Le rectangle englobant normalisé et ajusté autour de la ligne.
Author
malek

◆ getTauxTracabilite()

int LinkItem::getTauxTracabilite ( ) const

Renvoie le taux de traçabilité associé à ce lien.

Ce taux est exprimé en pourcentage (entier de 0 à 100) et reflète la couverture ou la force du lien entre deux exigences.

Returns
Un entier représentant le pourcentage de traçabilité du lien.
Author
Jacques Zheng
Date
12/04/2025

◆ paint()

void LinkItem::paint ( QPainter * painter,
const QStyleOptionGraphicsItem * option,
QWidget * widget )
override

Dessine le lien entre les deux items avec le taux de traçabilité.

Elle effectue les actions suivantes :

  • Trace une ligne noire entre l'item source et l'item cible.
  • Calcule le milieu de la ligne pour y afficher le taux de traçabilité.
  • Efface proprement la zone du texte pour éviter les superpositions.(résidu du taux de tracabilite)
  • Affiche le taux de traçabilité (en pourcentage) centré sur la ligne.
Parameters
painterPointeur vers le QPainter utilisé pour dessiner.
optionOptions de style fournies par Qt (non utilisées ici).
widgetWidget parent du dessin (non utilisé ici).

◆ updateLink

void LinkItem::updateLink ( )
slot

Met à jour la position du lien graphique entre les deux items.

Cette méthode recalcule et met à jour la ligne reliant l'item (noeud) source à l'item (noeud) cible, en prenant en compte leurs positions et tailles actuelles dans la scène.

Le lien est dessiné depuis le bas du cercle source jusqu'au haut du cercle cible,

  • Si l’un des deux items n’est pas défini ("nullptr"), la fonction quitte immédiatement.
  • "prepareGeometryChange()" est appelé pour informer Qt que la géométrie de l’objet va changer, évitant ainsi les artefacts visuels (les résidus du taux de tracabilité).
  • La ligne ("line") est mise à jour avec les nouveaux points calculés.
  • Un appel à "update()" permet de redessiner le lien avec les nouvelles coordonnées.
    Author
    malek
Here is the caller graph for this function:

The documentation for this class was generated from the following files: