码迷,mamicode.com
首页 > 其他好文 > 详细

图片分割

时间:2019-05-22 22:32:25      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:row   for   array   收录   lgpl   var   编辑   ini   void   

/**
 *
 * *-------------------*
 * |  *** 图片分割 ***  |
 * *-------------------*
*
 * 编辑修改收录:fengzi(疯子、wu341、wgq341)
 *
 * 不会写代码,我是代码搬运工。
 *
 * 联系方式:QQ(493712833)。
 *
 * 随   笔: https://www.cnblogs.com/fengziwu/
 *
 * 版权协议:请自觉遵守LGPL协议,欢迎修改、复制、转载、传播给更多需要的人。
 * 免责声明:任何因使用此软件导致的纠纷与软件/程序开发者无关。
 * 日   期: 2019.05.08
 *
 */
package fengzi.bmd
{
	import flash.display.Sprite;
	import flash.display.BitmapData;
	import flash.geom.Rectangle;
	import flash.display.Bitmap;
	import flash.geom.Point;
	public class ImgSegmentation extends Sprite
	{
		private var bitmapData:BitmapData;
		private var _cols:uint;
		private var _rows:uint;
		//private var _imgArr:Array = new Array();
		private var _w:uint = 0;
		private var _h:uint = 0;
		private var space:uint=0
		
		/***
		* ImgSegmentation    图片分割
		* @param             img         图片对象
		* @param             _cols       分割图片的横向个数
		* @param             _rows       分割图片的纵向个数
		* @param             space       分割图片的间隔
		***/
		public function ImgSegmentation(img:*,_cols:uint=5,_rows:uint = 5,space:uint=1)
		{
			this._cols = _cols;
			this._rows = _rows;
			this.space=space
			init(img);
		}

		private function init(img:*):void
		{
			bitmapData = new BitmapData(img.width,img.height,false,0);
			bitmapData.draw(img);
			_w = bitmapData.width / _cols;
			_h = bitmapData.height / _rows;
			for (var i:int=0; i<_rows; i++)
			{
				for (var j:int=0; j<_cols; j++)
				{
					var _imgCell:BitmapData = new BitmapData(_w,_h);

					//关键:从原图中复制相应的小区域像素到imgCell中
					_imgCell.copyPixels(bitmapData,
					                    new Rectangle(j*_w,i*_h,_w,_h),
					                    new Point());
					var _sprite:Sprite = new Sprite();
					_sprite.addChild(new Bitmap(_imgCell));

					//定位
					_sprite.x = j * (_w+space);
					_sprite.y = i * (_h+space);

					addChild(_sprite);
					//_imgArr.push(_sprite);
				}
			}
		}






	}

}

  

图片分割

标签:row   for   array   收录   lgpl   var   编辑   ini   void   

原文地址:https://www.cnblogs.com/fengziwu/p/10908754.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!