Riferimenti:API delle app GeoGebra

Da GeoGebra Manual.
Versione del 10 mag 2019 alle 15:49 di Murkle (discussione | contributi) (remove "Verifica automatica degli esercizi")
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Attenzione ! Attenzione !: Questa pagina non sarà più aggiornata in Italiano. La versione in Inglese è qui


Questa pagina descrive le API delle app GeoGebra che consentono di interagire con le app GeoGebra. Vedere anche Incorporare App GeoGebra per scoprire come incorporare le nostre app in una pagina Web.

Esempi

In questi esempi è possibile vedere le API delle app GeoGebra in azione:

Note: Gli argomenti tra parentesi quadre possono essere omessi.

Comandi e punti di annullamento

Segnatura del metodo Da Descrizione
boolean evalCommand(comando) 3.0 Valuta il comando come se fosse digitato direttamente nella barra di inserimento di GeoGebra. Restituisce se la valutazione del comando ha avuto successo.
È possibile passare più comandi contemporaneamente, separandoli con \n.
Note: Utilizzare nomi di comando in Inglese per garantire la piena funzionalità in tutte le versioni di GeoGebra.

String[] evalCommandGetLabels(Stringa cmdString)5.0Come evalCommand(), ma il valore restituito è una stringa contenente una lista di etichette degli oggetti creati, separate da virgole. Ad esempio: eg "A, B, C".
String evalCommandCAS(Stringa stringa) 3.2 Passa la stringa al CAS di GeoGebra e restituisce il risultato come stringa.
void setUndoPoint() 3.2 Imposta un punto di annullamento. Utile se si vuole fare in modo che l'utente possa annullare l'azione di evalCommand, ad esempio nel caso in cui sia stato creato un pulsante HTML che agisce da strumento personalizzato

Impostare lo stato degli oggetti

Metodi generali

