css3d_periodictable
上記のサンプルのソースコードを参考に球状にオブジェクトを配置するソースコードを書いているのですが,一行理解できないコードがありました.
303行目の var theta = Math.sqrt( l * Math.PI ) * phi; が何を意味しているのかわかりません.
表示したいオブジェクトの数とπのルートをとっているようですが,この式は何かの公式なのでしょうか.
どなたかご教授願います.
球状にオブジェクトを表示する部分のソースコードを貼っておきます.
実際の動作は上記サイトで sphere を押せば確認できます.
js
1// sphere 2 var vector = new THREE.Vector3(); 3 4 for ( var i = 0, l = objects.length; i < l; i ++ ) { 5 6 var phi = Math.acos( -1 + ( 2 * i ) / l ); 7 var theta = Math.sqrt( l * Math.PI ) * phi; 8 9 var object = new THREE.Object3D(); 10 11 object.position.x = 800 * Math.cos( theta ) * Math.sin( phi ); 12 object.position.y = 800 * Math.sin( theta ) * Math.sin( phi ); 13 object.position.z = 800 * Math.cos( phi ); 14 15 vector.copy( object.position ).multiplyScalar( 2 ); 16 17 object.lookAt( vector ); 18 19 targets.sphere.push( object ); 20 21 }
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。