fablelin_1 2015-04-18 10:29
浏览 745

[求助]这段球面算法无法理解

private function moveTweets():void {


    var newScale:Number=Scale(meshes.length,50,500,6,2);
    trace("new scale:"+newScale);


    var l:Number=this.meshes.length;
    var tweetMeshInstance:TweetMesh;
    var destx:Number;
    var desty:Number;
    var destz:Number;
    for (var i:Number=0;i<this.meshes.length;i++){

        tweetMeshInstance=meshes[i];

        var phi:Number = Math.acos( -1 + ( 2 * i ) / l );
        var theta:Number = Math.sqrt( l * Math.PI ) * phi;

        tweetMeshInstance.origX = (sphereRadius+5) * Math.cos( theta ) * Math.sin( phi );
        tweetMeshInstance.origY= (sphereRadius+5) * Math.sin( theta ) * Math.sin( phi );
        tweetMeshInstance.origZ = (sphereRadius+5) * Math.cos( phi );

        destx=sphereRadius * Math.cos( theta ) * Math.sin( phi );
        desty=sphereRadius * Math.sin( theta ) * Math.sin( phi );
        destz=sphereRadius * Math.cos( phi );

        tweetMeshInstance.lookAt(new Vector3D());


        TweenMax.to(tweetMeshInstance, 1, {scaleX:newScale,scaleY:newScale,x:destx,y:desty,z:destz,onUpdate:onLookAtTween, onUpdateParams:[tweetMeshInstance]});

    }

}
private function onLookAtTween(theMesh:TweetMesh):void {
    theMesh.lookAt(new Vector3D());
}

    其中 var theta:Number = Math.sqrt( l * Math.PI ) * phi; 我怎么算都推导不出来,请各位算法高手帮忙解释下
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 【提问】基于Invest的水源涵养
    • ¥20 微信网友居然可以通过vx号找到我绑的手机号
    • ¥15 spring后端vue前端
    • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
    • ¥15 解riccati方程组
    • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
    • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
    • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
    • ¥50 树莓派安卓APK系统签名
    • ¥65 汇编语言除法溢出问题