Generar copias libres de una imagen

Erasmo Islas shared this question 2 years ago
Answered

Hola a todos, disculpen, al hacer un applet de contexto me he topado con el siguiente problema. Necesito crear tantas copias de una imagen insertada en Geogebra como indique una casilla de entrada.

He visto que por medio de una lista de secuencias puedo crear n imágenes en la dirección de un vector dado. Sin embargo, yo preciso que sean imágenes libres para arrastrarse y colocarse en un lugar específico, lo cual no se logra con una secuencia: https://www.geogebra.org/m/vbVP2qZQ

¿Existe la posibilidad de hacer lo que busco? Muchas gracias de antemano.

Saludos cordiales

Best Answer
photo

quote: "is only possible via XML Java-Script" -> sorry not true.

But the rest is OK.

See attachment for generate copy-pictures and the slider "count" to show some.

change the value in the first script-line in button1 (a value between 1 and 200)

the scripts follow the explanations of mathmagic.

Comments (9)

photo
3

I hope I understood correctly what you ask :)

If you need to have a number of copies of the pic as the number entered in the input box:

(I used your file)

- create an input box, and link it to your slider n

- modify the ListaDeImagenes command using (n-1) as last parameter

Please see the attached version of your modified file.

(just out of curiosity: I saw a quite unusual input bar when I opened your file: did you create it on purpose? If not, to get all the latest available tools, please select Tools->Customize Toolbar and in the appearing dialog window select Restore default toolbar )

photo
1

Thank you very much for your answer, dear Simona. The input box is solved with your help. But the most important thing for my application is that the images generated are free, they can be dragged to the desired place, as if to put together a puzzle. Hope you can help me, thank you very much in advance.

photo
photo
2

lo mejor que puedes hacer es usar solo una imagen y reproducirla mediante traslacion

cargas la imagen, le pones sus vertices, creas un punto gordo, un circulo o unpoligono para el arraatres, creas el vector que va del centro de la imagen cargada al centro del circulo y trasladas la imagen

esto evita que uses copias en gran cantidad de la imagen y crezca el archivo hasta un tamaño gigante

te adjunto prueba con circulo pues el p'unto gordo solo sirve para iconos pequeños

asegurate que la imagen no se pueda seleccionar para que lo haga el circulo y ponle un punto de opacidad y color que no estorbe pero que funcione

despues oculta el vector, los puntos del circulo y la imagen original

puedes hacerlo tantas veces como necesites sin más que crear más figuras de arrastre

también se puede crear un punto en la circunferencia para definir un angulo central en la circunferencia y rotar la imagen alrededor del centro de la circunferncia

photo
1

Mil gracias por tu ayuda Mathmagic en verdad me sorprende lo ingenioso de tu solución y lo de la rotación me viene como anillo al dedo. Ahora estoy tratando de solucionar cómo hacer para generar (mediante la traslación) la misma imagen de manera automática. Porque lo que necesito es que el estudiante forme un patrón de imágenes, el cual formará mediante arrastre. Lo único que se me ha ocurrido es generar vectores con un deslizador o bien generar las imágenes y tenerlas ocultas hasta que se presione un botón.

Pero tu ayuda me ha servido para dar un gran salto, no tenía ni idea y no lo hubiera logrado sólo, gracias por tomarte el tiempo.

photo
1

Es decir, para mi aplicación es preciso que se genere una cantidad de imágenes de manera automática, por ejemplo que el estudiante pulsa un botón que diga: "Agregar imagen" las veces que sean necesarias y sigan apareciendo imágenes hasta un límite determinado, digamos 10 o 20. Pero debe ser la misma imagen.

photo
2

Generating the copy-images by script is only possible via XML Java-Script (SetPosition() NOT exist).

Alternative:

Create the maximum number of copies required.

Create a slider "count": min=1, max=<max>, step=1

Create for all visible objects for an image copy

in Properties/Advanced/ConditionToShowObject: count >= <the own number SuffixNdx>

--------------------

With the slider you can now determine how many image copies should be displayed.

photo
2

quote: "is only possible via XML Java-Script" -> sorry not true.

But the rest is OK.

See attachment for generate copy-pictures and the slider "count" to show some.

change the value in the first script-line in button1 (a value between 1 and 200)

the scripts follow the explanations of mathmagic.

photo
1

Wow, @rami. You're great!

That is exactly like I need it. Thank you very much.

photo
photo
2

puedes crear la circunferencia mediante un script en el boton que cree los puntos necesarios y que produzca el objeto de trasladar la imagen. naturalmente tienes que controlar el nombre de los puntos mediante el valor del deslizador

esto es posible mediante una instruccion execute( o sea lo que te ha hecho Rami)

si no se te ocurre puedo hacer un ejemplito de cómo hacerlo

también si solo quieres que se produzca la creacion de la circunferncia y la traslacion de la imagen puedes hacer una herramienta que con un simple clic lo cree todo

todo esto depende de si solo quieres que se muevan las imagenes o necesitas nombres de lo creado para un control posterior

si optas por crear muchas imagenes y que se muestren en cantidad el deslizador puedes crear muchisimas mediante la creacion de los objetos en la primera fila de la hoja de calculo y el arrastre despues de selccionar hacia abajo todo lo que necesites

© 2023 International GeoGebra Institute