FLASH导出SWF文件随手柄拖动,内部画面等比例缩放大小,部分MC大小始终不变,如何实现
时间:2010-11-19
来源:互联网
最好是AS2的思路 对AS3表示鸭梨很大~~T。T
作者: kinbox 发布时间: 2010-11-19
很简单的要求嘛。
让a_mc做相反的缩放就行
或者只缩放a_mc以外的其它对象
让a_mc做相反的缩放就行
或者只缩放a_mc以外的其它对象
作者: flash023 发布时间: 2010-11-19
谢谢斑竹的思路
但是我是AS小白
“SWF文件随手柄拖动,内部画面等比例缩放大小”
这块的AS怎么写~的~~T T
但是我是AS小白
“SWF文件随手柄拖动,内部画面等比例缩放大小”
这块的AS怎么写~的~~T T
作者: kinbox 发布时间: 2010-11-19
计算与鼠标与注册点之间的距离
按住鼠标不放,拖动,就可以绘制出相应大小的图形
BB.swf (1.56 KB)
复制内容到剪贴板
{
import flash.display.Sprite;
import flash.events.MouseEvent;
/**
* ...
* @author FLASH023
*/
public class Main extends Sprite
{
private var now_sprite:Sprite;
public function Main():void {
stage.addEventListener (MouseEvent.MOUSE_DOWN, mouseDownHandler);
}
private function mouseDownHandler(_evt:MouseEvent ):void {
now_sprite = addChild (new Sprite) as Sprite;
now_sprite.blendMode = "layer";
var _n:uint = uint(Math.random () * 6 + 3);
now_sprite.addChild (createLVP(_n)) ;
var _s:Sprite = createLVP(_n);
_s.scaleX = _s.scaleY = .6;
_s.blendMode = "erase";
now_sprite.addChild (_s) ;
now_sprite.x = mouseX;
now_sprite.y = mouseY;
now_sprite.width = now_sprite.height = 2;
stage.addEventListener (MouseEvent.MOUSE_MOVE, mouseMoveHandler);
stage.addEventListener (MouseEvent.MOUSE_UP, mouseUpHandler);
}
private function mouseMoveHandler(_evt:MouseEvent ):void {
now_sprite.width = now_sprite.height = Math.abs (mouseX - now_sprite.x)*2;
}
private function mouseUpHandler(_evt:MouseEvent ):void {
now_sprite = null;
stage.removeEventListener (MouseEvent.MOUSE_MOVE, mouseMoveHandler);
stage.removeEventListener (MouseEvent.MOUSE_UP, mouseUpHandler);
}
private function createLVP(_n:uint):Sprite {
var _sprite:Sprite = new Sprite;
_sprite.mouseEnabled = false;
_sprite.graphics.lineStyle (1, 0, 0);
_sprite.graphics.beginFill (Math.random ()*0xffffff);
_sprite.graphics.moveTo(Math.cos (Math.PI*2)*100, Math.sin (Math.PI*2)*100);
var _v:uint = _n;
while (_n--) {
_sprite.graphics.lineTo(Math.cos (_n/_v*Math.PI*2) * 100, Math.sin (_n/_v*Math.PI*2) * 100);
}
_sprite.graphics.endFill ();
return _sprite;
}
}
}
这里有一个09年做的示例,内有这种效果。代码:
package{
import flash.display.Sprite;
import flash.events.MouseEvent;
/**
* ...
* @author FLASH023
*/
public class Main extends Sprite
{
private var now_sprite:Sprite;
public function Main():void {
stage.addEventListener (MouseEvent.MOUSE_DOWN, mouseDownHandler);
}
private function mouseDownHandler(_evt:MouseEvent ):void {
now_sprite = addChild (new Sprite) as Sprite;
now_sprite.blendMode = "layer";
var _n:uint = uint(Math.random () * 6 + 3);
now_sprite.addChild (createLVP(_n)) ;
var _s:Sprite = createLVP(_n);
_s.scaleX = _s.scaleY = .6;
_s.blendMode = "erase";
now_sprite.addChild (_s) ;
now_sprite.x = mouseX;
now_sprite.y = mouseY;
now_sprite.width = now_sprite.height = 2;
stage.addEventListener (MouseEvent.MOUSE_MOVE, mouseMoveHandler);
stage.addEventListener (MouseEvent.MOUSE_UP, mouseUpHandler);
}
private function mouseMoveHandler(_evt:MouseEvent ):void {
now_sprite.width = now_sprite.height = Math.abs (mouseX - now_sprite.x)*2;
}
private function mouseUpHandler(_evt:MouseEvent ):void {
now_sprite = null;
stage.removeEventListener (MouseEvent.MOUSE_MOVE, mouseMoveHandler);
stage.removeEventListener (MouseEvent.MOUSE_UP, mouseUpHandler);
}
private function createLVP(_n:uint):Sprite {
var _sprite:Sprite = new Sprite;
_sprite.mouseEnabled = false;
_sprite.graphics.lineStyle (1, 0, 0);
_sprite.graphics.beginFill (Math.random ()*0xffffff);
_sprite.graphics.moveTo(Math.cos (Math.PI*2)*100, Math.sin (Math.PI*2)*100);
var _v:uint = _n;
while (_n--) {
_sprite.graphics.lineTo(Math.cos (_n/_v*Math.PI*2) * 100, Math.sin (_n/_v*Math.PI*2) * 100);
}
_sprite.graphics.endFill ();
return _sprite;
}
}
}
按住鼠标不放,拖动,就可以绘制出相应大小的图形
附件

2010-11-19 13:04, 下载次数: 4
作者: flash023 发布时间: 2010-11-19
楼主去试试greensock的AutoFitArea
作者: 蓝色月光 发布时间: 2010-11-19
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28