最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

S8G6 讓烏龜動(dòng)起來

2021-02-22 10:25 作者:學(xué)用數(shù)學(xué)  | 我要投稿

在不少程式語言中,都有支援 Turtle?套件,這個(gè)套件可讓程式新手通過一些回圈的概念來繪制有規(guī)律的基本圖形。而 在 Gegoebra 也支援一些基本的 Turtle 指令,使用 Geogebra 腳本就可讓這 烏龜動(dòng)起來。本節(jié)就用幾個(gè)入門的例子來開啟 Turtle 的第一步。


任務(wù)一:用烏龜繪制三角形

繪制三角形

說明:要召喚烏龜需要用 Geogebra 的腳本來控制。因此。需要先增加一個(gè)按鈕,并對(duì)這按鈕增加腳本指令來控制。Geogebra 的烏龜基本指令有以下五種:

  • Turtle()? 召喚烏龜,

  • TurtleForward(turtle, 2)? ?讓烏龜前進(jìn) 2 格

  • TurtleBackward(turtle, 3)??? ?讓烏龜后退?3 格

  • TurtleRight(turtle, 60) 讓烏龜右轉(zhuǎn)?60?度

  • TurtleLeft(turtle, 30)???讓烏龜左轉(zhuǎn)?30?度

要讓烏龜繪制個(gè)等邊三角形,就可通過先前進(jìn)?1格、左轉(zhuǎn) 120度;前進(jìn)1格、左轉(zhuǎn) 120度;前進(jìn)1格、左轉(zhuǎn) 120度就可繪制出來。在這要注意的是旋轉(zhuǎn)角度是三角形的外角而不是內(nèi)角。

操作

ta= Turtle()

TurtleForward[ta,1]

TurtleLeft[ta, 120 deg]

TurtleForward[ta,1]

TurtleLeft[ta, 120 deg]

TurtleForward[ta,1]

TurtleLeft[ta, 120 deg]

任務(wù)二:用烏龜繪制共邊的正多邊形

繪制共邊的正n邊形

說明:上面已經(jīng)通過重復(fù)三次的前進(jìn)與旋轉(zhuǎn)來繪制正3角形。但想要繪制正n邊形,則可通過 [Repeat] 這指令,來達(dá)到重復(fù)的效果。

為了讓程式可以繪制出正 3,4,5,6,7,8 多邊形??梢酝ㄟ^建立滑動(dòng)條 n,接著將旋轉(zhuǎn)的角度設(shè)定為 360/n deg ,就可到此效果。

操作

ta= Turtle()

Repeat[n,TurtleForward[ta,1],TurtleLeft[ta, 360/n deg]]

任務(wù)三:用烏龜繪制共點(diǎn)的n角形

繪制共圓的正n邊形

說明:在前面繪制的共邊的正n邊形,隨著邊數(shù)越來越多,其圖形也會(huì)隨之變大。若想要圖形大小維持在一定的比例,這時(shí)就可利用圓內(nèi)接多邊形。這時(shí)要留意角度與長(zhǎng)度的計(jì)算。

在半徑為 1 的圓內(nèi)接正 n 多邊形,其邊長(zhǎng)為 2*sin(180 deg/n)。

在角度部分,可利用弦切角來得到一開始右轉(zhuǎn) 180*deg/n 。但為了接續(xù)后面的正多邊形,在每次繪制后,仍需要再左轉(zhuǎn)??180*deg/n 。使其角度歸位。

操作

tc = Turtle()

SetCoords[tc,0,1]

TurtleRight[tc,180*deg/n]

Repeat[n,TurtleForward[tc, 2*sin(180*deg/n) ] ,TurtleRight[tc,360*deg/n]]

TurtleLeft[tc,180*deg/n]

任務(wù)四:用烏龜繪制共點(diǎn)的n角星

說明:有了共圓的n邊形,就可繪制共圓的n角星。再繪制n角星時(shí),還要新增一個(gè)滑動(dòng)條 m 。m 為控制 n 角星連線時(shí)要間隔幾個(gè)頂點(diǎn)。當(dāng) m =1 時(shí),就是原先的正 n 邊形。上圖中,就是 n =12 , m = 5 的情況。而在 m 的選取還要留意到 n,m 互質(zhì)時(shí)才能畫出一個(gè)完整的 n 角星。

操作

td?= Turtle()

SetCoords[td,0,1]

TurtleRight[td, m*180*deg/n]

Repeat[n,TurtleForward[td, 2*sin(m*180*deg/n) ] ,TurtleRight[td,m*360*deg/n]]

TurtleLeft[td,m*180*deg/n]

任務(wù)五:邊轉(zhuǎn)邊增長(zhǎng)的軌跡

說明:在先前繪制多邊形時(shí),每次前進(jìn)的長(zhǎng)度都是個(gè)定值,但如果每次的移動(dòng)距離 d 都會(huì)增長(zhǎng),就會(huì)繪制出如上不斷外擴(kuò)的圖形。為了達(dá)到邊長(zhǎng)增長(zhǎng)的效果,利用 賦值 SetValues[d,d+0.02]?達(dá)到 d 每次增長(zhǎng)為 0.2 的效果。并且建立滑動(dòng)條 a 來設(shè)定轉(zhuǎn)動(dòng)的角度 a ,而重覆執(zhí)行的次數(shù)為 k 。大家可嘗試改變 k, a 的值,觀察不同參數(shù)下的圖形的質(zhì)美。

操作

te?= Turtle()

d = 0.02

Repeat[k,TurtleForward[te,?d] ,TurtleLeft[te,a], SetValues[d,d+0.02]]


小結(jié)回顧

本節(jié)主要體驗(yàn) Geogebra 的 Turtle 功能。Geogebra 的 Turtle 功能目前比較簡(jiǎn)單,使用時(shí)不如其他程式的 Turtle 來得方便。對(duì)這個(gè)有興趣可參考?Python 的一些 turtle 案例。大家除了上面的操作,還想到 Turtle 可繪制哪些圖形。

相關(guān)鏈接

【GGB】https://www.geogebra.org/classic/pyd2nrgn

【Bili】https://www.bilibili.com/video/BV11v411a7Kn

【youtube】https://www.youtube.com/playlist?list=PLXH05kw-i_5L0SihjczOX1aDHGbPES_7a


S8G6 讓烏龜動(dòng)起來的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
海口市| 石柱| 汤阴县| 盐亭县| 芦溪县| 兴安县| 萝北县| 天津市| 大厂| 安化县| 安多县| 财经| 和政县| 新蔡县| 苍梧县| 丁青县| 奎屯市| 墨竹工卡县| 铁岭县| 聂拉木县| 柏乡县| 石台县| 孙吴县| 罗山县| 五指山市| 呼伦贝尔市| 开化县| 岳普湖县| 墨江| 裕民县| 潜山县| 盐亭县| 惠安县| 平定县| 方山县| 堆龙德庆县| 子洲县| 博罗县| 乐亭县| 石屏县| 肇源县|