2012-03-29 48 views
2

我遇到问题,找到我正在寻找的确切答案。我正在构建一个当前允许缩放图像的应用程序。这是在Flash Builder 4.5中构建的。我特别想要的是在放大和缩小时保持图像的尺寸相同。因此,图片仍然会增加和减少,但会保留在不可见的框中。TransformGestureEvent缩放图像,但保留图像大小Flex

这个解释是否有意义?

现在我可以放大和缩小,但它会更改图像大小并覆盖其他内容。最终还会添加其他功能,包括平移和旋转。该图像将成为嘴巴的3D模型。

如果提供的教程或资源非常棒。

这是我为它是使用的TransformGestureEvent缩放手势代码:

import flash.display.Sprite; 
import flash.display.StageAlign; 
import flash.display.StageScaleMode; 
import flash.events.TransformGestureEvent; 
import flash.ui.Multitouch; 
import flash.ui.MultitouchInputMode; 

private function init():void 
{ 
    img.addEventListener(TransformGestureEvent.GESTURE_ZOOM, onZoom); 
} 

private function onZoom(event:TransformGestureEvent):void 
{ 
    var mySprite:Sprite = img as Sprite; 
    if(mySprite.scaleY.valueOf() >= 1) 
    { 
     mySprite.scaleX *= event.scaleX; 
     mySprite.scaleY *= event.scaleY; 
    } 
    else 
    { 
     mySprite.scaleX= 1; 
     mySprite.scaleY = 1; 
    } 
} 

回答

0

如果我理解你正确地质疑。 我想你可能想看看scrollRect http://gskinner.com/blog/archives/2006/11/understanding_d.html

DisplayObject.scrollRect让您指定定义DisplayObject的区域(雪碧,影片剪辑等),以显示一个Rectangle对象。蒙版区域始终显示在显示对象的原点处,可让您通过更改矩形的x和y属性来滚动区域。