利用GeoGebra來製作圓柱的展開,需要用到的指令並不多。
先來看下效果:
接下來,看看是如何製作的。
圓柱面展開的製作思路
運用的指令有滑動條(slider)、圓柱(cylinder)、曲面(surface),具體語法如下:
滑動條( , , ,)
圓柱( , , )
曲面(
為了製作的方便,我們將圓柱的下底圓心放在(-1,0,0)處,半徑為1,高為4(高也可以取其他值)。
於是,可以這麼寫:
a = 圓柱((-1, 0, 0), (-1, 0, 4), 1)
剛剛我們提到需要用的指令之一:曲面指令,其實就是已知參數方程,再套進去。
我們最熟悉的大概就是圓的參數方程:
如果要寫
圓柱面的參數方程,那就是在此基礎上增加一個高,即:現在,我們需要的是下底圓心為(-1,0,0),半徑為1,高為4,也就是:
曲面(-1 + cos(θ), sin(θ), h, θ, 0, 2π, h, 0, 4)
如果要讓這個曲面能動,那自然是需要變量,我們引進滑動條:
k=滑動條(0,1)
我們需要的展開,其實,就相當於:
- 圓柱的底面半徑在不斷增大
- 同時,顯示出來的圓柱面最終是變成矩形面
- 在這過程中,也就是完整圓柱面(半徑初始時)變為部分圓柱面(半徑逐漸增大)
完整變化為部分,也就是限定範圍:
半徑要不斷增大,那就構造一個r,即r = 1 / k
並把係數r放進曲面指令中:
咦!k為0時,曲面就不見了——因為此時r即為無窮大。
也就是k為0時,我們需要構造一個矩形面。怎麼構造,看著上圖來構造,即:
至此,我們就可以書寫圓柱面展開的指令:
如果(k == 0, 曲面(0, u, v, u, 0, 2π, v, 0, 4), 曲面(r (-1 + cos(k θ)), r sin(k θ), h, θ, 0, 2π, h, 0, 4))
所以,整個效果的呈現,只需四條指令:
至於另一種效果,只需要改變一下參數的範圍,也就是將上面的曲面指令改寫為:
如果(k == 0, 曲面(0, u, v, u, -π, π, v, 0, 4), 曲面(r (-1 + cos(k θ)), r sin(k θ), h, θ, -π, π, h, 0, 4))
將兩個圓打開的製作
其實就是將圓旋轉90度。
用到的指令有圓周(circle)、旋轉(rotate)、平移(translate):
圓周( , )
旋轉( , , )
平移( , )
將圓旋轉0度到90度,需滑動條α:
α=滑動條(0°,90°)
不贅述,下面直接給出相關指令:
g = 圓周((-1, 0, 0), 1, xOy平面)
g' = 旋轉(g, -α, y軸)
h = 圓周((-1, 0, 4), 1, xOy平面)
h' = 旋轉(h, α, 平移(y軸, 向量((0, 0, 0), (0, 0, 4))))
最後一條,旋轉軸,也可以直接寫出直線方程。
結語
到了這裡,就完成了整個作品。
源文件獲取方式:轉發本文,並寫上輕鬆get圓柱的展開。
閱讀更多 啊K數學 的文章