2010-12-09 18 views
8

Estoy escribiendo una pequeña aplicación en Python, y quería que el usuario pudiera colocar, mover, rotar, etc. diferentes objetos en un lienzo. ¿Hay alguna manera de lograr eso sin una tonelada de codificación? Lo hago en mi tiempo libre, y solo tengo una experiencia limitada en PyQt.lienzo interactivo de gráficos vectoriales para python?

Eso es básicamente lo que hace cualquier editor de gráficos vectoriales (es decir, Inkscape, Corel Draw o Dr. Geo): les dan a los usuarios asas para mover, estirar y rotar objetos. Me preguntaba si hay algún widget o lo que sea que ya proporcione los identificadores y las operaciones básicas, por lo que solo tengo que implementar la reacción del programa a esas operaciones.

Como estoy planeando lanzar esto bajo una licencia libre (si alguna vez llego al punto de liberar) cualquier licencia de código abierto sería genial.

Gracias!

Respuesta

4

Mire Qt Graphics View Framework, es compatible con PyQt4. Otra opción es usar OpenGL, que requerirá más código pero brindará más flexibilidad y aceleración de hardware (también supported in PyQt4).

+0

Por lo que puedo ver, la Vista de gráficos de Qt ayuda mucho (proporciona los eventos de renderizado y mouse), pero tendré que crear una clase de artículo personalizada para obtener la traducción, etc., y dibujar el maneja. No es muy difícil, así que si no hay una mejor respuesta, creo que iré con esa. – Arnoques

+0

Ambos enlaces están muertos. – deadly

3

Una opción es GooCanvas y los enlaces de Python para ello. GooCanvas

0

Mire la biblioteca gaphas, implementa el cambio de tamaño del objeto/mover/editar de forma predeterminada, por lo que es rápido para comenzar.

Cuestiones relacionadas