Package com.tech.app.models
Class Arc
- java.lang.Object
 - 
- com.tech.app.models.Arc
 
 
- 
- All Implemented Interfaces:
 java.io.Serializable
public class Arc extends java.lang.Object implements java.io.SerializableClasse pour créer l'objet Arc.- See Also:
 - Serialized Form
 
 
- 
- 
Field Summary
Fields Modifier and Type Field Description java.awt.geom.Path2DarrowHeadjava.awt.geom.AffineTransformatjava.awt.geom.QuadCurve2D.Doublecourbejava.awt.geom.Line2D.Doubleformejava.awt.geom.Path2D.DoublehitboxPlaceplaceprivate booleanplaceToTransitionprivate intpoidsprivate PointControlepointCtr1java.awt.geom.AffineTransformreverseprivate Transitiontransition 
- 
Constructor Summary
Constructors Constructor Description Arc(Place place)Constructeur d'arc utilisé dans la classe Transition.Arc(Place place, int poids)Constructeur d'arcArc(Place place, int poids, double xOrigin, double yOrigin, boolean placeToTransition, Transition transition)Constructeur d'arc utilisé dans DrawPanel lorsque l'utilisateur clique sur la zone de dessin en ayant selectionné l'outil arc. 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static doubleangleBetween2Lines(java.awt.geom.Line2D.Double line1, java.awt.geom.Line2D.Double line2)Méthode qui permet de calculer l'angle entre deux droites.java.awt.geom.Path2D.DoublearcHitbox(double len)Méthode qui permet de créer une hitbox qui suit la courbure de l'arc.booleancontaining(java.awt.geom.Point2D.Double origin, int size, java.awt.geom.Point2D.Double toCompare)Retourne true lorsque la différence absolue entre les coordonnées du point d'origine et du point à comparer (toCompare) est inférieur à la valeur sizebooleancontainsControlPoint1(double x, double y)Retourne true lorsque les coordonnées de la souris sont à peu près égales aux coordonnées transformées par la transformation affine de l'arc du point de contrôlevoiddraw(java.awt.Graphics g)Méthode que l'on appelle dans Transition pour dessiner un arc.private voiddrawArrow(java.awt.Graphics2D g2, double oX, double oY, double dX, double dY)Méthode qui permet de dessiner un arc.java.awt.geom.AffineTransformgetAt()Méthode qui permet de récupérer la transformée affine de l'arc.PlacegetPlace()Méthode qui permet de récupérer la place liée à l'arc.intgetPoids()Méthode qui permet de récupérer le poids de l'arc.PointControlegetPointCtr1()Méthode qui permet de récupérer le point de controle de la courbe.java.awt.geom.AffineTransformgetReverseAt()Méthode qui permet de récupérer la transformée affin inverse de l'arc.TransitiongetTransition()Méthode qui permet de récupérer la transition liée à l'arc.booleanisPlaceToTransition()Méthode qui permet de savoir si un arc est dans le sens place -> transition.voidsetPlace(Place place)Méthode qui permet de donner/modifier la place liée à l'arc.voidsetPoids(int poids)Méthode qui permet de donner/modifier le poids d'un arc.java.lang.StringtoString()Méthode qui permet d'afficher les caractéristiques de l'arc : {place,poids}.voidupdatePosition(double x, double y)Méthode qui permet de mettre à jour les coordonnées de l'arc. 
 - 
 
- 
- 
Field Detail
- 
place
public Place place
 
- 
poids
private int poids
 
- 
placeToTransition
private final boolean placeToTransition
 
- 
transition
private final Transition transition
 
- 
pointCtr1
private final PointControle pointCtr1
 
- 
forme
public java.awt.geom.Line2D.Double forme
 
- 
courbe
public java.awt.geom.QuadCurve2D.Double courbe
 
- 
at
public java.awt.geom.AffineTransform at
 
- 
reverse
public java.awt.geom.AffineTransform reverse
 
- 
hitbox
public java.awt.geom.Path2D.Double hitbox
 
- 
arrowHead
public java.awt.geom.Path2D arrowHead
 
 - 
 
- 
Constructor Detail
- 
Arc
public Arc(Place place, int poids, double xOrigin, double yOrigin, boolean placeToTransition, Transition transition)
Constructeur d'arc utilisé dans DrawPanel lorsque l'utilisateur clique sur la zone de dessin en ayant selectionné l'outil arc.- Parameters:
 place- : Place.poids- : poids de l'arc, par défaut 1.xOrigin- : coordonnée x de l'origine de l'arc.yOrigin- : coordonnée y de l'origine de l'arc.placeToTransition- : booléen qui indique si l'arc est dans le sens place ► transition.transition- : Transition.
 
