70 likes | 381 Views
Ejemplo de Diseño Orientado A objetos. Agustín J. González OOP&D. Descripción del Problema: Manipulación de clases usando Figuras Geométricas.
E N D
Ejemplo de Diseño Orientado A objetos Agustín J. González OOP&D
Descripción del Problema: Manipulación de clases usando Figuras Geométricas • En esta tarea usted ejercitará la creación de clases para la manipulación de figuras. Éstas estarán compuestas por Elipses, polígonos, y texto.Por por ejemplo en: • Objetivo:Usted debe desarrollar tres programas: mag para ampliar una figura ingresada en formato FIG, trans para trasladarla y rot para rotarla.mag <x> <y> <f> [inFile]: mag toma dos parámetros de entrada: punto centro y magnitud. El centro indica el punto sobre el cual se efectúa la amplificación indicada por magnitud.trans <x> <y> [inFile] :trans toma dos parámetros de entrada que representan el desplazamiento x e y deseado.rot <x> <y> <F | C> [inFile] : rot hace una rotación respecto al punto indicado y lo hace en favor o en contra del sentido del reloj. • Las coordenadas de puntos están medidas en pixeles. la magnificación es un real y F y C son caracteres.
Descripción del Problema: Manipulación de clases usando Figuras Geométricas (cont.) • Cada uno de estos programas recibe la imagen desde un archivo de entrada inFile en formato FIG 3.2. Cuando este archivo es omitido, se asume que el archivo es ingresado por la entrada estándar. • Como salida cada uno de sus programas debe entregar por pantalla la versión en formato FIG 3.2 resultante de la figura resultante luego de la manipulación. • Para probar sus programas se recomienda ejecutar, por ejemplo:mag 100 50 1.3 assig2.fig > assgMag.figo alternativamentemag 100 50 1.3 < assig2.fig > assgMag.fig • Es decir su programa recibe assig2.fig como entrada y la salida a consola en este caso es redirigida al archivo assgMag.fig. Posteriormente usted puede hacer uso del editor de figuras xfig, para verificar el buen resultado de su programa. También puede ejecutar cosas como: • mag 100 50 1.3 assig2.fig | fig2dev -Lpng > assgMag.png • con el objeto de generar una versión en formato png de su figura. Ojo que hay muchos otros formatos soportados por fig2dev. • Importante !!! 1.- Esta tarea debe ser corrida en aragorn. Allí está instalado xfig y fig2dev. Hay más documentación a través de xfig en caso que sea de su interés.2.- No se complique con archivos FIG que manejen figuras compuestas. Esta tarea sólo será sometida a figuras "planas" o no compuestas.3.- Está de más decir que se espera que usted cree una clase "virtual" de formas y Siga los pasos indicados en las instrucciones para hacer la entrega de su tarea.
Descripción del Problema: Manipulación de clases usando Figuras Geométricas • En esta tarea usted ejercitará la creación de clases para la manipulación de figuras. Éstas estarán compuestas por Elipses, polígonos, y texto.Por por ejemplo en: • Objetivo:Usted debe desarrollar tres programas: mag para ampliar una figura ingresada en formato FIG, trans para trasladarla y rot para rotarla.mag <x> <y> <f> [inFile]: mag toma dos parámetros de entrada: punto centro y magnitud. El centro indica el punto sobre el cual se efectúa la amplificación indicada por magnitud.trans <x> <y> [inFile] :trans toma dos parámetros de entrada que representan el desplazamiento x e y deseado.rot <x> <y> <F | C> [inFile] : rot hace una rotación respecto al punto indicado y lo hace en favor o en contra del sentido del reloj. • Las coordenadas de puntos están medidas en pixeles. la magnificación es un real y F y C son caracteres.
Descripción del Problema: Manipulación de clases usando Figuras Geométricas (cont.) • Cada uno de estos programas recibe la imagen desde un archivo de entradainFile en formato FIG 3.2. Cuando este archivo es omitido, se asume que el archivo es ingresado por la entrada estándar. • Como salida cada uno de sus programas debe entregar por pantalla la versión en formato FIG 3.2 resultante de la figura resultante luego de la manipulación. • Para probar sus programas se recomienda ejecutar, por ejemplo:mag 100 50 1.3 assig2.fig > assgMag.figo alternativamentemag 100 50 1.3 < assig2.fig > assgMag.fig • Es decir su programa recibe assig2.fig como entrada y la salida a consola en este caso es redirigida al archivo assgMag.fig. Posteriormente usted puede hacer uso del editor de figuras xfig, para verificar el buen resultado de su programa. También puede ejecutar cosas como: • mag 100 50 1.3 assig2.fig | fig2dev -Lpng > assgMag.png • con el objeto de generar una versión en formato png de su figura. Ojo que hay muchos otros formatos soportados por fig2dev. • Importante !!! 1.- Esta tarea debe ser corrida en aragorn. Allí está instalado xfig y fig2dev. Hay más documentación a través de xfig en caso que sea de su interés.2.- No se complique con archivos FIG que manejen figuras compuestas. Esta tarea sólo será sometida a figuras "planas" o no compuestas.3.- Está de más decir que se espera que usted cree una clase "virtual" de formas y Siga los pasos indicados en las instrucciones para hacer la entrega de su tarea.
Análisis • Una de las técnicas para efectuar el análisis es el estudi de casos. • Para este problema dos casos son: • “El ayudante luego de descomprimir la tarea de Eduardo y leer su readme.txt, compila la tarea con make y prueba el comando mag usando el archivo sugerido en el problema. Para ello ejecuta mag 200 300 1.0 prueba.fig > pruebam.fig. Luego compara ambos archivos.” • “El ayudante crea un archivo P2.fig que contiene un rectángulo superpuesto sobre un rectángulo y ambos sobre un texto. Luego ejecuta: mag 200 300 2.0 <`cat P2.fig` > P2m.fig. Luego visualiza el resultado usando xfig.”