Segnatura del metodo Da Descrizione
void deleteObject(nome) 2.7 Elimina l'oggetto avente il nome indicato.
void setAuxiliary(geo, true/false) 5.0 Ha effetto o meno sullo status di "oggetto ausiliario" per gli oggetti geo.
void setValue(nome, valore) 3.2 Imposta il valore dell'oggetto avente il nome indicato.
Note: Se l'oggetto specificato è una variabile booleana, utilizzare il valore 1 per impostarla true e un qualsiasi altro valore per impostarla false. Per oggetti di tipo diverso, non si ha alcun effetto.
void setTextValue(Stringa NomeOggetto, Stringa valore) 3.2 Imposta il valore testo dell'oggetto avente il nome indicato. Nessuna modifica è applicata ad ogni altro tipo di oggetto.
void setListValue(Stringa NomeOggetto, int i, double valore) 5.0 Imposta il valore dell'elemento della lista in posizione 'i' uguale a 'valore'
void setCoords(Stringa NomeOggetto, double x, double y)
void setCoords(Stringa NomeOggetto, double x, double y, double z)
3.0
5.0
Imposta le coordinate dell'oggetto avente il nome indicato.
Note: Se l'oggetto specificato non è un punto, un vettore o un oggetto avente una posizione assoluta (testo, pulsante, casella di controllo), non si ha alcun effetto.
void setCaption(Stringa NomeOggetto, Stringa legenda) 5.0 Imposta la legenda dell'oggetto avente il nome indicato.
void setColor(nome, intero rosso, intero verde, intero blu) 2.7 Imposta il colore (RGB) dell'oggetto avente il nome indicato.
void setVisible(nome, booleano) 2.7 Mostra (true) o nasconde (false) nella vista Grafici l'oggetto avente il nome indicato.
void setLabelVisible(nome, booleano) 3.0 Mostra (true) o nasconde (false) nella vista Grafici l'etichetta dell'oggetto avente il nome indicato.
void setLabelStyle(nome, intero) 3.0 Imposta lo stile dell'etichettatura nella vista Grafici dell'oggetto indicato. Gli stili di etichettatura disponibili sono: Nome = 0, Nome e valore = 1, Valore = 2 e Legenda = 3
void setFixed(stringa nomeOggetto, booleano fissato, booleano consentiSelezione) 3.0 Imposta gli stati Fissato e Consenti selezione dell'oggetto indicato.
Note: Gli oggetti fissati non possono essere modificati.
void setTrace(nome, booleano) 3.0 Attiva (true) o disattiva (false) la traccia dell'oggetto indicato.
boolean renameObject(vecchio nome, nuovo nome) 3.2 Rinomina l'oggetto da vecchio nome in nuovo nome. Indica se l'operazione ha avuto successo.
void setLayer(nome, intero) 3.2 Imposta il livello dell'oggetto indicato.
void setLayerVisible(intero, booleano) 3.2 Mostra o nasconde tutti gli oggetti appartenenti al livello indicato.
void setLineStyle(nome, intero) 3.2 Imposta lo stile del tratto dell'oggetto indicato (da 0 a 4).
void setLineThickness(nome, intero) 3.2 Imposta lo spessore (da 1 a 13, -1 è l'impostazione predefinita) del tratto dell'oggetto indicato.
void setPointStyle(nome, intero) 3.2 Imposta lo stile del punto indicato (-1 predefinito, 0 pallino pieno, 1 pallino vuoto, 2 croce, 3 più, 4 rombo pieno, 5 rombo vuoto, 6 triangolo (nord), 7 triangolo (sud), 8 triangolo (est), 9 triangolo (ovest)).
void setPointSize(nome, intero) 3.2 Imposta la dimensione (da 1 a 9) del punto indicato.
void setDisplayStyle(Stringa NomeOggetto, Stringa Stile)5.0Imposta lo stile di visualizzazione di un oggetto. Lo stile deve essere scelto tra "parametric", "explicit", "implicit", "specific"
void setFilling(nome, numero) 3.2 Imposta il riempimento di un oggetto (da 0 a 1).
String getPNGBase64(scala, booleano trasparenza, DPI) 4.0 Restituisce la vista Grafici attiva come stringa codificata in base64
ad es. var str = ggbApplet.getPNGBase64(1, true, 72);
L'impostazione relativa ai DPI crea rallentamenti, impostarla come undefined se non è strettamente necessaria.
void getScreenshotBase64(funzione callback) 5.0 Ottiene una schermata dell'applet in formato PNG e la invia alla funzione callback come stringa codificata base64. Esempio: ggbApplet.getScreenshotBase64(function(url){window.open("data:image/png;base64,"+url);});
Solo ad uso interno, potrebbe non funzionare in tutti i browser
boolean writePNGtoFile(nome file, scala, booleano trasparenza, DPI) 4.0 Esporta la vista Grafici attiva in un file .PNG. L'impostazione dei DPI crea rallentamenti, impostarla come undefined se non è strettamente necessaria.
ad es. var success = ggbApplet.writePNGtoFile("miaImmagine.png", 1, false, 72);
boolean isIndependent(nome) 4.0 Verifica se l'oggetto avente il nome indicato è indipendente.
boolean isMoveable(nome) 4.0 Verifica se l'oggetto avente il nome indicato è movibile.
String getBase64() 4.0 Ottiene la costruzione corrente come file .ggb con codifica base64.
String getBase64(funzione callback) 4.2 Ottiene la costruzione corrente come file .ggb con codifica base64 in modo asincrono, che passa poi come parametro alla funzione callback, la quale deve accettare un solo parametro (la stringa base64).
void setBase64(stringa [, funzione callback]) 4.0 Imposta la costruzione corrente a partire da un file .ggb con codifica base64. Se viene specificata una funzione callback, viene chiamata dopo il caricamento del file.

Animazione automatica

Segnatura del metodo Da Descrizione
void setAnimating(nome, booleano) 3.2 Imposta la possibilità di animare un oggetto (true = attiva, false = non attiva). Per avviare l'animazione utilizzare startAnimation().
void setAnimationSpeed(nome, numero) 3.2 Imposta la velocità di animazione di un oggetto.
void startAnimation() 3.2 Avvia l'animazione automatica di tutti gli oggetti che possono essere animati.
void stopAnimation() 3.2 Interrompe l'animazione di tutti gli oggetti in movimento.
boolean isAnimationRunning() 3.2 Restituisce un booleano che indica se un'animazione è attiva o non attiva.


Verifica automatica degli esercizi (beta)

Segnatura del metodo Da Descrizione
JSONObject getExerciseResult() 5.0 Se il file corrente contiene Macro o Esercizi è possibile verificare se parti della costruzione sono equivalenti alle Macro presenti nel file.
Se non si desidera la creazione di un Esercizio Standard (che utilizza tutte le macro della costruzione e imposta ogni frazione a 100), verificare innanzitutto se quello corrente è un Esercizio con isExercise().
Hint risulterà vuoto se non specificato diversamente nell' ExerciseBuilder.
Fraction sarà 0 oppure 1 se non specificato diversamente nell' ExerciseBuilder.
Il risultato sarà in Result, come segue:
CORRECT, l'esercizio è corretto
WRONG, se l'esercizio non è corretto e non si riesce a dire automaticamente perché
NOT_ENOUGH_INPUTS, se non ci sono input sufficienti per la verifica
WRONG_INPUT_TYPES, se c'è un numero di input sufficiente, ma uno o più di essi sono del tipo sbagliato
WRONG_OUTPUT_TYPE, se l'oggetto in output non è coerente con la macro
WRONG_AFTER_RANDOMIZE, se l'esercizio era inizialmente corretto ma non lo è più dopo il processo di randomizzazione
UNKNOWN, se non è stato possibile valutare l'esercizio.
float getExerciseFraction() 5.0 Se il file corrente contiene Macro o Esercizi è possibile verificare se parti della costruzione sono equivalenti alle Macro presenti nel file.
Il valore restituito è la Frazione complessiva dell' Esercizio.
Tale valore è la somma di tutte le Frazioni dell'attività, oppure 1 se l'attività ha una frazione pari a 100 e non sono presenti frazioni negative. Utilizzare getExerciseResult() per ottenere le frazioni relative a ogni attività. Se non si desidera la creazione di un esercizio standard (che utilizza tutte le macro della costruzione e imposta ogni frazione a 100), verificare innanzitutto se quello corrente è un Esercizio con isExercise().
boolean startExercise() 5.0 Utilizza i valori casuali da cui dipende un BoolAssignment: questo è un modo semplice per ottenere tali valori da visualizzare nel testo delle domande e interromperne la generazione casuale, in modo da memorizzare lo stesso esercizio che è stato presentato allo studente.
boolean isExercise() 5.0 Verifica se l'applet corrente è un Esercizio.
Restituisce: true se l'Esercizio ha delle attività, cioè se getExerciseResult() o getExerciseFraction() sono chiamati tramite strumenti definiti dall'utente presenti nell'applet o se è stato utilizzato l'ExerciseBuilderDialog per creare l'esercizio.

Un esempio che utilizza tali funzioni API è disponibile qui:

  http://dev.geogebra.org/examples/html/example10.html

Ottenere lo stato degli oggetti

Segnatura del metodo Da Descrizione
double getXcoord(nome) 2.7 Restituisce l'ascissa dell'oggetto avente il nome indicato.
Note: Restituisce 0 se l'oggetto non è un punto o un vettore.
double getYcoord(Stringa nomeOggetto) 2.7 Restituisce l'ordinata dell'oggetto avente il nome indicato.
Note: Restituisce 0 se l'oggetto non è un punto o un vettore.
double getZcoord(Stringa nomeOggetto) 5.0 Restituisce la coordinata z dell'oggetto avente il nome indicato.
Note: Restituisce 0 se l'oggetto non è un punto o un vettore.
double getValue(nome) 3.2 Restituisce il valore dell'oggetto indicato (ad es. la lunghezza di un segmento, l'area di un poligono).
Note: Restituisce 1 se l'oggetto è una variabile booleana a valore true. In ogni altro caso restituisce 0.

