O que parecia um programa bem simples vem se tornando muito dificil pra mim. Alguém me ajuda? estou com algumas duvidas(mais precisamente onde tem os // para os comentarios.) Enfim,o programa basicamente pega uma imagem monocromatica .bmp,le os pontos de uma reta e cria um arquivo com suas coordenadas,se alguém puder me ajudar eu agradeço. eu não posso usar outros comandos além desses porque é um trabalho de um curso. se alguém conseguiu entender o que eu fiz e puder me ajudar eu agradeço e MUITO. A grande dificuldade que eu encontro é como tirar o cabeçalho da imagem .bmp e como eu vou conseguir de fato,ler o arquivo .bmp Eu gostaria de saber se ficaria mais facil com o allegro.h no entanto não sei usa-lo se alguém souber resolver mesmo com o allegro.h me ajude por favor? Obrigado desde já #include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main ()
{
FILE *entrada,*saida;
entrada=fopen("IMAGEMMONO.bmp","r"); // Descobrir como C le o arquivo em .bmp
saida=fopen("coordenadas.txt","w");
int i,contx,conty,coordx,coordy;
float aux1,aux2,valor;
contx=0;
conty=0;
coordy=0;
coordx=0;
if (entrada==NULL)
{
printf("ERRO,arquivo não encontrado");
}
for(i=0;i<14;i++){ // Descobrir o numero de bits do cabeçalho para ignorá-lo no programa
aux1=fgetc(entrada);
aux2=fgetc(entrada);
}
aux1=69;
aux2=69;
while(!feof(entrada))
{
aux1=fgetc(entrada);
aux2=fgetc(entrada);
valor=aux1*16+aux2; // Fazer a conversao para Hexa
printf("%c",&valor);
if(valor==0){ // Descobrir o Valor do pixel preto
coordx=contx;
coordy=conty;
fprintf(saida, "\n X: %d Y: %d \n", coordx,coordy);
}
contx++;
if(contx==941)
{
contx=0;
conty++;
}
}
if(feof(entrada))
{
printf("Fim!\n");
fclose(entrada);
system("PAUSE");
}
}