私はあなたの質問に少し混乱していますが、それでも興味深いものです。
アイソメ図が機能していて、透視投影ビューまたはその逆をレンダリングしたいですか?あなたは透視図を持っていて、アイソメ図に行きたいですか?
Flash CS4 IDEでは、「3D」のいくつかのパラメーターで遊ぶことができます。ポイントを説明するために、一連のMovieClipsを立方体に組み立てました。
これが立方体です。変換パネルに表示されているように、Yで45度、次にXで45度回転します。

これは同じ立方体ですが、右側のプロパティインスペクターの[3D位置とビュー]グループでパースペクティブ角度が変更されています。

IDEのプロパティは、actionscriptを介して制御できます。各DisplayObjectには、Matrix、Matrix3D、PerspectiveProjectionなどの2Dおよび3Dプロパティを制御するオブジェクトの参照を保持する変換プロパティがあります。
PerspectiveProjectionのfieldOfViewプロパティを使用して、パースペクティブの歪みを制御できます。
ボックスクリップの名前がboxであるとすると、fieldOfViewを非常に小さい値に設定できます(許可される値が0より大きく180より小さい場合のみ)、それだけです。
例えば
var isometric:PerspectiveProjection = new PerspectiveProjection();
isometric.fieldOfView = 0.00001;
box.transform.perspectiveProjection = isometric;
軌道を回るには、 devnetのこの記事をチェックしてください。軌道へのアプローチについても説明します。達成しようとしていることによっては、ラルフ・ハウワートのアークボールの記事かもしれません。
FFilmationやas3isolibなどのas3アイソメトリックライブラリがいくつかありますが、正確に何が必要かわかりません。antpawが言っていたように、より大きなものに取り組んでいる場合は、PapervisionやAway3Dなどの柔軟性のある3DAPIを使用できます。
Disturbでは、Twigitalと呼ばれるツイートを視覚化するための楽しいアイソメトリックインターフェイスを作成しました。そのためにペーパービジョンを使用しました。
アップデート
ピボットを中心に動的に回転する必要があるようです。これは、変換行列を使用して行うことができます。これが2Dでそれを行う方法です:
/**
* Rotates a matrix about a point defined inside the matrix's transformation space.
* This can be used to rotate a movie clip around a transformation point inside itself.
*
* @param m A Matrix instance.
*
* @param x The x coordinate of the point.
*
* @param y The y coordinate of the point.
*
* @param angleDegrees The angle of rotation in degrees.
* @playerversion Flash 9.0.28.0
* @langversion 3.0
* @keyword Matrix, Copy Motion as ActionScript
* @see flash.geom.Matrix
*/
public static function rotateAroundInternalPoint(m:Matrix, x:Number, y:Number, angleDegrees:Number):void
{
var point:Point = new Point(x, y);
point = m.transformPoint(point);
m.tx -= point.x;
m.ty -= point.y;
m.rotate(angleDegrees*(Math.PI/180));
m.tx += point.x;
m.ty += point.y;
}
/**
* Rotates a matrix about a point defined outside the matrix's transformation space.
* This can be used to rotate a movie clip around a transformation point in its parent.
*
* @param m A Matrix instance.
*
* @param x The x coordinate of the point.
*
* @param y The y coordinate of the point.
*
* @param angleDegrees The angle of rotation in degrees.
* @playerversion Flash 9.0.28.0
* @langversion 3.0
* @keyword Matrix, Copy Motion as ActionScript
* @see flash.geom.Matrix
*/
public static function rotateAroundExternalPoint(m:Matrix, x:Number, y:Number, angleDegrees:Number):void
{
m.tx -= x;
m.ty -= y;
m.rotate(angleDegrees*(Math.PI/180));
m.tx += x;
m.ty += y;
}
コードは私のものではありませんが、それはMatrixTransformerクラスの一部であるAdobe(Robert Pennerの私が推測している)です。
Matrix3Dクラスには、3つのパラメーターを受け入れるprependRotationやappendRotationなどの回転メソッドがあるため、 3Dの場合はさらに簡単になります。
- 度:数
- axis:Vector3D
- ピボットポイント:Vector3D
したがって、次のようなものを使用して、ボックスをX軸上で0,0,0を中心に30度簡単に回転させることができます。
var m:Matrix3D = box.transform.matrix3D;
m.prependRotation(30,Vector3D.X_AXIS,new Vector3D(0,0,0));
繰り返しになりますが、devnetの記事、Matrix3DクラスおよびVector3Dクラスを確認してください。
ベクトル、行列、変換についてより深い知識を得たい場合は、3D Math Primerをチェックしてください。すべてが非常によく説明されており、単なる数学なので、学習した内容は3Dセットアップで便利です(純粋as3、away3d、papervision、openGLなど)。
HTH、ジョージ