|
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ésDocumentation
-
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.
|
|