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.1.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: graphics_planes-1.0.1.tar.gz
  • Upload date:
  • Size: 4.7 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.1.tar.gz
Algorithm Hash digest
SHA256 a99249c3dbb178651faf2ae56869928671f78b829d0358dc2885d896b2c707f3
MD5 d19471c1ce28e69736b3c04c043b6176
BLAKE2b-256 832266762862454974524de933fa785cb3793226c8380b09b6ee2d3607cab494

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graphics_planes-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 64283cae7ddbd375bdd554e6bbcfb697187d6eaeb9a22f337de77acb526c56c5
MD5 ca2f607a06ad21b4613934f80e879a4f
BLAKE2b-256 80d7c309c9e647aafb53eedb1ecc6095385a5bf84fd81c35e89e78f88086872c

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