Math 板


LINE

※ 引述《phoenixlife (All in AAPL)》之銘言: : 各位大大好 : 最近在看有關three js裡面的example,看到元素表的例子 : https://threejs.org/examples/?q=peri#css3d_periodictable : 程式碼在此 : https://reurl.cc/l9qDQl : 看到有一段關於 元素螺旋平均分佈在球面上 : 這兩行 line 298,299這兩行讓我看很久 : 298 const phi = Math.acos( - 1 + ( 2 * i ) / l ); : 299 const theta = Math.sqrt( l * Math.PI ) * phi; : 298行還可以理解 : 但299行完全不知道為什麼要 乘上 sqrt(l * pi) // l是元素總數 : 我查了一下,似乎看起來是Fibonacci sphere,然後也改了程式碼 : const phi = Math.acos( - 1 + ( 2 * i ) / l ) : const theta = Math.PI*(1.809)*i : 結果長這樣 https://i.imgur.com/E1k10nO.png : 也有很類似的效果,至於為什麼會是1.809,老實說我也不清楚,我只是測了幾組 : 黃金比例1.618,0.608,而1.809是常用在股市的黃金比例,如果數字不對,甚至不會平 : 例如調成8變這樣 https://i.imgur.com/bysIHIo.png : 而原程式碼sqrt(l * pi)看起來不太像是用湊的權重,如果取代成 theta = XX * phi : XX 隨便當作一個常數有時也不會螺旋均勻分布在球體 : 因為小弟數學真的沒有很好 : 想問問看板上的大大有沒有人知道原程式碼 line 299行是根據什麼paper或是原理才這 : 感謝! (通篇用大寫L取代小寫l, 為了好看) 首先程式碼中的phi與theta跟他文件所引用的wiki連結是相反的, 我這邊直接給你修正後 的結果: phi是polar, 範圍從0~pi theta是equator, 範圍從0~2pi 再來看程式碼的phi, 相當於在xy平面的上半圓等距灑上L個點, 注意並非是等角, 他是在 x軸上等距然後才往上對應半圓, 不過"視覺上"差不多, 只要有"均分"的效果就會有效果 再來看程式碼的theta, 相當於要把這些在xy平面中上半圓的點賦予角度, 即把這些不同 的點往多少高度與正反向打 比如theta=0就是原處, theta=90就是最低點, theta=180就是原處的背面... 所以我們就是要對每個點選擇theta以至於讓這些點均勻分布在整個球體 如果theta=(i/L)*2pi, 那你會看到一尾龍盤旋在圓上 其他的theta我公式化在下面的連結裡, 數學上來說就是選擇函數f後, 定義theta = f(i) , 只要同餘函數mod(f(i),2pi)有分多段並且不同段間的高度都不一樣, 那視覺上就會有 原效果 https://www.desmos.com/calculator/yrrarwlfmn (繪圖圖形可以點擊開關) f_1是我的i f_2是原程式碼 f_3是你的1.809 f_4是你的8pi 發現f_1~f_3都有我描述的"多段且每段不同高度", 而f_4的圖其實都是0(只是浮點誤差導 致有些點很接近2pi), 才會導致你那個圖, 而你那個圖是因為每個圖片有厚度, 換成點的 話你會發現他其實落在同一條圓弧 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.255.252.125 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Math/M.1649001797.A.0DA.html
1F:推 phoenixlife : 大大畫的圖我理解了 所以原程式碼sqrt(...)是用湊的04/04 00:25
2F:→ phoenixlife : 嗎04/04 00:25
我只能先猜應該不是, 只是我們要逆向工程去猜出他那個式子是要符合怎樣的數學目標式 , 然後驗證說這個公式是那個數學目標式的唯一解 正向工程來說, 流程就是: 1. 你想要圖形"看起來"均勻離散分布在球上 2. 為1.去定義數學目標式 3. 找出符合2.的數學公式 注意步驟2.沒有對錯問題, 只有主觀的像不像的問題, 因為2.就是把1.做數學建模 而目前這個情況看起來1.是對的, 但是有一堆函數都看起來符合1, 所以如果3.是算出來 的話, 作者應該想要讓圖形去符合更多的性質, 只是這個方向很難猜就是了... ※ 編輯: znmkhxrw (111.255.252.125 臺灣), 04/04/2022 00:31:34
3F:→ phoenixlife : 但他的順序間隔還是很完美 其它雖然有平均分佈 但還 04/04 00:27
4F:→ phoenixlife : 是有一些差異 04/04 00:27
5F:→ phoenixlife : 不過大大講得很棒 讓我更理解 感謝 04/04 00:31







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Gossiping站內搜尋

TOP