2009-10-22 33 views
15

¿Alguien sabe cuál es la mejor biblioteca de dibujo gráfico para C++, quiero una lib que puede dibujar formas básicas y puede hacer edición de imágenes, degradados y vector o 3D sería genial.C++ Graphic Drawing Library

Las funciones de dibujo de Windows son complicadas y no son muy avanzadas.

Respuesta

16

¿Puedo sugerir usar Cairo?

¡Esta biblioteca de vectores es muy rápida, prolija y potente! ¡Solo mira esos pretty examples!

¡Incluso hay integration with OpenGL si necesita texturas vectorizadas en 3D!

+2

+1 Porque no sabía sobre El Cairo. –

+0

Gracias por el enlace - nunca antes visto –

+0

Gracias, me olvidé de El Cairo, seguramente lo usaré. – Andrei

0

DirectX y OpenGL son dos opciones aquí. Ambos son complicados sin embargo.

+1

Sí, sé que probé OpenGl y tengo que decir que es muy difícil de aprender. – Andrei

0

Aunque destinado a 3D se puede llegar a hacer cosas 2D con Ogre3D

+0

Ogre3d es increíble, pero también aprende OpenGL o DirectX primero. –

+0

Ogre3D es muy bueno, pero también es muy difícil de aprender, Irrlicht es más fácil y poderoso también. – Andrei

3

Salida CImg Library.

CImg significa "Imagen Cool": Es fácil de usar y eficiente. Es una caja de herramientas muy agradable de para codificar imagenes en C++, y cubre potencialmente una amplia gama de aplicaciones de procesamiento de imágenes .

+0

Este aspecto es genial, lo intentaré. – Andrei

2

Bibliotecas de gráficos OpenGL, DirectX y los motores de juegos como Ogre3D pueden tener un nivel demasiado bajo para tareas como dibujar formas y degradados.

Tal vez debería echar un vistazo a El Cairo como se mencionó anteriormente (http://cairographics.org/), o simplemente en Qt que tiene un módulo de dibujo bastante completa y eficiente (http://qt.nokia.com/doc/4.5/examples.html#graphics-view) y permite alto nivel (GraphicsScene & GraphicsView) y bajo nivel (OpenGL) dibujo.

+0

Iré con El Cairo. Gracias. – Andrei

5

Probé AGG, Cairo, GDI + y Quartz (para Mac).

Creo que Quartz es el mejor, pero está disponible (siempre que lo sepa) solo para Mac.

AGG es potente, pero no está bien documentado. El desarrollador decidió reinventar la rueda e hizo su propio sistema de documentación, en lugar de usar algo estándar como doxygen. Existen buenos tutoriales para la comprensión básica, pero cuando profundizas encuentras que la documentación de la API es deficiente, imprecisa o incompleta.

GDI + es bastante básico en comparación con los demás, y está disponible solo para Windows.

Como resultado, creo que la mejor opción es probablemente El Cairo (a menos que pueda elegir desarrollar solo para Mac). Está bien documentado, el código está limpio y es rápido y poderoso.

+0

Creo que elegiré El Cairo, es muy fácil de usar. – Andrei

1

Para el dibujo 2D, SFML proporciona una buena API.

Vea algunos de la calidad tutorials para obtener más información.