double getListValue(Stringa Nome oggetto, Indice intero) 5.0 Restituisce il valore dell'oggetto della lista (avente il nome indicato) che occupa la posizione indicata dall'indice.
Note: Restituisce 1 se l'oggetto è una variabile booleana a valore true. In ogni altro caso restituisce 0.

String getColor(nome) 2.7 Restituisce il colore dell'oggetto indicato sotto forma di stringa esadecimale, ad es. "#FF0000" è il rosso. La stringa esadecimale inizia sempre con # e non contiene lettere minuscole.
boolean getVisible(nome) 3.2 Restituisce true o false a seconda che l'oggetto sia visibile o meno nella vista Grafici. Restituisce false se l'oggetto non esiste.
boolean getVisible(nome, int vista) 4.2 Restituisce true o false a seconda che l'oggetto sia visibile o meno nella vista Grafici 'vista' (1 o 2). Restituisce false se l'oggetto non esiste.
String getValueString(nome) 2.7 Restituisce una stringa contenente il valore dell'oggetto indicato.
String getDefinitionString(stringa nomeOggetto [, booleano usaInputLocalizzato]) 2.7 Restituisce una stringa contenente la descrizione dell'oggetto indicato. Se usaInputLocalizzato è 'false', restituisce il comando in inglese, altrimenti nella lingua corrente della GUI. Nota: L'input localizzato utilizza parentesi tonde, quello non localizzato utilizza parentesi quadre.
String getLaTeXString(stringa nomeOggetto)5.0Restituisce il valore dell'oggetto indicato, in sintassi LaTeX
String getLaTeXBase64(stringa nomeOggetto, valore booleano)5.0Restituisce un immagine PNG codificata in base64, contenente l'oggetto come LaTeX. Se valore = false l'oggetto viene rappresentato con la definizione, se valore=true viene utilizzato il valore dell'oggetto.
Stringa getCommandString(Stringa NomeOggetto [, booleano usaInputLocalizzato]) 5.0 Restituisce una stringa contenente il comando relativo all'oggetto avente il nome indicato. Se usaInputLocalizzato è false, restituisce il comando in inglese, altrimenti nel linguaggio correntemente selezionato nella GUI. Nota: L'input localizzato utilizza parentesi tonde, quello non localizzato utilizza parentesi quadre
String getObjectType(nome) 2.7 Restituisce una stringa contenente il tipo dell'oggetto indicato (come"punto", "retta", "circonferenza", ecc.).
boolean exists(nome) 2.7 Restituisce un booleano che indica se l'oggetto avente il nome indicato esiste (true) o no (false) nella costruzione.
boolean isDefined(nome) 2.7 Restituisce un booleano che indica se il valore dell'oggetto indicato è correntemente valido (true) o no (false).
String [] getAllObjectNames([tipo stringa])
Deprecato dalla v.3.0
2.7 Restituisce un elenco di tutti i nomi degli oggetti presenti nella costruzione. Se viene inserito un parametro per il tipo, vengono elencati solo gli oggetti di quel tipo.
int getObjectNumber() 3.0 Restituisce il numero di oggetti nella costruzione.
int getCASObjectNumber() 3.0 Restituisce il numero di oggetti (celle non vuote) nella vista CAS.
String getObjectName(intero) 3.0 Restituisce il nome dell'n-esimo oggetto della costruzione.
String getLayer(nome) 3.2 Restituisce il livello a cui appartiene l'oggetto indicato.
int getLineStyle(nome) 3.2 Rileva lo stile della linea dell'oggetto indicato (da 0 a 4).
int getLineThickness(nome) 3.2 Rileva lo spessore della linea (da 1 a 13).
int getPointStyle(nome) 3.2 Rileva lo stile dei punti (-1 predefinito, 0 pallino pieno, 1 pallino vuoto, 2 croce, 3 più, 4 rombo pieno, 5 rombo vuoto, 6 triangolo (nord), 7 triangolo (sud), 8 triangolo (est), 9 triangolo (ovest)).
int getPointSize(nome) 3.2 Rileva la dimensione (da 1 a 9) del punto indicato.
double getFilling(nome) 3.2 Rileva il riempimento (da 0 a 1) dell'oggetto indicato.
getCaption(Stringa nomeOggetto, booleano sostituisciSegnaposto) 5.0 Restituisce la legenda dell'oggetto. Se la legenda contiene dei segnaposto (%n, %v,...), è possibile utilizzare il secondo parametro per specificare se si desidera sostituirli o meno.
getLabelStyle(Stringa nomeOggetto) 5.0 Restituisce il tipo di etichetta dell'oggetto, vedere anche setLabelStyle per i valori utilizzabili.
getLabelVisible() 5.0

