0
這是用於3D旋轉,如何能夠被丟棄的圖像來在畫布使用FLEX4
<s:Rotate3D id="rotate3DX"
target="{image}"
angleXFrom="0"
angleXTo="360"
duration="2000"
autoCenterTransform="true" />
<s:Rotate3D id="rotate3DY"
target="{image}"
angleYFrom="0"
angleYTo="360"
duration="2000"
autoCenterTransform="true" />
<s:Rotate3D id="rotate3DZ"
target="{image}"
angleZFrom="0"
angleZTo="360"
duration="2000"
autoCenterTransform="true" />
</fx:Declarations>
代碼本爲拖動鱈魚和下降轉動
private function mouseDownHandler(event:MouseEvent):void
{
var dragInitiator:Image=Image(event.currentTarget);
var ds:DragSource = new DragSource();
ds.addData(dragInitiator, "img");
DragManager.doDrag(dragInitiator, ds, event);
}
private function dragEnterHandler(event:DragEvent):void
{
if (event.dragSource.hasFormat("img"))
DragManager.acceptDragDrop(Canvas(event.currentTarget));
}
private function dropHandler(event:DragEvent):void {
if (event.dragSource.hasFormat("img")) {
var draggedImage:Image =
event.dragSource.dataForFormat('img') as Image;
var dropCanvas:Canvas = event.currentTarget as Canvas;
// Since this is a copy, create a new object to
// add to the drop target.
var newImage:Image=new Image();
newImage.source = draggedImage.source;
newImage.x = dropCanvas.mouseX;
newImage.y = dropCanvas.mouseY;
newImage.height=200;
newImage.width=200;
newImage.addEventListener(MouseEvent.MOUSE_MOVE, mouseDownHandler);
newImage.addEventListener(DragEvent.DRAG_COMPLETE, dragCompleteHandler);
dropCanvas.addChild(newImage);
newImage.id=draggedImage.id;
}
}
public function button1_clickHandler(event:MouseEvent):void
{
canvas1.graphics.clear();
}
private function dragCompleteHandler(event:DragEvent):void {
var draggedImage:Image =
event.dragInitiator as Image;
var dragInitCanvas:Canvas =
event.dragInitiator.parent as Canvas;
if (event.action == DragManager.MOVE)
dragInitCanvas.removeChild(draggedImage);
}
圖像是
<mx:Panel width="216" height="349" title="Parts" color="#010101"
cornerRadius="10">
<mx:Image source="images\8.png"
width="128" height="76"
mouseMove="mouseDownHandler(event)"
id="image"
/>
<mx:Image source="images\10.jpg"
width="110" height="87"
mouseMove="mouseDownHandler(event)"/>
<mx:Image source="images\9.jpg"
width="111" height="88"
mouseMove="mouseDownHandler(event)"/>
</mx:Panel>
在其中圖像被丟棄的帆布是
<mx:Canvas id="canvas1"
height="349" width="1080"
backgroundColor="#BFBDBD"
cornerRadius="10"
borderColor="#000000"
borderVisible="true"
dropShadowVisible="true"
dragEnter="dragEnterHandler(event)"
dragDrop="dropHandler(event)"
>
<mx:ControlBar width="100%" cornerRadius="0">
<s:Button id="buttonX"
label="Rotate3D X-axis"
click="rotate3DX.play();" />
<s:Button id="buttonY"
label="Rotate3D Y-axis"
click="rotate3DY.play();" />
<s:Button id="bButtonZ"
label="Rotate3D Z-axis"
click="rotate3DZ.play();" />
</mx:ControlBar>
</mx:Canvas>
我想在將圖像放入canvas後旋轉圖像,我可以在面板中旋轉圖像。
我能夠旋轉上一次放下的圖像在畫布中..現在我想從多個圖像中選擇一個圖像並旋轉該特定圖像..你能幫我解決嗎? – abc 2011-05-26 06:43:39
你必須有一種方法來確定你想要選擇的圖像。例如,您可以點擊圖像並在clickHandler上設置效果的目標爲該圖像。長話短說 - 只要確定將效果上的目標設置爲您實際想要旋轉的圖像即可。 – dtuckernet 2011-05-26 14:04:20
隨意投我的答案,並選擇它作爲答案。 – dtuckernet 2011-05-26 18:13:02