|
|
|
|
17
|
|
17
|
|
18
|
Esta experiencia de laboratorio es una adaptación de https://sites.google.com/a/wellesley.edu/wellesley-cs118-spring13/lectures-labs/lab-2.
|
18
|
Esta experiencia de laboratorio es una adaptación de https://sites.google.com/a/wellesley.edu/wellesley-cs118-spring13/lectures-labs/lab-2.
|
19
|
|
19
|
|
|
|
20
|
+
|
20
|
## Pre-Lab:
|
21
|
## Pre-Lab:
|
21
|
|
22
|
|
22
|
Antes de llegar al laboratorio debes haber:
|
23
|
Antes de llegar al laboratorio debes haber:
|
|
|
|
|
46
|
|
47
|
|
47
|
![figure1.gif](images/figure1.gif)
|
48
|
![figure1.gif](images/figure1.gif)
|
48
|
|
49
|
|
49
|
-**Figura 1** - Las únicas teselaciones regulares posibles obtenidas usando triángulos, cuadrados o hexágonos.
|
|
|
|
|
50
|
+**Figura 1.** Las únicas teselaciones regulares posibles obtenidas usando triángulos, cuadrados o hexágonos.
|
50
|
|
51
|
|
51
|
---
|
52
|
---
|
52
|
|
53
|
|
|
|
|
|
88
|
|
89
|
|
89
|
---
|
90
|
---
|
90
|
|
91
|
|
91
|
-**Ejemplo 1.** El código de la Figura 4 contiene una función `foo` para dibujar cuatro teselaciones en las posiciones (0,0), (50,50), (100,100), y (150,150), con rotaciones de la figura original de $$0^\circ, 90^\circ, 180^\circ y 270^\circ$$ (a favor de las manecillas del reloj).
|
|
|
|
|
92
|
+**Ejemplo 1.** El código de la Figura 4 contiene una función `foo` para dibujar cuatro teselaciones en las posiciones (0,0), (50,50), (100,100), y (150,150), con rotaciones de la figura original de $$0^\circ, 90^\circ, 180^\circ y 270^\circ$$ (a favor de las manecillas del reloj).
|
92
|
|
93
|
|
93
|
---
|
94
|
---
|
94
|
|
95
|
|
|
|
|
|
186
|
1. Carga a `QtCreator` el proyecto `Tessellations`. Hay dos maneras de hacer esto:
|
187
|
1. Carga a `QtCreator` el proyecto `Tessellations`. Hay dos maneras de hacer esto:
|
187
|
|
188
|
|
188
|
* Utilizando la máquina virtual: Haz doble “click” en el archivo `Tessellations.pro` que se encuentra en el directorio `/home/eip/labs/repetitions-tessellations` de la máquina virtual.
|
189
|
* Utilizando la máquina virtual: Haz doble “click” en el archivo `Tessellations.pro` que se encuentra en el directorio `/home/eip/labs/repetitions-tessellations` de la máquina virtual.
|
189
|
- * Descargando la carpeta del proyecto de `Bitbucket`: Utiliza un terminal y escribe el commando `git clone http:/bitbucket.org/eip-uprrp/repetitions-tessellations` para descargar la carpeta `repetitions-tessellations` de `Bitbucket`. En esa carpeta, haz doble “click” en el archivo `Tessellations.pro`.
|
|
|
|
|
190
|
+ * Descargando la carpeta del proyecto de `Bitbucket`: Utiliza un terminal y escribe el comando `git clone http:/bitbucket.org/eip-uprrp/repetitions-tessellations` para descargar la carpeta `repetitions-tessellations` de `Bitbucket`. En esa carpeta, haz doble “click” en el archivo `Tessellations.pro`.
|
190
|
|
191
|
|
191
|
2. El proyecto `Tessellations.pro` contiene las clases `Tessellation` y `DrawingWindow` y la función `foo`. Configura el proyecto y ejecuta el programa marcando la flecha verde en el menú de la izquierda de la ventana de Qt Creator. Debes observar una pantalla parecida a la Figura 5.
|
192
|
2. El proyecto `Tessellations.pro` contiene las clases `Tessellation` y `DrawingWindow` y la función `foo`. Configura el proyecto y ejecuta el programa marcando la flecha verde en el menú de la izquierda de la ventana de Qt Creator. Debes observar una pantalla parecida a la Figura 5.
|
192
|
|
193
|
|
|
|
|
|
197
|
|
198
|
|
198
|
### Ejercicio 2 - Crear función y teselación `herringbone`
|
199
|
### Ejercicio 2 - Crear función y teselación `herringbone`
|
199
|
|
200
|
|
200
|
-#### Instrucciones:
|
|
|
|
|
201
|
+#### Instrucciones
|
201
|
|
202
|
|
202
|
-1. Crea una función `herringbone` que produzca la teselación de la Figura 8. El tamaño de la ventana es 400x400. El tamaño de cada cuadrado de la teselación es su tamaño por defecto: 50x50.
|
|
|
|
|
203
|
+1. Crea una función `herringbone` que produzca la teselación de la Figura 8. El tamaño de la ventana es 400x400. El tamaño de cada cuadrado de la teselación es su tamaño predeterminado: 50x50.
|
203
|
|
204
|
|
204
|
---
|
205
|
---
|
205
|
|
206
|
|
|
|
|
|
209
|
|
210
|
|
210
|
---
|
211
|
---
|
211
|
|
212
|
|
212
|
-2. Comenta la **invocación** de la función `foo`.
|
|
|
|
|
213
|
+2. Comenta la invocación de la función `foo`.
|
213
|
|
214
|
|
214
|
3. Invoca la función `herringbone` desde `main()` y corre tu programa para que veas la teselación que creaste.
|
215
|
3. Invoca la función `herringbone` desde `main()` y corre tu programa para que veas la teselación que creaste.
|
215
|
|
216
|
|
216
|
### Ejercicio 3 - Crear función y teselación `zigzag`
|
217
|
### Ejercicio 3 - Crear función y teselación `zigzag`
|
217
|
|
218
|
|
218
|
-#### Instrucciones:
|
|
|
|
|
219
|
+#### Instrucciones
|
219
|
|
220
|
|
220
|
1. Crea una función `zigzag` que produzca la teselación de la Figura 9.
|
221
|
1. Crea una función `zigzag` que produzca la teselación de la Figura 9.
|
221
|
|
222
|
|
|
|
|
|
234
|
|
235
|
|
235
|
### Ejercicio 4 - Crear función y teselación `diamond`
|
236
|
### Ejercicio 4 - Crear función y teselación `diamond`
|
236
|
|
237
|
|
237
|
-#### Instrucciones:
|
|
|
|
|
238
|
+#### Instrucciones
|
238
|
|
239
|
|
239
|
-1. Crea una función `diamond` que produzca la teselación de la Figura 10.
|
|
|
|
|
240
|
+1. Crea una función `diamond` que produzca la teselación de la Figura 10.
|
240
|
|
241
|
|
241
|
---
|
242
|
---
|
242
|
|
243
|
|
|
|
|
|
257
|
|
258
|
|
258
|
## Entregas
|
259
|
## Entregas
|
259
|
|
260
|
|
260
|
-Utiliza "Entrega" en Moodle para entregar el archivo `main.cpp` que contiene las funciones `herringbone`, `zigzag` y `diamond` que creaste en los Ejercicios 2, 3 y 4 y sus invocaciones. Recuerda utilizar buenas prácticas de programación, al incluir el nombre de los programadores y documentar tu programa.
|
|
|
|
|
261
|
+Utiliza "Entrega" en Moodle para entregar el archivo `main.cpp` que contiene las funciones `herringbone`, `zigzag` y `diamond` que creaste en los Ejercicios 2, 3 y 4 y sus invocaciones. Recuerda utilizar buenas prácticas de programación, incluye el nombre de los programadores y documenta tu programa.
|
261
|
|
262
|
|
262
|
---
|
263
|
---
|
263
|
|
264
|
|
|
|
|
|
267
|
|
268
|
|
268
|
[1] https://sites.google.com/a/wellesley.edu/wellesley-cs118-spring13/lectures-labs/lab-2.
|
269
|
[1] https://sites.google.com/a/wellesley.edu/wellesley-cs118-spring13/lectures-labs/lab-2.
|
269
|
|
270
|
|
270
|
-
|
|
|