int main() { Imagem* img; int opcao = 1; int i=0,j=0; int limiar=-1; char nome[255]; int grau=0; while (opcao != 0) { opcao = mostrar_menu(); if (opcao == 1) { printf("Nome do arquivo: "); scanf("%s", nome); img = ler_imagem(nome); } else if (opcao == 2) { img = blur(img); } else if (opcao == 3) { img = sharpen(img); } else if(opcao == 4){ img = borda(img); }else if(opcao == 5){ printf("Digite o limiar: "); scanf("%i", &limiar); img = binarizacao_imagem(img, limiar); }else if(opcao == 6){ printf("Grau de rotacao (90, 180 ou 270º): "); scanf("%i", &grau); if(grau == 90){ img = rotacionar90(img); }else if(grau == 180){ img = rotacionar180(img); }else if(grau == 270){ img = rotacionar270(img); }else{ printf("O grau informado nao e permitido."); } }else if(opcao == 7){ img = zoom2x(img); }else if(opcao == 8){ img = reduzir2x(img); }else if(opcao == 9){ img = gaussianblur(img); }else if (opcao == 10){ printf("Nome do arquivo: "); scanf("%s", nome); salvar_imagem(img, nome); }else{ printf("Opção inválida."); } } return 0; }
main() { int l=2,c=11; char tecla; textbackground(BLUE); /*YELLOW*/ clrscr(); textcolor(GREEN); /*BLACK*/ textbackground(RED); /*WHITE*/ borda(1,10,25,50); /*window(1, 10, 50, 25);*/ while(1){ textbackground(BLUE); textcolor(GREEN); posc(l,c); printf("teste"); switch(l) { case 24: l=24; tecla=getch(); if(tecla==27) break; if(tecla==80) { out.h.ah=0x07; out.h.al=1; out.h.bh=7; out.h.ch=23; out.h.cl=10; out.h.dh=23; out.h.dl=48; int86(0x10,&out,&out); } break; default: l++; break; } } /* fim de while */ }
int atualizar_jogo(WINDOW * win,corpo ** snake,int sentido) { size_t i; int ymax,xmax; getmaxyx(win,ymax,xmax); werase(win); borda(win,_borda_vertical); wattrset(win,COLOR_PAIR(COR_DA_COMIDA)); mvwaddch(win,comida.posy,comida.posx,_formato_da_comida); wattroff(win,COLOR_PAIR(COR_DA_COMIDA)); asteroids(win,snake); for(i = 0; i < _tamanho;i++) { /* Guarda o ultimo sentido seguido por um seguimento da cobra */ (*snake)[i].psentido = (*snake)[i].sentido; if(i > 0) (*snake)[i].sentido = (*snake)[i - 1].psentido; else (*snake)[0].sentido = sentido; switch((*snake)[i].sentido) { /* A função batida() vai pegar esse -1 e retornar 1 antes que chegue na função mvwaddch() */ case UP: if((*snake)[i].posy > -1) (*snake)[i].posy--; break; /*A mesma coisa aqui !*/ case DOWN:if((*snake)[i].posy < ymax) (*snake)[i].posy++; break; case LEFT: /* Quando a cobra entra no buraco da esquerda, ela é teletransportada para o da direita */ if((*snake)[i].posx == 0 && ((*snake)[i].posy > ymax/2 - (_tamanho_do_buraco/2 + 1) && (*snake)[i].posy < ymax/2 + _tamanho_do_buraco/2)) (*snake)[i].posx = xmax - 1; else (*snake)[i].posx--; break; case RIGHT: /* Quando a cobra entra no buraco da direita, ela é teletransportda para o da esquerda */ if((*snake)[i].posx == xmax - 1 && ((*snake)[i].posy > ymax/2 - (_tamanho_do_buraco/2 + 1) && (*snake)[i].posy < ymax/2 + _tamanho_do_buraco/2)) (*snake)[i].posx = 0; else (*snake)[i].posx++; break; } /* Para verificar se a cobra bateu em algo, precisamos somente verificar as cordenadas da cabeça dela. */ if( i == 0) { if(batida(win,snake) == 1){ _tamanho = 5; _score = 0; *snake = realloc(*snake,sizeof **snake * _tamanho); if(*snake == NULL) err("realloc()"); return 1; } } if(i == 0) wattrset(win,COLOR_PAIR(COR_DO_CRANIO)); mvwaddch(win,(*snake)[i].posy,(*snake)[i].posx,_formato_do_corpo); if( i == 0 ) wattroff(win,COLOR_PAIR(COR_DO_CRANIO)); } wrefresh(win); return 0; }