Class Line

La classe Line permet de manipuler des lignes de manière uniforme sur Artichow. Une ligne est composée de deux Point.

Les classes suivantes dérivent de Line :

Méthodes et propriétés

Documentation

  • protected Point $p1
    Le premier point de la ligne.
  • protected Point $p2
    Le second point de la ligne.
  • private float $slope
    La pente (ou coefficient directeur) de la droite.
  • private float $origin
    La valeur de l'ordonnée à l'origine de la droite.
  • public __construct(Point $p1, Point $p2, int $style := Line::SOLID, int $thickness := 1)
    Déclare une nouvelle ligne des points $p1 à $p2. La ligne est de style $style (Line::SOLID pour une ligne continue, Line::DOTTED pour une ligne pointillée ou encore Line::DASHED) et d'épaisseur $thickness.
  • public static build(int $x1, int $y1, int $x2, int $y2)
    Construit une ligne à partir des coordonnées ($x1, $y1) et ($x2, $y2)
  • public setX(int $x1, int $x2)
    Change les coordonnées X des deux points de la ligne pour $x1 et $x2.
  • public setY(int $y1, int $y2)
    Change les coordonnées Y des deux points de la ligne pour $y1 et $y2.
  • public setLocation(Point $p1, Point $p2)
    Change l'emplacement de la ligne pour les points $p1 et $p2 passés en paramètre.
  • public array getLocation()
    Retourne la position de la ligne dans un tableau à deux valeurs.
    
    <?php
    $line = new Line(new Point(1, 2), new Point(3, 4));
    list($p1, $p2) = $line->getLocation();
    // $p1 == new Point(1, 2)
    // $p2 == new Point(3, 4)
    ?>
    
    
  • public float getSize()
    Retourne la taille de la ligne en pixels.
  • public float getSlope()
    • Disponible depuis Artichow 1.0.9
    Renvoie la valeur de la pente de la ligne. Si celle-ci est verticale, la pente vaudra NULL; si elle est horizontale, la pente vaudra 0. La valeur est calculée uniquement lorsqu'elle est demandée.
  • public float getOrigin()
    • Disponible depuis Artichow 1.0.9
    Renvoie la valeur de l'ordonnée à l'origine. Si la ligne est verticale, l'ordonnée à l'origine vaudra NULL. La valeur est calculée uniquement lorsqu'elle est demandée.
  • public array getEquation()
    • Disponible depuis Artichow 1.0.9
    Renvoie un tableau contenant la pente et l'ordonnée à l'origine de la ligne.
  • public float getXFrom(float $y)
    • Disponible depuis Artichow 1.0.9
    Renvoie la valeur de l'abscisse du point d'ordonnée $y situé sur la droite portant la ligne. Si la ligne est horizontale et que $y est différent de l'ordonnée à l'origine, aucun point ne pourra être trouvé et la méthode renverra NULL.
  • public float getYFrom(float $x)
    • Disponible depuis Artichow 1.0.9
    Renvoie la valeur de l'ordonnée du point d'abscisse $x situé sur la droite portant la ligne. Si la ligne est verticale et qu'aucun point correspondant à $x ne peut être trouvé, la méthode renverra NULL.
  • public bool isPoint()
    Retourne TRUE si la ligne peut être considérée comme un point, FALSE sinon.
  • public bool isHorizontal()
    Retourne TRUE si la ligne est horizontale, FALSE sinon.
  • public bool isVertical()
    Retourne TRUE si la ligne est verticale, FALSE sinon.
  • public bool isTopToBottom(Polygon $polygon)
    • Disponible depuis Artichow 1.0.9
    Renvoie TRUE si la ligne remplit toute la hauteur du rectangle encadrant le polygone $polygon, FALSE sinon.
  • public bool isLeftToRight(Polygon $polygon)
    • Disponible depuis Artichow 1.0.9
    Renvoie TRUE si la ligne remplit toute la largeur du rectangle encadrant le polygone $polygon, FALSE sinon.