Ayuda con Bitmap
Posted: Mon Nov 12, 2007 2:16 am
Buenas noches.
Tengo un bitmap que simula una grafica , pues bien, necesito trazar en el bitmap, 3 lineas, que uniran 4 puntos, y que estos "simularan" una grafica.
Lo hago de la siguiente manera.
function DrawLine(aLineas)
/*
AQUI SOLO TRAZAREMOS UNOS PEQUEÑOS PUNTOS EN CADA
COORDENADA DEL BITMAP
*/
hDc := oCv:oBmpHdc:GetDc()
hPen := CreatePen( 0, 5, RGB(0,0,0))
hOldPen := SelectObject( hDc, hPen )
//***** Primer Trazo
MoveTo( hDc, aLineas[1,1], aLineas[1,2] )
LineTo( hDc, aLineas[1,1], aLineas[1,2] )
MoveTo( hDc, aLineas[2,1], aLineas[2,2] )
LineTo( hDc, aLineas[2,1], aLineas[2,2] )
MoveTo( hDc, aLineas[3,1], aLineas[3,2] )
LineTo( hDc, aLineas[3,1], aLineas[3,2] )
MoveTo( hDc, aLineas[4,1], aLineas[4,2] )
LineTo( hDc, aLineas[4,1], aLineas[4,2] )
//***** Segundo Trazo
MoveTo( hDc, aLineas[5,1], aLineas[5,2] )
LineTo( hDc, aLineas[5,1], aLineas[5,2] )
MoveTo( hDc, aLineas[6,1], aLineas[6,2] )
LineTo( hDc, aLineas[6,1], aLineas[6,2] )
MoveTo( hDc, aLineas[7,1], aLineas[7,2] )
LineTo( hDc, aLineas[7,1], aLineas[7,2] )
MoveTo( hDc, aLineas[8,1], aLineas[8,2] )
LineTo( hDc, aLineas[8,1], aLineas[8,2] )
//***** Tercer Trazo
MoveTo( hDc, aLineas[9,1], aLineas[9,2] )
LineTo( hDc, aLineas[9,1], aLineas[9,2] )
MoveTo( hDc, aLineas[10,1], aLineas[10,2] )
LineTo( hDc, aLineas[10,1], aLineas[10,2] )
MoveTo( hDc, aLineas[11,1], aLineas[11,2] )
LineTo( hDc, aLineas[11,1], aLineas[11,2] )
MoveTo( hDc, aLineas[12,1], aLineas[12,2] )
LineTo( hDc, aLineas[12,1], aLineas[12,2] )
SelectObject( hDc, hOldPen )
DeleteObject( hPen )
oCv:oBmpHdc:ReleaseDC()
reuturn nil
Pues bien, tan solo dibuja la parte del TERCER TRAZO, y los restantes no los dibuja. Ademas de que cuando dejo el dialogo con ALT + TAB, esos trazos que dibujo se "Desaparecen".
Si alguien me puede echar una mano.
Por su atencion gracias
Ricardo E. Guardado Flores.
Tengo un bitmap que simula una grafica , pues bien, necesito trazar en el bitmap, 3 lineas, que uniran 4 puntos, y que estos "simularan" una grafica.
Lo hago de la siguiente manera.
function DrawLine(aLineas)
/*
AQUI SOLO TRAZAREMOS UNOS PEQUEÑOS PUNTOS EN CADA
COORDENADA DEL BITMAP
*/
hDc := oCv:oBmpHdc:GetDc()
hPen := CreatePen( 0, 5, RGB(0,0,0))
hOldPen := SelectObject( hDc, hPen )
//***** Primer Trazo
MoveTo( hDc, aLineas[1,1], aLineas[1,2] )
LineTo( hDc, aLineas[1,1], aLineas[1,2] )
MoveTo( hDc, aLineas[2,1], aLineas[2,2] )
LineTo( hDc, aLineas[2,1], aLineas[2,2] )
MoveTo( hDc, aLineas[3,1], aLineas[3,2] )
LineTo( hDc, aLineas[3,1], aLineas[3,2] )
MoveTo( hDc, aLineas[4,1], aLineas[4,2] )
LineTo( hDc, aLineas[4,1], aLineas[4,2] )
//***** Segundo Trazo
MoveTo( hDc, aLineas[5,1], aLineas[5,2] )
LineTo( hDc, aLineas[5,1], aLineas[5,2] )
MoveTo( hDc, aLineas[6,1], aLineas[6,2] )
LineTo( hDc, aLineas[6,1], aLineas[6,2] )
MoveTo( hDc, aLineas[7,1], aLineas[7,2] )
LineTo( hDc, aLineas[7,1], aLineas[7,2] )
MoveTo( hDc, aLineas[8,1], aLineas[8,2] )
LineTo( hDc, aLineas[8,1], aLineas[8,2] )
//***** Tercer Trazo
MoveTo( hDc, aLineas[9,1], aLineas[9,2] )
LineTo( hDc, aLineas[9,1], aLineas[9,2] )
MoveTo( hDc, aLineas[10,1], aLineas[10,2] )
LineTo( hDc, aLineas[10,1], aLineas[10,2] )
MoveTo( hDc, aLineas[11,1], aLineas[11,2] )
LineTo( hDc, aLineas[11,1], aLineas[11,2] )
MoveTo( hDc, aLineas[12,1], aLineas[12,2] )
LineTo( hDc, aLineas[12,1], aLineas[12,2] )
SelectObject( hDc, hOldPen )
DeleteObject( hPen )
oCv:oBmpHdc:ReleaseDC()
reuturn nil
Pues bien, tan solo dibuja la parte del TERCER TRAZO, y los restantes no los dibuja. Ademas de que cuando dejo el dialogo con ALT + TAB, esos trazos que dibujo se "Desaparecen".
Si alguien me puede echar una mano.
Por su atencion gracias
Ricardo E. Guardado Flores.