Esta es una libreria para generar graficos en 2D, añadiendo herramientas y utilidades extras para mejorar la generacion de graficos.
Project description
graphics-plane
graphics-plane es una librería de Python para crear gráficos en 2D y exportarlos a formato SVG. Permite generar y manipular figuras geométricas como rectángulos y triángulos, y combinarlas en un único dibujo dentro de un plano definido.
Instalación
Puedes instalar graphics-plane desde PyPI usando pip. Ejecuta el siguiente comando en tu terminal:
pip install graphics-plane
Uso Básico
Importar la Librería
Primero, importa las clases necesarias en tu script:
from graphics_plane import Plane, Rectangle, Triangle
Crear Figuras y Dibujo
-
Crear un objeto
Planeespecificando el ancho y alto del área de trabajo:plane = Plane(name="Sample Plane", width=200, height=200)
-
Crear instancias de las figuras:
# Crear un rectángulo y un triángulo con posiciones específicas rectangle = Rectangle(width=100, height=50, label="My Rectangle", x=50, y=50) triangle = Triangle(width=100, height=80, label="My Triangle", x=100, y=100)
-
Añadir las figuras al plano:
# Añadir las figuras al plano plane.add_shape(rectangle) plane.add_shape(triangle)
-
Mostrar y exportar el plano:
# Mostrar las figuras en el plano (para depuración) plane.show_shapes() # Exportar el plano completo a SVG plane.export_to_svg("sample_plane.svg")
Clases y Métodos
Shape
Representa una forma geométrica. Puedes definir la posición y exportar la figura a SVG.
-
Atributos:
width: Ancho de la figura.height: Alto de la figura.label: Etiqueta de la figura.x: Posición horizontal en el plano.y: Posición vertical en el plano.
-
Métodos:
draw(drawer): Dibuja la figura usando un objetodrawer(para exportación a SVG o para depuración conturtle).export_to_svg(drawer, file_name): Exporta la figura a un archivo SVG._draw_to_svg(shape_group, drawer): Método interno para añadir la figura al SVG.
Rectangle
Representa un rectángulo y hereda de Shape.
- Métodos:
draw(drawer): Dibuja el rectángulo utilizandoturtle, centrado en la posición (x,y)._draw_to_svg(shape_group, drawer): Añade el rectángulo al SVG con la posición ajustada.
Triangle
Representa un triángulo y hereda de Shape.
- Métodos:
draw(drawer): Dibuja el triángulo utilizandoturtle, centrado en la posición (x,y)._draw_to_svg(shape_group, drawer): Añade el triángulo al SVG con la posición ajustada.
Plane
Maneja un conjunto de formas y permite exportar el dibujo completo a SVG.
-
Atributos:
width: Ancho del plano.height: Alto del plano.shapes: Lista de figuras en el plano.
-
Métodos:
add_shape(shape): Añade una forma al plano.export_to_svg(filename): Exporta el plano completo a un archivo SVG.show_shapes(): Muestra todas las formas y sus posiciones utilizandoturtle(para depuración).show_with_turtle(): Utilizaturtlepara dibujar todas las figuras en el plano, brindando una representación visual interactiva.
Ejemplos
Aquí tienes un ejemplo completo de cómo usar la librería para crear y exportar un dibujo:
from graphics_plane import Plane, Rectangle, Triangle
# Crear una instancia de Plane
plane = Plane(name="Sample Plane", width=200, height=200)
# Crear un rectángulo y un triángulo
rectangle = Rectangle(width=100, height=50, label="My Rectangle", x=50, y=50)
triangle = Triangle(width=100, height=80, label="My Triangle", x=100, y=100)
# Añadir las figuras al plano
plane.add_shape(rectangle)
plane.add_shape(triangle)
# Mostrar las figuras en el plano
plane.show_shapes()
# Exportar el plano completo a SVG
plane.export_to_svg("sample_plane.svg")
Mantenedores
Este proyecto es mantenido por:
Contribuciones
Las contribuciones son bienvenidas. Si encuentras algún problema o deseas mejorar la librería, abre un issue o envía un pull request en el repositorio.
Licencia
Este proyecto está licenciado bajo la Licencia MIT.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for graphics_planes-1.0.2-py3-none-any.whl
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 | f3cd0833187493f72aa4e417b6ab4b34bb2b9b1e8e0a1d56f4048206e561b9ac |
|
| MD5 | d56381fc927af3be7f7a541967292e67 |
|
| BLAKE2b-256 | a004243fc573395decaf314baf9e68e3ed898d8f70a3c9fe6663faafb71d06cb |