<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                Python Turtle繪圖:橫切的橙子(基礎效果/畫海綿層優化)【難度2星】 ![](http://h.yiniuedu.com/e5dec47774d3e1e68a47cd853e9436f1) ``` # 案例1:橫切的橙子(基礎效果) # 程序初始化設置 import turtle # 導入turtle庫 turtle.bgcolor("black") # 設置背景顏色為黑色black turtle.speed(0) # 設置海龜的繪圖速度。參數為0時繪圖速度最快;為1時最慢;可輸入不大于10的數字觀察速度變化。大于10無效。 # 但如果想要看清畫圖的細節,speed(1)的速度還是過快,這時就要使用delay()函數來幫助進一步減速。 #turtle.delay(20) ? ? ? ? ? ? ? # 設置海龜繪圖的延遲時間。參數為0時繪圖速度最快。大于0時,數字越大,延遲時間越長,則繪圖速度越慢。 # 如:speed(1) ?delay(20) 搭配組合,繪圖速度會非常慢,可看清繪圖細節。 # 變量初始化賦值 d1=400 # 變量d1 表示橙子的直徑 hou=40 # 變量hou 表示橙子果皮的厚度 num=11 # 變量num 表示橙子果肉的瓣數 size=10 # 變量size 是畫橙子囊瓣時畫筆的粗細。 d2=d1-hou # 變量d2 是橙子剝皮后的直徑 r2=d2/2 # 變量r2 是橙子剝皮后的半徑,即扇形囊瓣的邊長。 # ①畫橙子果皮 turtle.dot (d1,"#ff6600") ? ? ? ?# 畫直徑為d1 顏色為#ff6600 的圓點 # ②畫橙子果肉 turtle.pensize(size) # 設置畫橙子囊瓣時畫筆的粗細 turtle.pencolor("white") # 重新設置畫筆的顏色為白色white。畫橙子里面的白色部分。 turtle.fillcolor("#ff9900") ? ? ?# 設置填充顏色為#ff9900,即果肉的顏色為#ff9900。 for i in range(num): # 循環num次。程序初始化時,設置為幾瓣就循環幾次。 # 畫出橙子果肉的一瓣 turtle.begin_fill() ? ? ? ? ?# 開始填充顏色 turtle.backward(r2) ? ? ? ? ?# 海龜后退r2步 turtle.right(90) # 海龜向右轉向90度,即圓弧切線的方向。 turtle.circle (r2,360/num) # 畫一條半徑為r2像素,角度為360/num度的弧線。 turtle.left(90) ? ? ? ? ? ? ?# 海龜向左轉向90度 turtle.forward(r2) # 海龜向前移動r2步 turtle.end_fill() ? ? ? ? ? ?# 結束填充顏色 # 畫圖結束,隱藏海龜 turtle.hideturtle() turtle.done() ``` ***** ?【重難點突破】 海龜繪圖的時候,我們一般使用speed( )函數來控制海龜的繪圖速度,但是最快的speed(0)或最慢的speed(1)還是滿足不了我們的需要,該怎么辦? **可以再結合使用delay( )函數?。** 將speed( )和delay(?)兩個函數搭配使用,可以讓海龜繪圖速度變得更快或更慢。 如:以下設置會使海龜繪圖速度變得非常快 turtle.speed(0) turtle.delay(0) 以下設置又會使得海龜繪圖速度變得非常慢 turtle.speed(1) 參數范圍是0到10的整數 turtle.delay(50) ?參數還可以更大,會更慢 **1. speed( )函數的使用方法** **語法:turtle.speed(speed=None)** **作用:設置海龜移動的速度或返回當前海龜的速度。** **參數:** speed – 一個0到10范圍內的整型數或速度字符串。如speed(“fastest”)等價于speed(0)。 無參:返回當前海龜的速度 **參數對應表:** 如果輸入數值大于 10 或小于 0.5 則速度設為 0。 ![](http://h.yiniuedu.com/4006f48ac13d2321e07ec4513eb0bc1a) 速度值從 1 到 10,畫線和海龜轉向的動畫效果逐級加快。speed = 0 表示沒有動畫效果(轉向),但繪制還是需要時間,最快。 ****2. delay( )函數的使用方法**** **語法:turtle.delay(delay=None)** **作用:** 設置或返回以毫秒數表示的延遲值delay。(這約等于連續兩次畫布刷新的間隔時間。)繪圖延遲越長,動畫速度越慢。 **參數:** delay –正整型數 無參:返回以毫秒數表示的延遲值 delay **3. speed()和delay( )?的區別** 通俗點講,**speed( )** 就是海龜抬起一只腳開始跨步到落腳之間的這段距離,海龜所用時間的長短,即跨步(繪圖)速度。 同一段距離,所用的時間越短,海龜跨步(繪圖)速度越快;所用的時間越長,跨步(繪圖)速度越慢。 **delay( )** 就是海龜一只腳抬起跨步落腳后到抬起另一只腳之間的間隔時間(延遲時間)。 當參數為0時,表示沒有間隔時間(延遲時間)。也就是一只腳抬起跨步落腳后就瞬間抬起另一只腳,繪圖速度自然更快。 當參數大于0時,數值越大,間隔時間(延遲時間)越長。也就是一只腳抬起跨步落腳后需要等待一段時間后才抬起另一只腳,等待的時間越長,則繪圖速度越慢。 **【善用“調試”功能】** 若想看清楚海龜繪圖細節,除了同時設置speed( )和delay(?)讓海龜繪圖速度慢下來,還可以使用調試功能調試。 繼續點“步進”,代碼就會一條一條執行。這樣我們就能更方便地分析理解每句代碼的功能。 “調試”功能非常實用也強大,但往往被初學者忽視。若沒有好的學習方法,Python學習會變得更艱難,所以我們要大膽去嘗試,善于使用Python編輯器的調試功能。 ***** **案例2:** **橫切的橙子(畫海綿層優化)** **難度:** ★★☆☆☆☆ ??【發現問題】 如果我們仔細觀察橙子實物或圖片,會發現橙子中白色部分的厚度,分布并不均勻。 并不是案例1繪圖中呈現的那種效果。 靠近黃色果皮的白色部分比較厚,橙子瓣中間的白色部分又比較薄。 ?【鏈接生物】 橙子屬于柑橘類。 柑橘\[gān jú\],是橘、柑、橙、金柑,柚、枳等的總稱。 柑橘上面的白色經絡叫橘絡,也叫橘絲、橘筋。(也就是橘子檸檬橙子等水果皮里那層白色的東西都叫橘絡。檸檬也屬柑橘類。) 而靠近外果皮的白色部分是海綿層。 ![](http://h.yiniuedu.com/d3de1fed582a6955688d5c629ad69373) ?【效果預覽】 了解了相關的生物知識后,我們知道橙子中的白色部分由海綿層和橘絡構成。 海綿層較厚,橘絡較薄。所以在繪圖的時候,就需要分開設置畫筆的粗線。 ![](http://h.yiniuedu.com/2f082570622f0527f9540a422345a085) ``` # 案例2:橫切的橙子(畫海綿層優化) # 程序初始化設置 import turtle # 導入turtle庫 turtle.bgcolor("black") # 設置背景顏色為黑色black turtle.speed(0) # 設置海龜的繪圖速度。參數為0時繪圖速度最快;為1時最慢;大于10無效。 # 但如果想要看清畫圖的細節,speed(1)的速度還是過快,這時就要使用delay()函數來幫助進一步減速。 #turtle.delay(20) ? ? ? # 設置海龜繪圖的延遲時間。參數為0時繪圖速度最快。大于0時,數字越大,延遲時間越長,則繪圖速度越慢。 # 如:speed(1) ?delay(20) 搭配組合,繪圖速度會非常慢,可看清繪圖細節。 # 變量初始化賦值 d1=400 # 變量d1 表示橙子的直徑 hou=20 # 變量hou 表示橙子外果皮的厚度 d2=d1-hou # 變量d2 是橙子剝去外果皮后橙子的直徑,即果肉加海綿層(中果皮)的厚度。 d3=d1-hou-hou-hou/2 # 變量d3 是橙子剝去外果皮和海綿層后的直徑,即果肉的厚度。 r3=d3/2 # 變量r3 是橙子剝去外果皮和海綿層后的半徑徑,即扇形囊瓣的邊長。 num=11 # 變量num 表示橙子果肉的瓣數 size=5 # 變量size 是畫橙子囊瓣時畫筆的粗細。表示白色橘絡的厚度,白色橘絡比白色海綿層要薄很多。 # ①畫橙子外果皮 turtle.dot (d1,"#ff6600") ? ? ? ?# 畫直徑為d1 顏色為#ff6600 的圓點 # ②畫中果皮海綿層 turtle.dot(d2,"white") # 畫直徑為d2 顏色為白色white 的圓點 # ③畫橙子果肉 turtle.pensize(size) # 設置畫橙子囊瓣時畫筆的粗細。變量size表示白色橘絡的厚度。 turtle.pencolor("#ffffff") # 重新設置畫筆的顏色為#ffffff白色。畫白色橘絡。 turtle.fillcolor("#ff9900") ? ? ?# 設置填充顏色為#ff9900。即果肉的顏色為 #ff9900。 for i in range(num): # 循環num次。程序初始化時,設置為幾瓣就循環幾次。 # 畫出橙子果肉的一瓣 turtle.begin_fill() ? ? ? ? ?# 開始填充顏色 turtle.backward(r3) ? ? ? ? ?# 海龜后退r3步 turtle.right(90) # 海龜向右轉向90度。即圓弧切線的方向。 turtle.circle (r3,360/num) # 畫一條半徑為r3,角度為360/num度的弧線。 turtle.left(90) ? ? ? ? ? ? ?# 海龜向左轉向90度 turtle.forward(r3) # 海龜向前移動r3步 turtle.end_fill() ? ? ? ? ? ?# 結束填充顏色 # 畫圖結束,隱藏海龜 turtle.hideturtle() turtle.done() ``` **turtle常用指令** ![](http://h.yiniuedu.com/b534b8cef0e4206326e66558548b3031)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看