-1

以下の関数は、指定された半径を持つ球上の点を返します。球の極から30度以内に点をプロットできないように制限を追加したいと思います。

public static function randomPoint(radius:Number):Number3D
 {

  var inclination:Number = Math.random() * Math.PI*2;
  var azimuth:Number = Math.random() * Math.PI*2;

  var point:Number3D = new Number3D(
   radius * Math.sin(inclination) * Math.cos(azimuth),
   radius * Math.sin(inclination) * Math.sin(azimuth),
   radius * Math.cos(inclination)
  );

  return point;
 }

前もって感謝します!

4

2 に答える 2

2

傾斜を制限できるように聞こえます:

var inclination:Number = (Math.PI/6) + Math.random()*(2*Math.PI-2*Math.PI/6)

これらの定数値を自由に解決してください。動作を示すためにそれらを保持してください。

于 2010-01-04T03:06:14.537 に答える