2012-01-05 12 views
0

こんにちは、 私はrotationYを使用してイメージを回転しようとしていますが、イメージの左側に基づいて回転しますが、回転ポイントをイメージの中心に変更する方法がありますか? transformAround()メソッドを使用できるはずですが、画像と関係のあるtransformAroundの例を見つけるのに問題があります。誰かがこれをどうやって行うのか、これについて間違った方法をとっているのかの例はありますか?私がしようとしているのは、周りを回転するスライドショーを構築し、拡大する画像をタップすることです。 長らく残念な質問を申し訳ありません、ご支援いただきありがとうございます。Flash Builder 4.6でY軸に沿ってイメージをどのように回転させますか?

+0

FlexフレームワークまたはバニラAS3を使用していますか? –

+0

フレックスフレームワーク。私はそれをすべてアンドロイドエアーアプリケーションに組み込んでいます。スライドショーはタブレットに表示されます。答えが広範囲に及ぶ場合は、書籍があるかどうかもわかりません。私はそれがより単純であると考えている可能性があります。あなたのリプレイをありがとう! – Justin

答えて

1

Flexフレームワークを使用しているため、Spark 3Dエフェクトを使用すると、トランスフォームではなくイメージを回転できます。下記の例を参照してください(Rectをあなたの画像に簡単に置き換えることができます)。 Rotate3DのautoCenterTransform属性は、x、y、z回転点をオブジェクトの中心に移動するすべての作業を行います。

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

    <fx:Declarations> 
     <s:Rotate3D 
      id="rotateEffect" 
      target="{myImage}" 
      angleYFrom="0" 
      angleYTo="360" 
      duration="1000" 
      autoCenterTransform="true"/> 
    </fx:Declarations> 

    <s:Button label="Rotate" 
       x="10" y="10" 
       click="rotateEffect.play()"/> 

    <s:Rect id="myImage" 
      x="20" y="40" 
      height="100" width="100"> 
     <s:fill> 
      <s:SolidColor color="0xABABAB"/> 
     </s:fill> 
    </s:Rect> 

</s:Application> 

また、あなたが完全に変換ポイントを中央にしたいのですが、唯一のY回転を可能にする変換ポイントをシフトしていない場合は、以下のように、自分のイメージのtransformXプロパティを調整することができます

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

    <fx:Declarations> 
     <s:Rotate3D 
      id="rotateEffect" 
      target="{myImage}" 
      angleYFrom="0" 
      angleYTo="360" 
      duration="1000" 
      /> 
    </fx:Declarations> 

    <s:Button label="Rotate" 
       x="10" y="10" 
       click="rotateEffect.play()"/> 

    <s:Rect id="myImage" 
      x="20" y="40" 
      height="100" width="100" 
      transformX="{myImage.width/2}"> 
     <s:fill> 
      <s:SolidColor color="0xABABAB"/> 
     </s:fill> 
    </s:Rect> 

</s:Application> 
+0

それは私が探していた質問に対する答えです。私はちょうどさまよっていましたが、これについてもっと知るために私が読むことができる情報を知っていますか?本や記事がクールでない場合は、私の質問にもっと答えてくれましたので、どうもありがとう! – Justin

+0

私はこの情報を[Adobe docs](http://help.adobe.com/jp/FlashPlatform/reference/actionscript/3/spark/effects/Rotate3D.html)から入手しました。また、素晴らしい例があります。[http://blog.flexexamples.com/2008/10/13/3d-rotating-objects-in-flex-using-the-fxrotate3d-effect-and-flash-player- 10 /)。 – eterps

関連する問題