对于使用GeoGebra(GGB)进行编程和开发的用户而言,文档不仅是获取信息的主要渠道,也是解决问题、提升技能的宝贵资源。本文将探讨查阅GGB开发文档的必要性,推荐有效的渠道,以及如何利用这些文档来优化你的开发流程。无论你是刚刚入门的初学者,还是经验丰富的开发者,了解这些资源都将为你的工作带来显著的帮助和启发。
GGB的脚本种类与开发文档查阅
注意:本系列所有的文章都是基于geogebra6进行,因为资料更齐全,运行更流畅。也可以参考往期文章,查阅5和6之间的区别。
一、Geogebra的脚本种类
整体来看,Geogebra的脚本分成两类,分别是Geogebra script和JavaScript,两者各有利弊。这两种脚本在脚本选择框中软件也给我们指示了出来。
1. Geogebra script
(1)什么是Geogebra脚本
基础篇的时候讲解过Geogebra的布局,我们重温一下,这个地方叫命令行:
如果不知道什么是Geogebra脚本,那么输入的这些命令就是Geogebra脚本。这就回答了很多人的问题,脚本输入框中该怎么输入的问题,其实很简单,命令行怎么输入,那么脚本输入框就怎么输入。
接下来我来举个例子,会更直观一些。
(2)Geogebra脚本举例
这里我创建一个点,再创建一个半径,最后创建一个圆。
在命令行中是这么写的:
然后就创建出了一个圆:
如果在脚本输入框中怎么写呢?
为了方便展示我创建一个按钮,按钮的名字就叫“测试”吧,至于脚本可以暂时先不写:
然后点击测试按钮,Ctrl + E打开属性开关,点击脚本输入框,注意看,这里的脚本选择是Geogebra脚本,触发选项选的是点击后:
然后我们把命令行中的命令一股脑输入进来就可以了:
A = (1, 2); // 创建一个点A
r = 3; // 定义半径
C = Circle(A, r); // 创建圆C
然后Ctrl + E关闭属性栏,切记,一定要关闭,要不然按钮没有作用。点击一下,效果就有了:
(3)Geogebra脚本详解
我们把目光还回到这一串脚本上:
A = (1, 2); // 创建一个点A
r = 3; // 定义半径
C = Circle(A, r); // 创建圆C
如果懂代码的话我就不用过多解释了,因为这个是写代码的常规套路。
首先是注释:
// 创建一个点A
这个是给开发者自己看的,避免写的多了自己都不知道写的是啥,脚本在执行的过程中//后内容不执行。
其次是分号:
r = 3; // 定义半径
每句话后边都有分号,Geogebra脚本的要求即是如此,每句命令后边以分号作结尾,如果不写会怎么样?不怎么样,会报错!
(4)Geogebra脚本有什么作用
可能有些人会想,明明我命令行都能是实现,为什么非要写个脚本呢?
咳,提出这种问题可能是我举的例子太简单了,没有对比性。但是不妨这么想:如果我想画100个圆,每个圆只是圆心不一样,那又该怎么绘制呢?
如果是命令行的话可能得输入100次,也就是300个命令。
但如果使用脚本的话只需一个循环语句就可以了,当然,逻辑语句对于本篇文章有点超纲,后续我们继续聊这些高端操作。
2. JavaScript脚本
(1)什么是JavaScript脚本
对于想做教学动画的老师或者学生来说,并没有那么高的编程水平,所以JavaScript脚本可能很少用。但要知道,Geogebra脚本只发挥了Geogebra工具的三成威力,若想发挥Geogebra的全部威力,需要上JavaScript。
这里我先简单介绍下JavaScript:
JavaScript是一种高层次、动态、弱类型的编程语言,广泛用于网页开发。它允许开发者创建互动的网页元素,如动态内容、动画效果和用户界面交互。JavaScript可在浏览器中运行,也可以用于服务器端开发(如Node.js)。其主要特点包括事件驱动、原型继承和异步编程,能够与HTML和CSS结合使用,为网页增添功能和交互性。
JavaScript在GeoGebra中扮演着重要角色,尤其在实现交互和动态功能方面。通过JavaScript,用户可以访问GeoGebra的API,创建自定义脚本来控制图形和对象行为。例如,可以编写代码响应用户输入、动态更新图形或实现复杂的数学计算。JavaScript的灵活性使得开发者能够构建更丰富的交互体验,帮助学生更好地理解数学概念,同时也允许在网页上嵌入GeoGebra应用,从而拓宽其应用场景。使用JavaScript,你可以将GeoGebra的强大功能与其他网页技术结合,打造个性化的数学学习工具。
总结来说:简单操作用Geogebra脚本,复杂操作用JavaScript脚本(比如写动画算法等等);
而根据我做Geogebra这么多年的经验来看,最好的方式就是:命令行用Geogebra脚本,脚本框里统一用JavaScript脚本。
(2)JavaScript脚本举例
这里我还用点击按钮绘制一个圆来举例子:
写脚本之前,我们比如明白Geogebra脚本与JavaScript脚本之间的关系:
- Geogebra脚本是Geogebra的根基,Geogebra软件执行时只认Geogebra脚本;
- JavaScript脚本虽然强大,但在Geogebra中无法脱离Geogebra脚本而存在。
或者我这么说:
如果JavaScript脚本想写一个数据,比如先把这个命令变成Geogebra脚本的样式,才能被运行。
哈哈哈,说到这里大家可能有点晕,咋子个回事?不碍事,我们先看例子:
ggbApplet.evalCommand("A = (1, 2)");
这句命令是JavaScript脚本,点击按钮后就创建了一个A点,坐标是(1,2)。
是不是突然就有点感觉了?
在JavaScript中,如果要创建一个点,就不能直接写A = (1,2),因为Geogebra不认识,那该怎么办,就需要调用ggbApplet.evalCommand(),把想要执行的命令转换成Geogebra认识的样子。
我们接着把其他命令写完,这样点击后效果就出来了。
ggbApplet.evalCommand("A = (1, 2)");
ggbApplet.evalCommand("r = 3");
ggbApplet.evalCommand("C = Circle(A, r)");
(3)JavaScript详解
ggbApplet.evalCommand("A = (1, 2)");
ggbApplet.evalCommand("r = 3");
ggbApplet.evalCommand("C = Circle(A, r)");
有些人可能忍不住了,这T么不是脱裤子放屁??!,本来我用Geogebra脚本简单三句的事情,用JavaScript脚本非得加个壳。
是的,直观来看是这样。
但,这只是JavaScript最终要和Geogebra交互的部分,稍微麻烦了一点,对于不用交互的部分,JavaScript是脱缰的野马,非Geogebra脚本可以比拟。Geogebra高级篇我会逐步向大家分享更高深的JavaScript使用方式,欢迎关注。
我们先来看代码(其他的两句都类似):
ggbApplet.evalCommand("A = (1, 2)");
对于外边这个ggbApplet.evalCommand()这个壳,大家可以先记下,因为深讲的话倒不好理解了,可以简单理解为JavaScript中让Geogebra执行命令的方式。
但是这个分号,一定要加,和Geogebra脚本要求一样。
注意,在JavaScript中运行Geogebra命令的时候,Geogebra命令不用加分号。因为ggbApplet.evalCommand()一次只运行一个命令,加分号已经没有意义了。(强行加也不会报错,这个地方看心情,想加就加)
3. Geogebra脚本与JavaScript脚本的对比与联系
特性 | GeoGebra脚本 | JavaScript脚本 |
---|---|---|
易用性 | 简单易学,适合初学者 | 需要一定编程基础 |
语法 | 专门为GeoGebra设计,命令直观 | 基于通用编程语言,语法灵活 |
功能性 | 主要用于几何图形和数学对象创建 | 可用于复杂逻辑和数据处理 |
运行环境 | 直接在GeoGebra环境中执行 | 可在浏览器和Node.js等多种环境中执行 |
灵活性 | 相对有限,专注于数学应用 | 高度灵活,适合多种应用场景 |
交互性 | 简单的用户交互功能 | 可以实现复杂的用户交互 |
集成能力 | 与GeoGebra对象直接集成 | 可与其他Web技术结合使用 |
动态更新 | 适合简单的动态更新 | 支持异步处理和复杂的动态效果 |
在Geogebra中,若想用脚本实现高级效果,可以考虑这句话:JavaScript脚本可以处理复杂的逻辑,但最终的执行要交给Geogebra去实现。
这里就不得不引入一个很重要的内容,那就是Geogebra脚本与JavaScript脚本的交互,比如JavaScript怎么取值,怎么赋值,怎么执行命令等等。这篇篇幅有限,后续再讲。
二、如何查阅Geogebra脚本
Geogebra放置有很多查看Geogebra脚本(也就是Geogebra命令)的地方,但是很多人被搞糊涂了,为什么点进来没有呢?
没事,我们今天一起看一下:
首先要明白,Geogebra提供两个帮助的地方,一个是帮助中心,一个是帮助(第二个才是我们可以查阅的Geogebra脚本)。
1. 帮助中心
帮助中心主要是一种宣传作用,对于实打实的开发没有什么作用,第一个学习模块也非常简单,如果是零基础起步的话可以考虑从这里开干。
(1)进入方式1——菜单栏进入
(2)进入方式2——官网底部进入
2. 帮助
这个非常重要,在后续我们开发过程中,遇到任何不理解的Geogebra命令(Geogebra脚本)都可以从以下几种方式查阅:
(1)点击命令行的加号进行跳转
(2)点击小键盘的三个点进行跳转
(3)有时候在脚本报错的时候弹窗会给一个“查看详情”按钮,点击后也可以跳转
这个地方没有保留截图,遇到了之后知道有这个途径即可。
(4)直接保存Geogebra脚本的网址,随时查看:
前两种方式的右上角有一个show online help,点击后就是这个网址:
不知道你们是够可以看到中文版,莫非是因为我电脑的缘故,所以没有中文?
如果没有中文的话那就考验英文水平了,不过若想搞编程,英语还是基本功。
三、如何查阅JavaScript脚本
对于javaScript脚本的查阅,没有那么多的花里胡哨,只有一个链接,大家记得保存一下:
JavaScript 接口文档
这个文档是Geogebra的至尊版的武功秘籍,勤学勤练,终成大才。
四、文章最后
最后呢,欢迎关注微信公众号“第五智能”,代码+设计,让我们走在时代前沿,若有任何问题随时咨询。