//#include "controle.h" #include "localizador.h" #include "localizador.cc" #include "movimentacao.h" #include "movimentacao.cc" #include "Teletransporte.h" #include "TeleSender.cc" /* * Distancia de 3,5m em linha reta: 5s * */ //TeleTransporte tele; using namespace alfa; Localizador localizacao; Movimentacao movi; char direcao[3] = {'f', 'd', 'e'}; int randomicoDirecao[100] = {0, 2, 1, 2, 2, 2, 0, 2, 0, 0, 2, 2, 1, 2, 2, 0, 1, 2, 0, 0, 2, 2, 1, 2, 0, 1, 2, 1, 2, 1, 0, 2, 0, 1, 1, 2, 1, 0, 1, 2, 2, 0, 0, 1, 0, 1, 0, 1, 2, 0, 0, 2, 0, 1, 1, 0, 0, 0, 2, 0, 2, 0, 1, 2, 1, 2, 2, 2, 0, 2, 2, 0, 2, 1, 0, 2, 2, 2, 2, 0, 0, 2, 1, 1, 2, 2, 0, 1, 2, 1, 2, 1, 0, 0, 0, 2, 1, 0, 1, 2}; int randomicoMovimentacao[50] = {0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0}; int i = 0; int j = 0; void ondeIr (coordenadas_t pos) { /* * Considerando que pos retorna quanto falta para direita e pra cima... */ if ( (pos.x > 1) && (pos.x < 4) && (pos.y > 1) && (pos.y < 7) ) { if (randomicoDirecao[i] > 0) { movi.gira ( direcao [i] ); movi.anda1 (); if ( randomicoMovimentacao[j] == 0 ) movi.anda1 (); } else { movi.anda1 (); if ( randomicoMovimentacao[j] == 0 ) movi.anda1 (); } } else { movi.meiaVolta (); movi.anda2 (); } if (j == 49) j = 0; if (i == 99) i = 0; else i++; } void contaTempoSeguro () { for(int x = 0; x < 0xFFFF; x++) for(int x = 0; x < 0x8A; x++); // = 5 segundos } int main (void) { coordenadas_t posicao; int temp = 0; bool fim = true; init(); /* tudo que for char ou struct, alocar dinamicamente... Dessa forma: char *b; b = (char *) malloc(sizeof(char)); free((char *) b); */ while(!fim) { posicao = localizacao.localiza(); send (posicao); contaTempoSeguro (); // tempo seguro para enviar as fotos stop (); ondeIr ( localizacao.quadrantesRestantes () ); movi.para (); //fim = getFimTransmissao (); fim = false; } movi.fim (); return 0; } /* int main(void) { bool fimImagem1 = false; bool fimImagem2 = false; sequencia (fimImagem1, 0); // envia a primeira imagem sequencia (fimImagem2, 1); // envia a segunda imagem return 0; } */