Está en la página 1de 21

1

Java Fundamentals
2-6
Sentencias de control

Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados.

2
Objetivos
• En esta lección se abordan los siguientes objetivos:
−Definir varias sentencias de control para controlar la
temporización de la animación
−Crear una animación que utiliza una sentencia de control para
controlar la temporización de la animación
−Reconocer construcciones de programación para llamar a un
movimiento simultáneo

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 3

3
Argumentos
• Los argumentos de un procedimiento se pueden editar
o definir con mayor detalle para controlar el
movimiento y la temporización del objeto
• Los ejemplos de argumentos de Alice 3 incluyen:
−Privilegios
−Dirección
−Cantidad de dirección
−Tiempo de duración

Un programa informático necesita argumentos para indicar cómo se debe


implantar el procedimiento.

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 4

Los argumentos son información que se pasa a un procedimiento para especificar cómo se
ejecutará el procedimiento.

4
Visualización de argumentos
• A continuación se muestran ejemplos de argumentos
en un procedimiento

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 5

Los argumentos son los valores proporcionados a la sentencia para controlar elementos como
la duración y la distancia.

5
Pasos para editar argumentos
• Junto al valor del argumento, hacer clic en la flecha
para mostrar el menú de valores
• Seleccionar un nuevo valor
• El menú indica el valor actual, seguido de valores
predefinidos entre los que se puede elegir, seguidos
por otras opciones de menú para especificar la
asignación aleatoria, cálculos matemáticos o un
número decimal
personalizado

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 6

6
Selección de un argumento de marcador de posición
• Al agregar un procedimiento al código, se le pedirá que
seleccione un valor para cada argumento del
procedimiento
• Normalmente, se puede seleccionar un valor
predefinido como un marcador de posición (un valor
temporal) que se puede cambiar posteriormente
durante un ciclo de edición
• Utilizar un valor de marcador de posición suele ser un
enfoque común para crear y mejorar el rendimiento de
la animación

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 7

7
Movimientos simultáneos
• Para crear movimientos simultáneos para un objeto,
utilice la sentencia de control Do together
Sentencias de control Descripción
• Sentencia de control por defecto en el editor de
Do In Order códigos
• Ejecuta los procedimientos en orden secuencial
• Ejecuta los procedimientos simultáneamente
Do Together • Se utiliza para movimientos simultáneos, como
caminar y sentarse

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 8

Las sentencias Do in order y Do together se suelen anidar unas dentro de otras para controlar
las acciones específicas de los objetos.

8
Ejemplo 1 de movimientos simultáneos
• Por ejemplo, un movimiento ejecutado conjuntamente
podría ser tan simple como levantar simultáneamente
ambos brazos de un objeto bípedo desde una posición
suspendida hasta colocar el brazo recto sobre la cabeza

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 9

Al trabajar con el movimiento de objetos descubrirá que mover las subpartes de los objetos
implica mucho más de lo que pensaba.

9
Ejemplo 2 de movimientos simultáneos
• Otro ejemplo es el movimiento de caminar, para el que
se necesita el movimiento simultáneo de las caderas y
los hombros
• Para crear el movimiento de caminar de un bípedo,
utilice:
−Una serie de procedimientos move, roll y turn
−Sentencias de control Do together
• La programación puede ser diferente para los
diferentes objetos, porque no hay dos objetos que
caminen del mismo modo

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 10

Es muy difícil programar una animación para que camine de forma natural. Hay muchas
articulaciones implicadas, así como numerosas sentencias turn y roll diferentes a tener en
cuenta.

10
Ejemplo de guión gráfico textual del movimiento de
caminar
Orden de las instrucciones Instrucciones de programación

Todo el cuerpo se desplaza hacia delante


El hombro izquierdo gira hacia la derecha
Do Together El hombro derecho gira hacia la derecha
La cadera izquierda gira hacia delante
La cadera derecha gira hacia atrás
Todo el cuerpo se desplaza hacia delante
El hombro izquierdo gira hacia la izquierda
Do Together El hombro derecho gira hacia la izquierda
La cadera izquierda gira hacia atrás
La cadera derecha gira hacia delante

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 11

11
Ejemplo de movimiento de caminar
• Examinar este código para un simple movimiento de
caminar

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 12

12
Anulación de procedimientos entre sí
• Un error común es incluir dos procedimientos que se
cancelan entre sí en una sentencia Do together
• Por ejemplo, si incluye un movimiento de 1 metro
hacia arriba, seguido de un movimiento hacia abajo de
1 metro en una sentencia Do together, no ocurrirá
nada
• Los procedimientos se cancelan entre sí

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 13

Recuerde que no se puede mover en dos direcciones a la vez. Puede parecer correcto desde el
punto de vista de la lógica al leerlo, pero al incluirlos en una sentencia do together, resulta
imposible ejecutar el comando.

13
Procedimiento setVehicle
• El procedimiento setVehicle emplea el concepto de un
objeto de pasajero y un objeto de vehículo
• El objeto de pasajero se selecciona cuando se utiliza el
procedimiento setVehicle para especificar el vehículo
del pasajero
• A continuación, cuando el objeto de vehículo esté
programado para moverse, el objeto de pasajero se
moverá automáticamente al mismo tiempo
• Ejemplos:
−Persona que monta en camello o a caballo
−Cámara que sigue a un helicóptero para grabar la escena
desde el punto de vista del helicóptero

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 14

Si se define la propiedad de vehículo de un objeto en la de otro, se pueden mover varios


objetos al mismo tiempo, pero solo hay que crear el código para un único objeto.

14
Ejemplo 1 de procedimiento setVehicle
• El niño se coloca en el camello en el editor de escena
• A continuación, el camello se define como el vehículo
del niño en el editor de códigos
• Cuando el camello se mueve, el niño permanece en la
parte superior y se mueve con el camello

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 15

15
Ejemplo 2 de procedimiento setVehicle
• El helicóptero se define como el vehículo de la cámara
en el editor de códigos
• Cuando el helicóptero se mueve, la cámara filma la
escena desde la perspectiva del helicóptero

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 16

16
Pasos para utilizar el procedimiento setVehicle
• Determinar el objeto de vehículo y de pasajero
• En el editor de códigos, seleccionar el objeto de
pasajero en menú de instancia
• En el separador Procedures, arrastrar el procedimiento
setVehicle al editor de códigos
• En el procedimiento,
seleccionar objeto de
vehículo en el menú

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 17

17
Pasos para parar el procedimiento setVehicle
• Si desea que el objeto de pasajero se baje del objeto
de vehículo, arrastre otro procedimiento setVehicle al
editor de códigos en el punto donde el pasajero debe
salir del vehículo
• Defina el objeto de vehículo en this, que devuelve el
vehículo del pasajero a
la escena

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 18

Es importante recordar que se deben restablecer siempre las propiedades del vehículo una vez
completada la sección de la animación.

18
Terminología
• Términos clave que se han utilizado en esta lección:
−Argumentos
−Sentencia de control Do together
−Sentencia de control Do in order

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 19

19
Resumen
• En esta lección, debe haber aprendido a:
−Definir varias sentencias de control para controlar la
temporización de la animación
−Crear una animación que utiliza una sentencia de control para
controlar la temporización de la animación
−Reconocer construcciones de programación para llamar a un
movimiento simultáneo

JF 2-6
Sentencias de control Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 20

20
21

También podría gustarte