¿Qué son las entidades en SymPy?

El módulo de geometría en SymPy es la clase base para todas las entidades geométricas de Python, lo que le permite crear objetos bidimensionales como líneas y círculos, polígonos, etc. Luego, podemos obtener más información al buscar colinealidad o detectar intersecciones. Cualquier objeto con cualidades geométricas particulares se denomina GeometryEntity.

clase sympy.geometry.entity.GeometryEntity(*args, **kwargs)

Todas las entidades geométricas heredan de esta clase básica. Esta clase no representa ninguna entidad geométrica específica; en su lugar, implementa varios métodos que son compartidos por todas las subclases.

Puntos

Una ubicación es un punto en geometría. No tiene dimensiones, es decir, no tiene ancho, largo o profundidad. Un punto representa un punto. La colinealidad es la propiedad de un conjunto de puntos que se encuentran en una sola línea en geometría. La colinealidad se refiere a un grupo de puntos que tienen esta propiedad. La función Point() se usa para crear un punto en el espacio. La clase de punto contiene el método de distancia() para encontrar la distancia entre dos puntos.

Python3

# import packages
from sympy.geometry import Point
 
# create points
x = Point(1, 1)
y = Point(2, 2)
z = Point(3, 3)
w = Point(5, 2)
 
# checking if points are collinear.
print(Point.is_collinear(x, y, z))
print(Point.is_collinear(y, z, w))
 
# calculating distance between two points
print('Distance between x and y points is ' + str(x.distance(y)))

Producción:

True
False
Distance between x and y points is sqrt(2)

La fórmula para la distancia de un punto desde el origen: 

Python3

# importing packages
from sympy.geometry import Point
from sympy.abc import a, b
 
# defining a point
p = Point(a, b)
 
# distance of the point from the origin
print(p.distance(Point(0, 0)))

Producción:

sqrt(a**2 + b**2)

Línea

Una línea se define como un conjunto de puntos que se extiende en dos direcciones indefinidamente. Solo tiene una dimensión, que es la longitud. Line() se crea con la ayuda de dos puntos. El método de intersection() se utiliza para encontrar el punto de intersección entre dos líneas. La función angle_ between() se usa para encontrar ángulos entre dos líneas.

Python3

# importing packages
from sympy.geometry import Point, Line
 
# creating two points
p1, p2 = Point(1, 2), Point(2, 0)
line1 = Line(p1, p2)
print(line1)
 
# creating two points
line2 = Line(Point(2, 4), Point(6, 2))
print(line2)
 
# intersection point of two lines
print(line1.intersection(line2))
 
# Angle between the two lines
print('Angle between two lines is : \
' + str(line1.angle_between(line2)))

Producción:

Line2D(Point2D(1, 2), Point2D(2, 0))
Line2D(Point2D(2, 4), Point2D(6, 2))
[Point2D(-2/3, 16/3)]
Angle between two lines is : acos(4/5)

Triángulo

Un triángulo es un polígono de tres lados con tres vértices y tres aristas. Es una de las formas geométricas más fundamentales. El triángulo se forma con la ayuda de tres puntos o vértices. La propiedad .area se usa para encontrar el área del triángulo.

Triángulo(vértice1,vértice2,vértice3)

Python3

# importing packages
from sympy.geometry import Point, Triangle
 
# constructing a triangle with three points
triangle = Triangle(Point(0, 0), Point(3, 0), Point(3, 3))
 
# area of the triangle
print('area of the triangle is : '+str(triangle.area))

Producción:

area of the triangle is : 9/2

Polígono

El método RegularPolygon() de la clase de geometría se usa para construir un RegularPolygon. Toma los siguientes parámetros:

clase sympy.geometry.polygon.RegularPolygon()

Python3

# importing packages
from sympy import RegularPolygon, Point
 
fig  = RegularPolygon(Point(0, 0), 1, 3)
 
# area of the regular polygon
print(fig.area)

Producción:

3*sqrt(3)/4

Circulo

Un círculo es una curva trazada por un punto que se mueve en un plano de manera que su distancia desde un punto dado es constante; alternativamente, es la forma formada por todos los puntos en un plano que están a una distancia determinada de un punto dado, el centro. 

clase sympy.geometry.ellipse.Circle(*args, **kwargs)

El método Circle() toma un punto como centro y otros parámetros como el radio y construye un círculo. La propiedad del área se usa para encontrar el área del círculo. 

Python3

# importing packages
from sympy import Circle, Point
 
fig = Circle(Point(0, 0), 3)
 
# area of the regular polygon
print(fig.area)

Producción:

9*pi

Elipse

Una elipse es una curva cerrada formada por puntos cuyas distancias a dos puntos fijos (focos) suman el mismo número. El centro es el lugar donde los focos se encuentran en el medio. La propiedad de una elipse es que una línea reflejada fuera de su borde desde un foco pasará por el otro.

clase sympy.geometry.ellipse.Ellipse(centro=Ninguno, hradius=Ninguno, vradius=Ninguno, excentricidad=Ninguno, **kwargs)

La ecuación de la elipse se puede construir con el método de ecuación(), toma símbolos como entradas. La propiedad .area se usa para mostrar el área del círculo y el atributo .circunference se usa para encontrar la circunferencia del círculo. 

Python3

# importing packages
from sympy.geometry import Ellipse, Point
from sympy.abc import x, y
 
# ellipse
ellipse = Ellipse(Point(0, 0), 5, 8)
 
# area of ellipse
print('area of the ellipse is : '+str(ellipse.area))
 
# equation of ellipse
print('equation of the ellipse is : ')
print(ellipse.equation(x, y))
 
# circumference of ellipse
print('circumference of the ellipse is : \
'+str(ellipse.circumference))

Producción:

area of the ellipse is : 40*pi
equation of the ellipse is : 
x**2/25 + y**2/64 - 1
circumference of the ellipse is : 32*elliptic_e(39/64)

Publicación traducida automáticamente

Artículo escrito por sarahjane3102 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *