SymPy - Entités
Le module de géométrie de SymPy permet la création d'entités bidimensionnelles telles que la ligne, le cercle, etc. Nous pouvons alors obtenir des informations à leur sujet telles que la vérification de la colinéarité ou la recherche d'intersection.
Point
La classe Point représente un point dans l'espace euclidien. L'exemple suivant vérifie la colinéarité des points -
>>> from sympy.geometry import Point 
>>> from sympy import * 
>>> x=Point(0,0) 
>>> y=Point(2,2) 
>>> z=Point(4,4) 
>>> Point.is_collinear(x,y,z)Output
True
>>> a=Point(2,3) 
>>> Point.is_collinear(x,y,a)Output
False
La méthode distance () de la classe Point calcule la distance entre deux points
>>> x.distance(y)Output
$2\sqrt2$
La distance peut également être représentée en termes de symboles.
Ligne
L'entité de ligne est obtenue à partir de deux objets Point. La méthode intersection () renvoie le point d'intersection si deux lignes se croisent.
>>> from sympy.geometry import Point, Line 
>>> p1, p2=Point(0,5), Point(5,0) 
>>> l1=Line(p1,p2)
>>> l2=Line(Point(0,0), Point(5,5)) 
>>> l1.intersection(l2)Output
[Point2D(5/2, 5/2)]
>>> l1.intersection(Line(Point(0,0), Point(2,2)))Output
[Point2D(5/2, 5/2)]
>>> x,y=symbols('x y') 
>>> p=Point(x,y) 
>>> p.distance(Point(0,0))Output
$\sqrt{x^2 + y^2}$
Triangle
Cette fonction construit une entité triangle à partir de trois objets ponctuels.
Triangle(a,b,c)
>>> t=Triangle(Point(0,0),Point(0,5), Point(5,0)) 
>>> t.areaOutput
$-\frac{25}{2}$
Ellipse
Une entité de géométrie elliptique est construite en passant un objet Point correspondant au centre et deux nombres chacun pour le rayon horizontal et vertical.
ellipse(center, hradius, vradius)
>>> from sympy.geometry import Ellipse, Line 
>>> e=Ellipse(Point(0,0),8,3) 
>>> e.areaOutput
$24\pi$
Le vradius peut être fourni indirectement en utilisant le paramètre d'excentricité.
>>> e1=Ellipse(Point(2,2), hradius=5, eccentricity=Rational(3,4)) 
>>> e1.vradiusOutput
$\frac{5\sqrt7}{4}$
le apoapsis de l'ellipse est la plus grande distance entre le foyer et le contour.
>>> e1.apoapsisOutput
$\frac{35}{4}$
L'instruction suivante calcule la circonférence de l'ellipse -
>>> e1.circumferenceOutput
$20E(\frac{9}{16})$
le equation La méthode de l'ellipse renvoie l'équation de l'ellipse.
>>> e1.equation(x,y)Output
$(\frac{x}{5}-\frac{2}{5})^2 + \frac{16(y-2)2}{175} - 1$