作者kyzusmugoe (阿达达~鬼王达)
看板Flash
标题Re: [问题] 想请教"乱数球体面积座标"的公式
时间Thu Sep 16 00:21:38 2010
自问自答~XD
借用cj神的zedbox做demo一下~
其实wiki搜寻"球座标系"里面就有答案
http://tinyurl.com/24796s6
以下是改过的code~
var rd:uint = 500;
var inclination:Number;
var azimuth:Number
for (var i:uint; i < 200; i++ )
{
var zs:ZedSprite = new ZedSprite();
inclination = Math.random() * Math.PI * 2;
azimuth = Math.random() * Math.PI * 2;
zs.x = rd * Math.cos(inclination) * Math.cos(azimuth);
zs.y = rd * Math.sin(inclination) * Math.cos(azimuth);
zs.z = rd * Math.sin(azimuth) ;
container.addChild(zs);
}
※ 引述《kyzusmugoe (阿达达~鬼王达)》之铭言:
: 小弟有参考对岸blog的Sphere球体写法
: 不过弄半天还是搞不出 乱数球体座标 的公式
: 以下是参考的code
: var photoCount:Array = [1, 6, 10, 24, 10, 6, 1];
: var angleY:Array = [0, 60, 36, 30, 36, 60, 0];
: var angle:Number = 30 * Math.PI / 180;
: for (var i:int=0; i<10; i++)
: {
: for (var j:int=0; j<photoCount[i]; j++)
: {
: var sp:Sprite = new Sprite()
: container.addChild(zs);
: sp.x=R*Math.sin(i*angle)*Math.cos(j*angleY[i]*Math.PI/180);
: sp.z=R*Math.sin(i*angle)*Math.sin(j*angleY[i]*Math.PI/180);
: sp.y=R*Math.cos(i*angle);
: }
: }
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.227.242.233
※ 编辑: kyzusmugoe 来自: 140.138.32.78 (10/26 16:53)