Un dia domingo despues de googlear en la busqueda de un control chart que fuera totalmente funcional para incluirlo como componente en Visual C++ , decidí programar mi propio control, ya que los que encontré eran muy pesados para distribuir (Objetos OLE) ó las clases ofrecian tanto que llegaban a ser tan complejas que la integración con un proyecto se hacia muy dificil.
En realidad no fue nada sencillo, por que tenia muchos factores importantes para tomar en cuenta, pero lo que necesitaba en esa semana era un control que muestre graficas de barra y sectores (nada mas).
Cuando terminé de programarlo tuve que lidiar con el parpadeo y algunos otros problemas adicionales, Finalmente modifiqué el modo de pintado del control con double buffering. Una tecnica muy utilizada en la computación grafica.
Al dia siguiente no podia creer que habia programado tal cosa en tan poco tiempo… y decidí enviar el codigo fuente a otras personas.
Aqui les muestro una imagen del control NSChart corriendo en un dialogo. (puede correr sobre casi cualquier classe basada en CWnd)
Este control puede ser de mucha utilidad para programadores Visual C++. Su sencillez hizo que Personas como : Mervyn Jose Fundador de SiteAll.com, Randall Barber de MicroWorks Inc. , y otros mas, lo utilizaran en la implementacion de sus aplicaciones.
Lo que queda por implementar en este control es:
- Valores negativos.
- Otras formas de mostrar la data: lineas, sectores extendidos, barras apiladas, etc.
- Mejorar el ajuste de distribución segun el espacio disponible.
- Exportar a JPG, GIF, PNG, etc.
Si alguien esta interesado en agregarle (por lo pronto) alguna funcionalidad, puede descargarse el codigo fuente completo y el proyecto de ejemplo en los siguientes sitios: CodeProject.com y
Codeguru.com
Version en Español
http://www.latindevelopers.com/vcpp/misc/nschart/