#include "contorno.h" #include "coordenada.h" #include "stdio.h" #define FIN 0 #define ANGULO_ROTACION 20 int leer_menu(); void pausa(); void opcion1(); void opcion2(); void opcion3(); void opcion4(); void opcion5(); void opcion6(); void main () { int opcion; inicializar(); /* Inicializar tortuga */ /* Menu */ do{ opcion=leer_menu(); switch(opcion){ case 1: opcion1(); break; case 2: opcion2(); break; case 3: opcion3(); break; case 4: opcion4(); break; case 5: opcion5(); break; case 6: opcion6(); break; default: printf("Opcion incorrecta\n"); } }while (opcion!=0); finalizar(); } int leer_menu(){ int opcion; /* Mostrar menu */ printf("Posibles opciones:\n\n"); printf("1.Dibujar segmento.\n"); printf("2.Leer contorno de teclado y escribir en fichero.\n"); printf("3.Leer contorno de teclado y dibujar en pantalla.\n"); printf("4.Leer contorno de fichero y calcular el perimetro.\n"); printf("5.Leer contorno de fichero, modificar y volver a escribir en fichero.\n"); printf("6.Rotar contorno una vuelta completa.\n"); /* Pedir opcion y retornarla */ printf("\n"); printf("Elige la opcion\n"); scanf("%d%*c", &opcion); return opcion; } void pausa() { printf("\n Presione cualquier tecla para continuar ..."); fflush (stdin); getchar(); } void resultado(int cod, tNombre msg) { if (cod<=0) printf("\n ERROR (%d): %s \n", cod, msg); else printf("\n OK (%d): %s \n", cod, msg); } /* opcion 1: Dibuja segmento */ void opcion1(){ /* Leer coordenada A */ /* Leer coordenada B */ tCoordenada coor; coor=leer_coordenada_teclado(); /* Borrar pantalla */ system("cls"); /* Dibujar segmento de A hasta B */ //dibujar_segmento(tCoordenada cinicio, tCoordenada cfinal ) } /* opcion 2: Lee contorno de teclado y lo escribe en fichero */ void opcion2() { /* Inicializar contorno */ /* Leer contorno desde teclado */ /* Leer nombre de fichero donde escribir contorno */ /* Escribir contorno en fichero */ } /* opcion 3: Lee contorno de fichero y lo dibuja en pantalla */ void opcion3() { /* Inicializar contorno */ /* Leer nombre de fichero donde leer contorno */ /* Borrar pantalla */ /* Dibujar contorno */ } /* opcion 4: Lee contorno de fichero y le calcula el perimetro */ void opcion4() { /* Inicializar contorno */ /* Leer nombre de fichero de contorno */ /* Leer contorno desde fichero */ /* Calcular perimetro */ } /* opcion 5: Lee contorno de fichero, se modifica y se vuelve a escribir en fichero */ void opcion5() { /* Inicializar contorno */ /* Leer nombre de fichero del contorno */ /* Leer contorno desde fichero */ /* Leer operacion (insertar / eliminar) coordenada */ /* Modificar contorno con (insertar / eliminar) coordenada */ /* Escribir contorno modificado en fichero */ /* Mostrar contorno modificado en pantalla */ } /* opcion 6 : Rotar contorno una vuelta completa */ void opcion6() { /* Inicializar contorno */ /* Leer nombre de fichero de contorno */ /* Leer centro de rotacion */ /* Rotar contorno una vuelta completa (360 grados) en etapas de ANGULO_ROTACION grados, con una pausa entre cada rotacion */ }