Asuntos Oficiales > C/C++

 Problemas Con Timage

(1/1)

edgarmfco:
: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";
   }
}
//---------------------------------------------------------------------------

SkaJaf:
Antes de:
Image1->Width=anchura;
Image1->Height=altura;

Haz:
TImage1 *Image1=new TImage(this);
Image1->Parent=this;
Image1->Width=anchura;
Image1->Heigth=altura;


Si sigue sin funcionarte, hay una libreria IPL98 de tratamiento de imagen que funciona muy bien y es gratuita.
Un saludo

Navegación

[0] Índice de Mensajes

Ir a la versión completa