2011-06-18 11 views
1

フレックスで別の小さなプロンプルが得られます。 私は楕円を作りました。私はそれを動的に回転させたいと思います。 は、楕円のrotate = ""値を変更するh:スライダを作成しました。 とうまく回転します。回転点は楕円の中央にあります。中間の代わりに楕円を下から回転させると、

私はそれを下部(y)と中間(x)にしたいと思います。

楕円のtransformY引数とtransformX引数がありますが、何の効果もありません。

私の機能

private function rotateRadius():void { 
if(wind.selected) { 

selected.radiusDisp.rotation = radiusRotate.value; 
}else { 

} 

}

誰かがヒントに私を与えることができれば素晴らしいだろう

答えて

1

回転している。

<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
      xmlns:s="library://ns.adobe.com/flex/spark"> 

<s:controlBarContent> 
    <s:HSlider id="rotationSlider" minimum="0" maximum="360" /> 
</s:controlBarContent> 


<s:Ellipse rotation="{rotationSlider.value}" transformX="100" transformY="50" width="200" height="100" x="100" y="100"> 
    <s:fill> 
     <s:SolidColor color="red" /> 
    </s:fill> 
</s:Ellipse> 


<s:Ellipse rotation="{rotationSlider.value}" transformX="100" transformY="100" width="200" height="100" x="400" y="100"> 
    <s:fill> 
     <s:SolidColor color="red" /> 
    </s:fill> 
</s:Ellipse> 

あなたの楕円は、表面上/ロックンロールしたい場合は、登録ポイントの計算にビット三角法を追加する必要があります。

HTH、このMH FTQuest

0

おそらく最も簡単には巣内のあなたの楕円形であり、それを行うにはいくつかの方法があります。別の表示オブジェクト(回転させたい点が新しい表示オブジェクトの中央にくるように)これはあなたの楕円よりも「大きな」オブジェクトを持っているので、フレックスレイアウトの痛みです。

他のオプション(正しい方法)は、変換オブジェクトを使用確認することです

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/display/DisplayObject.html#transform

やオブジェクトを方法を変更する最も簡単な方法です

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/geom/Transform.html#matrix

+0

は私のために動作しませんでした。私の場合、4軸の楕円を持つことが最善の方法です:/ – ABLX

関連する問題