Hola,
Estoy programando en vc++ 2003, usando windows form application estoy recibiendo una señal y la grafico en tiempo real , el problema es que la gráfica es muy lenta, no alcanza a dibujar la primera onda y se empieza a dibujar la primera, pense que era un problema de optimizacion pero no lo es ya que al mover la ventana o al redimensionarla la señal se muestra impecable pero al momento de soltar la ventana, se pone lento.
Si alguien sabe como arreglar esto se agradece, tb les dejo el código para que vean como esta hecho, si tienen alguna otra alternativa a este código también se agradece:
public: void dibujar(unsigned char* data){
int i=0, x1=0, y1=255;
float prop;
g=Graphics::FromHwnd(scope->Handle); //scope es un PictureBox
Pen* myPen = new Pen(Color::Red);
myPen->Width = 1;
prop = (float)scope->Width/TBuffer;
g->ScaleTransform(prop, 1.0f );
g->Clear(Color::White);
for (i=0; i<TBuffer; i++) //TBuffer puede ser entre 1 a 8190
{
g->DrawLine(myPen, x1,y1 ,i , data[i]);
x1=i;
y1=data[i];
}
}
Se que utilizando MFC puedo hacerlo de mejor forma pero primera vez que trabajo con VC y me pierdo con las ventanas en MFC, aparte que manejo bastantes controles y los necesito en la misma ventana del grafico.
Cualquier idea se agradece, saludos.