Us proposo un joc

jcanadil shared this question 9 years ago
Answered

Hola


Us proposo un joc. Abriu el fitxer adjunt amb el GeoGebra i diuixeu de la manera habitual un pnt que no estigui a la posició (2,2).


No es tracta d'una errada del programa, és una simple broma que preten proposar una millora.


En un altre missatge us dono la solució.


Josep Lluís

https://ggbm.at/551411

Comments (4)

photo
1

Bé, la primera part del joc és aquesta:


Via javascript es crea una funció que s'inicia en arrenacar el GeoGebra i força a que qualsevol punt nou tingui com a coordenades (2,2):


function ggbOnInit(){

ggbApplet.registerAddListener("onAdd");

}

function onAdd(nom){

if(ggbApplet.getObjectType(nom)=="point"){

ggbApplet.evalCommand(""+nom+" = (2,2)");

}

}


La pregunta ara és: on s'amaga la crida a aquesta funció global?

photo
1

Hola,


Has encertat de ple. És així com ho faig. Com ho has esbrinat? Pot ser has fet una exportació a pàgina web?


Però on ho he posat? La resposta és evident, trivial, però... no es veu, oi? És on vull arribar, proposar a l'equip de programadors de GeoGebra que es vegi.


Continuarà


Salutacions

Josep Lluís

photo
1

Bé, crec que ja ho tinc:


1r: creas un objecte qualsevol

2n: a la finestra d'scripting escrius el codi maligne a la zona d'scripting global.

3r: deses l'arxiu

4rt: el tornes a obrir; l'script s'executa en iniciar

5è: esborres l'objecte i tornes a desar


aquí ve la proposta de canvi, oi?: Encara que l'objecte ja no existeixi, el seu codi javascript global queda associat al fitxer .ggb !!!


es clar que això no hauria de passar; si s'esborra un objecte no hauria de quedar el codi!!!


Carles

photo
1

Hola


Has encertat de ple!


Tot joc de màgia té el seu truc. En aquest cas és el següent:

1.- Obro el GeoGebra

2.- Dibuixo un punt. Si no hi ha cap objecte, no puc accedir al Global JavaScript. Penso que seria una millora que l'accés a Global JavaScript es pogués fer també des d'una opció de menú. A més a més, cal pensar que el contingut de Global JavaScript es refereix a la construcció i no a un objecte en concret. Per tant, tindria sentit que hi haguessin un conjunt d'instruccions a Global JavaScript i cap objecte creat.

3.- Accedeixo a les propietats del punt i al Global JavaScript insereixo les instruccions descrites en el post anterior.

4.- Em situo al principi d'aquestes instruccions i mantinc pitjada la tecla Enter una estoneta. D'aquesta manera aconsegueixo desplaçar tot el text fora de la fiinestra (que no té barra de desplaçament). Ja no es veu. És aquesta la meva segona proposta. Fer apareixer una barra de desplaçament.

5.- Esborro el punt i no desapareix el codi javascript. Perfecte que no desaparegui!


Les instruccions javascrip el que fan és detectar quan l'usuari crea un nou punt i el desplaça fins (2,2).


Salutacions

Josep Lluís

© 2021 International GeoGebra Institute