串聯的圓:有趣的心形線

    

     我思故我在。”   ——卡笛爾

    

0 動機

    在這篇文章裏,將給大家介紹一下心形線及其畫法,關於具體coding(編碼)的東西以後再講。關於心形線有一個浪漫的愛情故事,我們先講完故事,再講如何畫心形線。

 

1 故事

    《數學的故事》裏面說到了數學家笛卡爾的愛情故事。笛卡爾於1596年出生在法國,歐洲大陸爆發黑死病時他流浪到瑞典。1649年,斯德哥爾摩的街頭,52歲的笛卡爾邂逅了18歲的瑞典公主克里斯汀。幾天後,他意外的接到通知,國王聘請他做小公主的數學老師。跟隨前來通知的侍衛一起來到皇宮,他見到了在街頭偶遇的女孩子。從此,他當上了小公主的數學老師。

    小公主的數學在笛卡爾的悉心指導下突飛猛進,笛卡爾向她介紹了自己研究的新領域:直角座標系。每天形影不離的相處使他們彼此產生愛慕之心,公主的父親國王知道了後勃然大怒,下令將笛卡爾處死,小公主克里斯汀苦苦哀求後,國王將其流放回法國,克里斯汀公主也被父親軟禁起來。

    笛卡爾回法國後不久便染上重病,他日日給公主寫信,因被國王攔截,克里斯汀一直沒收到笛卡爾的信。笛卡爾在給克里斯汀寄出第十三封信後就氣絕身亡了,這第十三封信內容只有短短的一個公式:r=a(1-sinθ)。國王看不懂,覺得他們倆之間並不是總是說情話的,將全城的數學家召集到皇宮,但沒有一個人能解開,他不忍心看着心愛的女兒整日悶悶不樂,就把這封信交給一直悶悶不樂的克里斯汀。

公主看到後,立即明瞭戀人的意圖,她馬上着手把方程的圖形畫出來,看到圖形,她開心極了,她知道戀人仍然愛着她,原來方程的圖形是一顆心的形狀。這也就是著名的“心形線”。

     國王死後,克里斯汀登基,立即派人在歐洲四處尋找心上人,無奈斯人已故,先她一步走了,徒留她孤零零在人間...…據說這封享譽世界的另類情書還保存在歐洲笛卡爾的紀念館裏。 

【注:本故事摘抄自[1]】

笛卡爾心形線

2 真相

    在歷史上,笛卡爾和克里斯蒂娜的確有過交情。但笛卡爾是1649年10月4日應克里斯蒂娜邀請纔來到瑞典,而當時克里斯蒂娜已成爲了瑞典女王。笛卡爾與克里斯蒂娜談論的主要是哲學問題而不是數學。有資料記載,由於克里斯蒂娜女王時間安排很緊,笛卡爾只能在早晨五點與她探討哲學。笛卡爾真正的死因是因天氣寒冷加上過度操勞患上的肺炎,而不是黑死病。 [1]

3 畫心   

    現在我們講如何畫心形線,心形線是一個圓上的固定一點,在它繞着與其相切且半徑相同的另外一個圓周滾動時所形成的軌跡。我寫了一個畫軌跡線的通用工具,基於HTML5的,腳本語言是用的JavaScript(正是我們前面哪個系列所講的)。那麼,我們看一下吧。^_^

    首先看怎麼畫心形線:

    其實,它是兩個圓周的相對運動,我們將圓周顯示出來:

  

    那麼,能同時畫多個心形線嗎?我們將各個圓的速度和半徑調節到合適的位置,並設置好初始位置,看一下同時畫兩個的情況:

    同時畫三個:  

   

繼續增加,同時畫4個:

    還能增加嗎?看下圖:

    您可以繼續增加下去,只要您設置好主圓(相對其半徑的端點運動的圓)和子圓(以主圓半徑爲圓心的圓)的速度和半徑的比例,以及子圓的初始位置。

 

4 尺子

    其實,上述程序類似於萬花尺的畫圖工具,不知道您有沒有用過玩花尺,萬花尺流行於上個世紀末的80-90年代,在不同地區和時段也有不同的俗名和別稱:百變尺、畫花行家、齒輪尺、圈圈尺等。

    萬花尺由母尺和子尺兩部分組成。常見的母尺是內環形齒輪,子尺是帶多孔的外環形齒輪。作畫時,將子尺內置於母尺內環之中,輪牙鑲嵌,筆頭插在子尺的小孔中,用筆帶動子尺順着母尺的內沿齒輪反覆作圓周運動。在作畫過程中,兩者內外齒要始終靠合。完成後紙上便會留下一個不可思議的美麗花朵。子尺上小孔的極小位移會引起圖案類型的極大變化。子尺形狀的變化有很多,除了圓形,還有橢圓形,弧邊的三角形、十字形、梅花形、方形、多邊形等等。母尺的變化不大,但有些母尺的外沿也帶齒輪,把子尺置於母尺外沿作環繞運動,這時畫出的是花形圈。母尺的內環通常是圓形和橢圓形。[2]

    使用上述程序,您可以模擬萬花尺畫出五彩繽紛、絢麗多彩的圖形,您還可以隨意調整各個尺子的旋轉速度、位置、半徑以及運動,您甚至可以調整旋轉加速度、控制半徑在繪圖過程的變化以及母尺的運動。

萬花尺繪出的圖形

 

   下面,現在我們將畫出來的圓,串聯起來,看有什麼效果吧。^_^

    首先,我們把“你的心,我的心,串一串”,再讓串聯起來的圓跟隨我們的鼠標運動。看一下效果:@_@

    然後,我們將心和心之間添加一些彈性,看一下效果:wow!

    好了,或許您可以將這些有趣的心發送給您的朋友,您的朋友只需要雙擊,就可以觀看效果了。哈哈,說了這麼多,想不想玩一把?關注本公衆號,回覆“心形線”,就可以得到以上所有程序的代碼,您可以在電腦上直接運行該代碼!Ok,以上。

  歡迎關注“靈感快現”,若有不足之處,歡迎批評指正!

[1]https://baike.baidu.com/item/%E5%BF%83%E5%BD%A2%E7%BA%BF/10018818?fr=aladdin

[2]https://baike.baidu.com/item/%E4%B8%87%E8%8A%B1%E5%B0%BA/5114750?fr=aladdin

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章