,"> 。">

五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網 會員登陸 & 注冊

Houdini學習筆記036_Poincaré Disc(龐加萊圓盤)<下>

2022-09-27 16:08 作者:獨孤嘌呤  | 我要投稿


不知道大家聽過算法藝術(Algorithm Art,也叫Generative Art)沒有,這是一種用計算機程序進行藝術創(chuàng)作的方式。由此可以得到很多神奇的圖案。Hyperbolic Tiling應該算是其中的一種,接上一篇的基礎圖案創(chuàng)建出來后,我用foreach節(jié)點(For-Loop with Feedback)進行循環(huán)拷貝。每次循環(huán)都是將現(xiàn)有的圖案進行莫比烏斯反轉,如果和已有的重復則去掉。

經過一番令人頭大的計算,總算是把全部VEX代碼寫完了,但還是有些bug和沒注意到的小問題在里面。就不打算展開細講了。foreach循環(huán)內也是只用了一個Attribute Wrangle節(jié)點,Run Over方式還是Detail (only once)。VEX代碼如下:

這里的示例是p = 7, q = 3的情況,初始得到的圖案是7條弧線。對于每條弧線由上面的三個點計算出其所在圓的圓心center和半徑radius。然后用mobius變換得到中心點的反演變換點,作為新的七邊形的中心。除了中心點之外的所有點也要進行莫比烏斯變換,得到對應的七邊形。

因為變換后的位置可能已經有七邊形存在了,所以要預判斷一下。我是把已有的中心點放在一個stack[ ]數(shù)組中,每次莫比烏斯變換后,與數(shù)組中已有點的位置作比較,如有重合(距離<臨界值,如0.01)說明這個位置已有圖形了,則不再重復變換。如果沒有,則生成新的中心點,并將其放到stack數(shù)組中。

對于foreach循環(huán)需要注意的是,Block BeginMethod用的是Fetch Feedback,即上一次的結果作為下一次循環(huán)的初始條件。Block EndGather Method用的是Feedback Each?Iteration,只顯示最終次循環(huán)的結果,而不要把之前循環(huán)的都merge到一起。

因為中心點都放在了stack組中,后面可以用delete節(jié)點選擇組刪除點,只保留圖形的邊。

這個代碼塊基本上湊合能用,毛病也不少,迭代次數(shù)多了之后計算會出問題。還有弧線過圓心時的情況沒有考慮進去,只是這個月沒有精力再深挖了,以后有時間再改進吧。

如果可能的話,我還是想把Dunham教授文獻中的方法拿Houdini試一下。那樣效率應該會高很多。說不定可以將圖像的RGB值先映射到某個初始圖案上,每次迭代變換后對應的點繼承顏色屬性,就可以得到一幅魔性十足的作品了。

但愿這個想法能早日實現(xiàn),祝大家國慶快樂~

Houdini學習筆記036_Poincaré Disc(龐加萊圓盤)<下>的評論 (共 條)

分享到微博請遵守國家法律
博爱县| 海伦市| 手机| 安吉县| 神农架林区| 安岳县| 台江县| 宾川县| 洛隆县| 日土县| 恭城| 澜沧| 当雄县| 万州区| 南丹县| 遂溪县| 铅山县| 永吉县| 宁晋县| 永德县| 若尔盖县| 始兴县| 嵊泗县| 乌拉特后旗| 临猗县| 金昌市| 贵港市| 鹤岗市| 邯郸市| 昭通市| 武平县| 榆中县| 西充县| 潮州市| 喀喇沁旗| 乌恰县| 漳平市| 毕节市| 盱眙县| 盐津县| 筠连县|