SoloCodigo

Programación General => C/C++ => C++ Builder => Mensaje iniciado por: edgarmfco en Domingo 6 de Noviembre de 2005, 05:25

Título: Problemas Con Timage
Publicado por: edgarmfco en Domingo 6 de Noviembre de 2005, 05:25
:kicking:  Hola tengo el siguiente problema

Estoy haciendo un programa de tratamiento de imagenes el cual necesita abrir un archivo PGM ahora la matriz que contiene la imagen la vacie en en TImage

for(int i=0;i<filas;i++)
for(int j=0;j<columnas;j++)
{
color=matrix[j]<<16|matrix[j]<<8|matrix[j];
Image1->Canvas->Pixels[j]=(TColor)color;
}


el problema surge cuando abro otro archivo pues si la 1er imagen era de 100 x 100 y ahora abro una mas grande solo me dibuja la parte de 100 x 100 pero si hago lo contrario primero abro una imagen de 500 x 500 y despues abro una nueva pero que sea de menos dimension si lo hace correctamente

Porfas ayudenme que ya estoy desesperado

El codigo que utilizo es el siguiente
void __fastcall TMainForm::AbrirPGMClick(TObject *Sender)
{
OpenDialog->FileName="";
Label10->Caption="Ancho= ";
Label11->Caption="Alto= ";

if(OpenDialog->Execute())
{
NameIn=OpenDialog->FileName;
StatusBar1->SimpleText=NameIn;

if((IMG = read_pnm(OpenDialog->FileName.c_str())) == NULL)
{
ShowMessage("ERROR: Leectura!!!");
exit(1);
}

matrix=(byte **)IMG->ptr;
filas=IMG->rows;
columnas=IMG->cols;

Image1->Width=columnas;
Image1->Height=filas;

for(int i=0;i<filas;i++)
for(int j=0;j<columnas;j++)
{
color=matrix[j]<<16|matrix[j]<<8|matrix[j];
Image1->Canvas->Pixels[j]=(TColor)color;
PaintBox1->Canvas->Pixels[j]=(TColor)color;
}
Label10->Caption=Label10->Caption+" "+columnas+" pxls";
Label11->Caption=Label11->Caption+" "+filas+" pxls";
}
}
//---------------------------------------------------------------------------
Título: Re: Problemas Con Timage
Publicado por: geobeid en Viernes 12 de Mayo de 2006, 03:13
INTENTA PONIENDOLE TRUE AL AUTOSIZE DEL TIMAGE.:angel: