原创设计 · PhotoShop · AI/CD · Fireworks · AutoCAD · 3DMAX · Flash · 网页设计 · 高精图库 · 笔刷滤镜 · 矢量素材 · 图片素材 · 模板素材· CG素材 · 思缘相册
加入VIP,免费下载精美素材 · PS新手学习推荐教程 · PS教程 · PS探讨和提问 · 思缘求图 · 数码暗房 · 设计作品欣赏 · 设计理论 · PSD素材 · 摄影作品交流 · 素材求助区

900G矢量素材,PSD设计图库
设计优秀作品十二期/新手学习贴
加入VIP,即送3000缘分币,每月500
 下载素材,加入VIP,享受更多权限
发新话题
打印

[菜鸟学院] <原创>用BitmapData切图

<原创>用BitmapData切图

≯全屏显示或下载≮


准备写拼图的,没完成,但完成有一些效果,就发部分代码大家看看把../.
复制内容到剪贴板
代码:
import flash.display.BitmapData;
import flash.geom.Rectangle;
import mx.transitions.Tween;
import mx.transitions.easing.*;
var x_num:Number = 4;
var y_num:Number = 4;
var count_num:Number = 0;
var save_depth:Number;
var pic_width:Number = pic._width/x_num;
var pic_height:Number = pic._height/y_num;
var pic_array:Array = new Array();
var bm1:BitmapData = new BitmapData(pic._width, pic._height);
bm1.draw(pic);
pic._visible = false;
var myListener:Object = new Object();
for (var i:Number = 0; i<x_num; i++) {
        pic_array[i] = new Array();
        for (var j:Number = 0; j<y_num; j++) {
                var bm2:BitmapData = new BitmapData(pic_width, pic_height);
                bm2.copyPixels(bm1, new Rectangle(j*pic_width, i*pic_height, pic_width, pic_height), new Point(0, 0));
                var i_num = 10*i+j;
                var j_num = j;
                var depth:String = String(i)+String(j);
                _root.createEmptyMovieClip("mc"+i+j, 10*i+j);
                _root["mc"+i+j].attachBitmap(bm2, this.getNextHighestDepth());
                _root["mc"+i+j]._x = j*pic_width;
                _root["mc"+i+j]._y = i*pic_height;
                pic_array[i].push(depth);
                _root["mc"+i+j].depth = pic_array[i][j];
                _root["mc"+i+j].onRelease = function() {
                        if (count_num == 0) {
                                count_num = 1;
                                new Tween(this, "_x", Back.easeInOut, this._x, 400, 1, true);
                                new Tween(this, "_y", Back.easeInOut, this._y, 300, 1, true);
                                save_depth = this.depth;
                        }
                        if (count_num == 1) {
                                var cinx = this._x;
                                var ciny = this._y;
                                new Tween(_root["mc"+save_depth], "_x", Back.easeInOut, 400, cinx, 1, true);
                                new Tween(_root["mc"+save_depth], "_y", Back.easeInOut, 300, ciny, 1, true);
                                new Tween(this, "_x", Back.easeInOut, cinx, 400, 1, true);
                                new Tween(this, "_y", Back.easeInOut, ciny, 300, 1, true);
                                save_depth = this.depth;
                        }
                };
        }
}

Key.addListener(myListener);

附件

拼图.fla (144 KB)
  下载必看 缘分币获取和充值

2008-1-14 12:10, 下载次数: 17

拼图.swf (74.03 KB)
  下载必看 缘分币获取和充值

2008-1-14 12:10, 下载次数: 93





http://blog.csdn.net/adreamstar/

TOP

发新话题


关于本站 广告服务 联系我们 版权隐私 合作站点 网站地图 免责申明 管理团队

Powered by Discuz!6.0.0 Copyright © 2008 www.missyuan.com All rights reserved.