- 
Arc
public Arc(Place place, int poids)
Constructeur d'arc- Parameters:
 place- : Place.poids- : poids de l'arc.
 
- 
Arc
public Arc(Place place)
Constructeur d'arc utilisé dans la classe Transition.- Parameters:
 place- : Place.
 
 - 
 
- 
Method Detail
- 
getPlace
public Place getPlace()
Méthode qui permet de récupérer la place liée à l'arc.- Returns:
 - place.
 
 
- 
getTransition
public Transition getTransition()
Méthode qui permet de récupérer la transition liée à l'arc.- Returns:
 - transition
 
 
- 
isPlaceToTransition
public boolean isPlaceToTransition()
Méthode qui permet de savoir si un arc est dans le sens place -> transition.- Returns:
 - Vrai ou Faux.
 
 
- 
getPoids
public int getPoids()
Méthode qui permet de récupérer le poids de l'arc.- Returns:
 - poids.
 
 
- 
setPlace
public void setPlace(Place place)
Méthode qui permet de donner/modifier la place liée à l'arc.- Parameters:
 place- : Place.
 
- 
setPoids
public void setPoids(int poids)
Méthode qui permet de donner/modifier le poids d'un arc.- Parameters:
 poids- Poids de l'arc
 
- 
toString
public java.lang.String toString()
Méthode qui permet d'afficher les caractéristiques de l'arc : {place,poids}.- Overrides:
 toStringin classjava.lang.Object- Returns:
 - caractéristiques de l'arc.
 
 
- 
drawArrow
private void drawArrow(java.awt.Graphics2D g2, double oX, double oY, double dX, double dY)Méthode qui permet de dessiner un arc.- Parameters:
 g2- : Graphics2D.oX- : coordonnée x de l'origine de l'arcoY- : coordonnée y de l'origine de l'arcdX- : coordonnée x de la destination de l'arcdY- : coordonnée y de la destination de l'arc
 
- 
angleBetween2Lines
public static double angleBetween2Lines(java.awt.geom.Line2D.Double line1, java.awt.geom.Line2D.Double line2)Méthode qui permet de calculer l'angle entre deux droites.- Parameters:
 line1- ligne droite entre le centre de la place et le centre de la transition.line2- ligne droite entre le centre de l'objet pointé et le point de controle de la courbe (arc).- Returns:
 - angle en degré
 
 
- 
draw
public void draw(java.awt.Graphics g)
Méthode que l'on appelle dans Transition pour dessiner un arc.- Parameters:
 g- : Graphics
 
- 
arcHitbox
public java.awt.geom.Path2D.Double arcHitbox(double len)
Méthode qui permet de créer une hitbox qui suit la courbure de l'arc.- Parameters:
 len- distance entre la place et la transition.- Returns:
 - hitbox
 
 
- 
containing
public boolean containing(java.awt.geom.Point2D.Double origin, int size, java.awt.geom.Point2D.Double toCompare)Retourne true lorsque la différence absolue entre les coordonnées du point d'origine et du point à comparer (toCompare) est inférieur à la valeur size- Parameters:
 origin- Point.Double d'originesize- Valeur maximale de la différence des coordonnées lors de la comparaisontoCompare- Point.Double de comparaison- Returns:
 - Booléen
 
 
- 
containsControlPoint1
public boolean containsControlPoint1(double x, double y)Retourne true lorsque les coordonnées de la souris sont à peu près égales aux coordonnées transformées par la transformation affine de l'arc du point de contrôleNe fonctionne pas vraiment pour l'instant
- Parameters:
 x- Coordonnée X de la sourisy- Coordonnée Y de la souris- Returns:
 - Vrai ou Faux
 
 
- 
getPointCtr1
public PointControle getPointCtr1()
Méthode qui permet de récupérer le point de controle de la courbe.- Returns:
 - point de controle.
 
 
- 
getAt
public java.awt.geom.AffineTransform getAt()
Méthode qui permet de récupérer la transformée affine de l'arc.- Returns:
 - transformée affine.
 
 
- 
getReverseAt
public java.awt.geom.AffineTransform getReverseAt()
Méthode qui permet de récupérer la transformée affin inverse de l'arc.- Returns:
 - transformée affine inverse.
 
 
- 
updatePosition
public void updatePosition(double x, double y)Méthode qui permet de mettre à jour les coordonnées de l'arc.- Parameters:
 x- : x.y- : y.
 
 - 
 
 -