[英]how to call a javascript function from a geogebra script?
在 Geogebra 中,讓我們從一個按鈕(屬性)定義一個 JavaScript 全局函數:
function ggbOnInit() {
}
function test(par) {
return par * math.random();
}
如何從附加到該按鈕的 Geogebra 腳本中調用該函數(“單擊時”屬性)?
以下 Geogebra 腳本:
Sequence[test(3),k,1,5]
啟動錯誤消息“未知命令測試”,而等待 0 到 3 之間的五個隨機數序列。
為了調用您的全局 JavaScript 函數,您的“點擊時”腳本必須是 JavaScript 類型,而不是 GeoGebra 腳本。
我找到了這個可能的解決方案。
創建一個按鈕並在“單擊時”部分中,在底部選擇“ JavaScript ”,插入代碼:
ggbApplet.evalCommand("list={0}");
if (! ggbApplet.exists("par")) {ggbApplet.evalCommand("par=200")};
for(var i =1;i<5;i++)
ggbApplet.evalCommand("SetValue[list," +i+", par* random()]");
par參數可以設置為 Geogebra 變量或在代碼內部(如果變量不存在,將使用最后一個值)。
無論如何,我找不到如何在Global Javascript選項卡中使用函數或如何使用 Javascript math.random() 命令。
問題是 Geogebra 中可用的 JavaScript 命令可能是其外部可用的有限 JavaScript 集,但我不確定。
我不確定您是要獲得五個隨機整數還是十進制數。 如果您想獲得 0 到 3 之間的五個隨機整數,您可以使用 GeoGebra 腳本輕松完成。 您可以首先創建一個空列表,例如將 list={} 寫入輸入欄,然后用按鈕填充它或使用按鈕動態創建它。
創建一個按鈕,打開對象屬性,轉到腳本選項卡並在單擊選項卡內寫入下一行:list=Sequence[RandomBetween[0,3],k,1,5]
確保您在下拉菜單中選擇了“GeoGebra 腳本”。
如果您想要 0 到 3 之間的五個隨機小數,則執行相同操作,但代碼行略有不同: list1=Sequence[random()+RandomBetween[0,2],k,1,5]
希望這有幫助...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.