Skip to main content

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

  1. Crear un objeto Plane especificando el ancho y alto del área de trabajo:

    plane = Plane(name="Sample Plane", width=200, height=200)
    
  2. 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)
    
  3. Añadir las figuras al plano:

    # Añadir las figuras al plano
    plane.add_shape(rectangle)
    plane.add_shape(triangle)
    
  4. 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 objeto drawer (para exportación a SVG o para depuración con turtle).
    • 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 utilizando turtle, 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 utilizando turtle, 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 utilizando turtle (para depuración).
    • show_with_turtle(): Utiliza turtle para 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

graphics_planes-1.0.2.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

graphics_planes-1.0.2-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file graphics_planes-1.0.2.tar.gz.

File metadata

  • Download URL: graphics_planes-1.0.2.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for graphics_planes-1.0.2.tar.gz
Algorithm Hash digest
SHA256 ba646045efbc9af34145261ec0a48bb728b8e5dfe353f75eac9798c0ecb1176d
MD5 4c12cabb8f227352565567709461399f
BLAKE2b-256 3b59baa8b7b911b4eb33da6da519ffbbd99eed553bf3865cb7708034c84014fa

See more details on using hashes here.

File details

Details for the file graphics_planes-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for graphics_planes-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f3cd0833187493f72aa4e417b6ab4b34bb2b9b1e8e0a1d56f4048206e561b9ac
MD5 d56381fc927af3be7f7a541967292e67
BLAKE2b-256 a004243fc573395decaf314baf9e68e3ed898d8f70a3c9fe6663faafb71d06cb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page