Uso de scripts
Esta actividad pertenece al libro de GeoGebra Mecanismos.
En esta actividad aparecen tres barras de longitud 1 unidad. Sin embargo, el proceso de construcción es diferente en cada caso:
1) Barra AB. En este caso, mientras que A es libre (por ejemplo, A=(1,3)), B es un punto dependiente de A, ya que está situado en la circunferencia de centro A y radio 1. Al mover A, se arrastra la barra. Al mover B, este punto gira alrededor de A. La barra no se puede mover directamente.
Naturalmente, también podríamos optar por construir el punto A como punto dependiente de B. En tal caso, la barra se arrastraría al mover B, mientras que al mover A este punto giraría alrededor de B.
Este es el modo habitual de construcción de los objetos en la Geometría Dinámica: el orden de construcción es fundamental para determinar el comportamiento de los objetos, pues ese orden influye en el modo en que unos dependen de otros. No podemos, usando este modo habitual, crear dos puntos A y B con el mismo tipo de interdependencia, es decir, que se comporten igual al ser movidos.
2) Barra CD. Ambos puntos son libres. Al mover C, este punto gira sobre D. Al mover D, este punto gira sobre C. La barra se puede arrastrar independientemente. Ahora bien, ¿cómo se consigue que, siendo libres, los puntos C y D mantengan la distancia de 1 unidad entre ellos? La respuesta está en el uso de scripts (instrucción o secuencia de instrucciones). Al mover el punto C, se activa el siguiente script:
SetValue(C, Intersect(Ray(D,C), Circle(D,1)))
Esta instrucción obliga a C a mantener esa distancia con D.
- Nota 1: Observemos que no hemos usado C = Intersect(Ray(D,C), Circle(D,1))) pues esta instrucción redefiniría C como punto dependiente de D. En su lugar, C conserva su definición como punto libre pero le obligamos a recolocarse y tomar el valor resultado de intersecar Ray(D,C) con Circle(D,1).
- Nota 2: Los scripts pueden conseguir el mismo resultado de diversas formas. Por ejemplo, un script equivalente al anterior podría ser la instrucción SetValue(C, D + UnitVector(C-D)).
Autor de la construcción GeoGebra: Rafael Losada