Costruzione / Interfaccia utente

Segnatura del metodo Da Descrizione
void setMode(numero modalità) 2.7 Imposta la modalità del mouse (cioè lo strumento selezionato) nella vista Grafici.
Esempio: setMode(0) per impostare la modalità Muovi.
(vedere Riferimenti: barra degli strumenti e i parametri dell'applet "showToolBar" e "customToolBar" )
int getMode()5.0Ottiene la modalità del mouse (cioè lo strumento selezionato). Vedere Riferimenti: barra degli strumenti per ulteriori dettagli
void openFile(stringa URL) 2.7 (Solo Java) Apre una costruzione presente in un file (indicato da una stringa con URL assoluto o relativo)
void reset() 2.7 Ricarica la costruzione iniziale (indicata nel parametro filename) dell'applet corrente.
void newConstruction() 2.7 Rimuove tutti gli oggetti della costruzione
void refreshViews() 2.7 Aggiorna tutte le Viste.
Note: Tutte le tracce presenti nella vista Grafici saranno eliminate.
void setOnTheFlyPointCreationActive(booleano)
3.2 Attiva (true) o disattiva (false) la creazione immediata di punti nella vista Grafici.
Note: Utile per evitare la creazione di punti come "effetto collaterale" di uno strumento. Ad esempio, quando questa flag è false, lo strumento "Retta - per due punti" non crea punti quando si fa clic nella vista Grafici.
void setPointCapture(vista, modo)
5.0
void setRounding(stringa arrotonda)
5.0 La stringa è composta da numeri e contrassegni, "s" per le cifre significative, "d" per le posizioni decimali (predefinito). Gli interi JavaScript sono inviati alla stringa automaticamente. Esempio: "10s", "5", 3
void hideCursorWhenDragging(booleano)
3.2 Nasconde (true) o mostra (false) il cursore del mouse (puntatore) quando si trascina un oggetto per modificare la costruzione.
void setRepaintingActive(booleano)
2.7 Attiva (true) o disattiva (false) il ricalcolo dell'applet.
Note: Questo metodo è efficiente specialmente quando vengono invocati più metodi.
void setErrorDialogsActive(booleano) 3.0 Attiva (true) o disattiva (false) la visualizzazione di finestre di dialogo relative agli errori.
Note: Molto utile se utilizzato assieme a evalCommand().
void setCoordSystem(xmin, xmax, ymin, ymax) 3.0 Imposta il sistema di coordinate cartesiane della vista Grafici.
void setCoordSystem(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, booleano yVerticale) 5.0 Imposta il sistema di coordinate cartesiane della vista Grafici 3D. L'ultimo parametro indica se l'asse y deve essere orientato verticalmente.
void setAxesVisible(booleano asseX, booleano asseY) 3.0 Mostra o nasconde gli assi x e y del sistema di coordinate della vista Grafici 1 e 2.
void setAxesVisible(int NumeroVista, booleano asseX, booleano asseY, booleano asseZ) 5.0 Mostra o nasconde gli assi x, y e z del sistema di coordinate nella vista Grafici indicata
Esempio: ggbApplet.setAxesVisible(3, false, true, true)
void setAxisLabels(int NumeroVista, booleano asseX, booleano asseY, booleano asseZ) 5.0 Imposta l'etichetta degli assi x, y, z del sistema di coordinate della vista Grafici indicata.
Esempio: ggbApplet.setAxisLabels(3,"larg","lung","area")
void setAxisSteps(int NumeroVista, booleano asseX, booleano asseY, booleano asseZ) 5.0 Imposta le distanze sugli assi x, y, z del sistema di coordinate della vista Grafici indicata.
Esempio: ggbApplet.setAxisSteps(3, 2,1,0.5)
void setAxisUnits(int NumeroVista, booleano asseX, booleano asseY, booleano asseZ) 5.0 Imposta le unità sugli assi x, y, z del sistema di coordinate della vista Grafici indicata.
Esempio: ggbApplet.setAxisUnits(3, "cm","cm","cm²")
void setGridVisible(booleano) 3.0 Mostra (true) o nasconde (false) la griglia della vista Grafici 1 e 2.
void setGridVisible(int NumeroVista, booleano) 5.0 Mostra (true) o nasconde (false) la griglia della vista Grafici indicata.
getGridVisible(int numeroVista) 5.0 Restituisce true se la griglia è visibile nella vista indicata. Se il numero della vista viene omesso, restituisce se la griglia è visibile nella prima vista Grafici.
getPerspectiveXML() 5.0 Restituisce una rappresentazione XML della Raccolta viste attiva.
undo() 5.0 Annulla l'ultima azione dell'utente.
redo() 5.0 Ripete un'azione dell'utente.
showToolBar(booleano mostra) HTML5 Imposta la visibilità della barra degli strumenti
setCustomToolBar(Stringa barra strumenti)5.0Imposta il layout della barra degli strumenti principale, vedere Riferimenti:Barra degli strumenti per ulteriori dettagli
showMenuBar(booleano mostra) HTML5 Imposta la visibilità della barra dei menu
showAlgebraInput(booleano mostra) HTML5 Imposta la visibilità della barra di inserimento
showResetIcon(booleano mostra) HTML5 Imposta la visibilità dell'icona di ripristino
enableRightClick(booleano abilita) 5.0 Abilita o disabilita le funzionalità del clic destro
enableLabelDrags(booleano abilita) 5.0 Abilita o disabilita il trascinamento delle etichette degli oggetti
enableShiftDragZoom(booleano abilita) 5.0 Abilita o disabilita lo zoom e il trascinamento della vista con il mouse o la tastiera
enableCAS(booleano abilita) 5.0 Abilita o disabilita le funzionalità CAS (sia per la visualizzazione che nei comandi)
enable3D(booleano abilita) 5.0 Abilita o disabilita la vista 3D
void setPerspective(stringa raccoltaViste) 5.0 Modifica le viste aperte, vedere Comando_ImpInterfaccia per l'interpretazione della stringa.
setWidth(int larghezza) 5.0 (HTML5) Modifica la larghezza dell'applet (in pixel)
setHeight(int altezza) 5.0 (HTML5) Modifica l'altezza dell'applet (in pixel)
setSize(int larghezza, int altezza) 5.0 (HTML5) Modifica larghezza e altezza dell'applet (in pixel)
recalculateEnvironments() 5.0 (HTML5) Aggiorna l'applet dopo lo scaling da CSS esterno

Listener degli eventi

I seguenti metodi consentono l'implementazione della comunicazione tra Applet e JavaScript. Tali metodi possono essere utilizzati ad esempio per:

Segnatura del metodo Da Descrizione
void registerAddListener(nome funzione JS) 3.0 Registra una funzione JavaScript come add listener per la costruzione dell'applet. Ogniqualvolta viene creato un nuovo oggetto nella costruzione della GeoGebraApplet, viene chiamata la funzione JavaScript dal nome indicato, avente come singolo argomento il nome dell'oggetto appena creato.
Esempio: Registrare innanzitutto una funzione listener JavaScript:
ggbApplet.registerAddListener("miaFunzioneAggiungiListener");

Quando viene creato un oggetto "A", l'applet di GeoGebra chiama la funzione Javascript

miaFunzioneAggiungiListener("A");
void unregisterAddListener(nome funzione JS) 3.0 Rimuove un add listener precedentemente registrato, vedere registerAddListener()
void registerRemoveListener(nome funzione JS) 3.0 Registra una funzione JavaScript come remove listener per la costruzione dell'applet. Ogniqualvolta un oggetto viene eliminato dalla costruzione presente in GeoGebraApplet, viene chiamata la funzione JavaScript dal nome indicato, utilizzando come singolo argomento il nome dell'oggetto eliminato.
Note: Quando si cancella tutta la costruzione, remove non viene chiamato per ogni singolo oggetto: vedere registerClearListener().

Esempio: Registrare innanzitutto una funzione listener JavaScript:
ggbApplet.registerRemoveListener("miaFunzioneRimuoviListener");

Quando viene eliminato un oggetto "A", l'applet di GeoGebra chiama la funzione Javascript

miaFunzioneRimuoviListener("A");
void unregisterRemoveListener(nome funzione JS) 3.0 Rimuove un remove listener precedentemente registrato, vedere registerRemoveListener()
void registerUpdateListener(nome funzione JS) 3.0 Registra una funzione JavaScript come update listener per la costruzione dell'applet. Ogniqualvolta un oggetto viene aggiornato nella costruzione presente in GeoGebraApplet, viene chiamata la funzione JavaScript dal nome indicato, utilizzando come singolo argomento il nome dell'oggetto aggiornato.
Note: Se si desidera un listen relativo esclusivamente all'aggiornamento di un determinato oggetto, è meglio utilizzare registerObjectUpdateListener() .

{{Example|1= Registrare innanzitutto una funzione listener JavaScript:

ggbApplet.registerUpdateListener("miaFunzioneAggiornaListener");

Quando viene aggiornato un oggetto "A", l'applet di GeoGebra chiama la funzione Javascript

myUpdateListenerFunction("A");
void unregisterUpdateListener(nome funzione JS) 3.0 Rimuove un update listener precedentemente registrato, vedere registerUpdateListener()
void registerClickListener(Stringa nomeFunzioneJS) 5.0 Registra una funzione JavaScript come clic listener per la costruzione dell'applet. Quando si fa clic su un oggetto nella costruzione della GeoGebraApplet, la funzione JavaScript nomeFunzioneJS viene chiamata, utilizzando il nome dell'oggetto aggiornato come singolo argomento. Nota: se si desidera solo un listen per gli aggiornamento do un singolo oggetto, utilizzare registerObjectClickListener().

>

void unregisterClickListener(Stringa nomeOggetto) 3.0 Rimuove un listener di clic precedentemente registrato, vedere registerClickListener()
void registerObjectUpdateListener(nome, nome funzione JS) 3.0 Registra una funzione JavaScript come update listener per un singolo oggetto. Ogniqualvolta l'oggetto avente il nome indicato viene aggiornato, viene chiamata la funzione JavaScript avente il nome indicato, utilizzando come singolo argomento il nome dell'oggetto aggiornato. Se il nome dell'oggetto è stato precedentemente associato a una funzione di mapping JavaScript, verrà sostituito il valore precedente.
Note: Quando la costruzione viene cancellata, o un oggetto viene eliminato, i listener aggiornati relativi alla costruzione o all'oggetto vengono rimossi dalla registrazione: vedere registerRemoveListener() and registerClearListener().

Esempio: Registrare innanzitutto una funzione listener JavaScript:
ggbApplet.registerObjectUpdateListener("A", "miaFunzioneListenerAggOgg");

Quando viene aggiornato un oggetto "A", l'applet di GeoGebra chiama la funzione Javascript

miaFunzioneListenerAggOgg("A");
Note: Un update listener di un oggetto continua a funzionare anche dopo che l'oggetto viene rinominato.
void unregisterObjectUpdateListener(nome) 3.0 Rimuove un update listener precedentemente registrato, relativo all'oggetto avente il nome indicato, vedere registerObjectUpdateListener()
void registerObjectClickListener(String objName, Stringa nomeFfunzioneJS) 5.0 Registra una funzione JavaScript come listener di clic di un singolo oggetto. Quando si fa clic sull'oggetto avente il nome indicato, la funzione JavaScript nomeFunzioneJSviene chiamata utilizzando il nome dell'oggetto aggiornato come unico argomento. Se nomeOggetto ha una funzione di mapping JavaScript, verrà sostituito il vecchio valore. Nota: tutti i listener di clic di oggetti vengono de-registrati quando il relativo oggetto viene rimosso o la costruzione viene svuotata, vedere registerRemoveListener() and registerClearListener().

Esempio: Registrare innanzitutto una funzione di listening JavaScript:

ggbApplet.registerObjectUpdateListener("A", "miaFunzioneListenerAggiornamentoA");

Quando si fa clic sull'oggetto A, l'applet di GeoGebra chiama la funzione Javascript

miaFunzioneListenerAggiornamentoA("A");

Nota: un listener di aggiornamento di un oggetto funziona anche dopo che l'oggetto viene rinominato.

void unregisterObjectClickListener(Stringa nomeOggetto) 5.0 Rimuove il listener di clic di un oggetto precedentemente registrato con il nome indicato, vedere registerObjectClickListener()
void registerRenameListener(nome funzione JS) 3.0 Registra una funzione JavaScript come rename listener per la costruzione dell'applet. Ogniqualvolta un oggetto viene rinominato nella costruzione, viene chiamata la funzione JavaScript dal nome indicato e avente per argomenti il vecchio nome e il nuovo nome dell'oggetto.
Esempio: Registrare innanzitutto una funzione listener JavaScript:
ggbApplet.registerRenameListener("miaFunzioneListenerRinomina");

Quando un oggetto "A" viene rinominato come "B", l'applet di GeoGebra chiama la funzione Javascript

miaFunzioneListenerRinomina("A", "B");
void unregisterRenameListener(nome) 3.0 Rimuove un rename listener precedentemente registrato, vedere registerRenameListener()
void registerClearListener(nome funzione JS) 3.0 Registra una funzione JavaScript come clear listener per la costruzione dell'applet. Ogniqualvolta la costruzione in GeoGebraApplet viene svuotata (cioè vengono rimossi tutti gli oggetti), viene chiamata la funzione JavaScript dal nome indicato, senza argomenti.
Note: Quando una costruzione viene svuotata, tutte le registrazioni relative agli update listener vengono rimosse. Vedere registerUpdateListener() e registerRemoveListener().

Esempio: Registrare innanzitutto una funzione listener JavaScript:
ggbApplet.registerClearListener("miaFunzioneListenerSvuota");

Quando la costruzione viene svuotata (cioè all'apertura di un nuovo file o dopo un ripristino della costruzione), l'applet di GeoGebra chiama la funzione Javascript

miaFunzioneListenerSvuota();
void unregisterClearListener(stringa nomeFunzioneJS) 3.0 Rimuove un clear listener precedentemente registrato, vedere registerClearListener()

void registerStoreUndoListener(Stringa nomeFunzioneJS)

4.4

Registra un listener che viene chiamato (senza argomenti) ogni volta che viene creato un annullamento.
void unregisterStoreUndoListener(Stringa nomeFunzioneJS)

4.4

Rimuove il listener precedentemente registrato per memorizzare gli annullamenti, vedere registerStoreUndoListener

Il formato XML di GeoGebra

Con questi metodi è possibile impostare la costruzione (vedere Riferimenti XML ).

Segnatura del metodo Da Descrizione
void evalXML(Stringa xml) 2.7 Valuta la stringa XML e modifica di conseguenza la costruzione corrente.
Note: La costruzione NON viene svuotata dai relativi elementi prima della valutazione della stringa XML.
void setXML(Stringa xml) 2.7 Valuta la stringa XML e modifica di conseguenza la costruzione corrente.
Note: La costruzione viene svuotata dai relativi elementi prima della valutazione della stringa XML. Questo metodo può essere utilizzato per caricare le costruzioni.
String getXML()
2.7 Restituisce la costruzione corrente in formato XML di GeoGebra. Questo metodo può essere utilizzato per salvare le costruzioni.
String getXML(nome)
3.2 Restituisce la stringa XML di GeoGebra relativa all'oggetto indicato, cioè viene restituito solo il tag dell'<elemento>.
String getAlgorithmXML(nome)
3.2 Viene restituita la stringa XML dell'algoritmo ascendente e di tutti gli oggetti generati dall'elemento avente il nome indicato. Se non viene passato alcun nome di oggetto, questo metodo restituisce "" .

Varie

Segnatura del metodo Da Descrizione
void debug(stringa) 3.2 Stampa la stringa indicata nella Console Java.
String getVersion()5.0Restituisce la versione di GeoGebra

Ottenere l'oggetto applet

Generalmente l'applet è memorizzata in una variabile globale ggbApplet: se sono presenti più applet in una singola pagina, per impostazione predefinita una sola è accessibile da JavaScript. Per accedere a più applet è necessario impostare il parametro "id" alle applet, in modo da assegnare un nome univoco alla variabile globale che identifica ciascuna di esse.

© 2024 International GeoGebra Institute