Grid Manager

Classe para criar uma grid definida em relação ao stage, e controlar as posições dos objetos relativamente.

Uso

//instanciando a classe
var gridM:GridManager = new GridManager(this, 10, 8, true, true, 0xffffff);
addChild(gridM);
//parâmetros = new GridManager(this, 10: colunas no eixo X, 8: colunas no eixo Y, true: eixo X visivel, true: eixo Y visivel, 0xffffff: cor da grid);
 
//métodos para controle de posições
//a primeira função a ser chamada é a funcao que atualiza os valores da gird.
if (gridM)
gridM.position();
 
gridM.posRelMcs(mc, 'X', 5, 4, .5);//posicao relativa, posiciona o mc centralizado entre as colunas 5 e 4, ".5" é a percentagem responsável por centralizar o objeto
gridM.posAbsoluteMcs(mc, 'X', 9, 0);//posicao absoluta na coluna 9, existem mais 2 parâmetros opcionais:"absoluteDistance" e "align", o 1 define se a distancia para a grid será absoluta em pixels, se esse parametro for true, o 3 parametro será a distanciancia em pixels nesse exemplo o "0"
gridM.posAbsoluteMcs(mc, 'X', 9, 0, false, 'right');//posicao absoluta na coluna 9 alinhando o objeto pela direita, é necessário destacar que no eixo y "left" será correspondente a "top" e "right" a "bottom"
gridM.posMcSize(mc, 'X', 9, 3, 0);//determina um tamanho variável p o mc q nesse caso vai ocupar no eixo X, entre as colunas 9 e 3
gridM.posImgMasc(im, im.img0, im.mascM, 1, 2, 3, 0, 6, 1);// posiciona uma img e sua mascara ocupando uma fração da grid

grid source

Filed under:Grid, as3

Classe para Pan em As3

Uma classe para Pan com um evento extra para receber a posicao Y.


web_pan

Tags:

Filed under:as3, scroll

dreamhost 60`s

hendrix_dreamhost_tshirt

Filed under:Ilustração

maps api 3d

Exemplo do maps api 3d flash cs4, tem métodos interessantes como o flyTo().

http://code.google.com/apis/maps/signup.html to obtain a key on your on.
Google Maps API for Flash SDK aqui http://code.google.com/apis/maps/documentation/flash/


maps_api_source2

Tags:

Filed under:Google Maps

as3 Video Class

Classe de vídeo em as3lee brimelow's brother

-fácil de customizar, gráficos todos na library


Usage

 
var video_container:VIDEOCONTAINER = new VIDEOCONTAINER;
var video_control:VideoControl = new VideoControl;
addChild(video_container);
addChild(video_control);
 
var video:VideoClass = new VideoClass(video_container, video_control, stage, this, { _url : 'http://www.diogolean.com/videos/Sublime.flv', _title : "vídeo", _w : 480, _h : 360,_interface_visible:false  } );
 

video_player_source

Tags:

Filed under:as3, video

As3 Scroll Bar Class with custumized event

Classe de Scroll bem útil tweenmax and is based on a tuturial by lee brimelow

-scroll x, or y
-resize suporte
-rollover suporte
-delta event (só windows)


ScrollBar.as

 
//usage
//import com.scrollclass.ScrollBar;
//var sc_box:ScrollBar = new ScrollBar(stage, box_0, { _x_y:"x", _roll_on:false, _speed:0.5, _sb_visible:true } );
 
package com.scrollclass
{
	/////////////////////////////////////////tweenmax
	import gs.TweenMax;
 
	//import com.scrollclass.ScrollBox;
	//import com.scrollclass.ScrollBarEvent;
 
	//import caurina.transitions.*;
 
	import flash.display.*;
	import flash.events.*;
	import flash.display.Stage;
	import flash.display.BlendMode;
 
	public class ScrollBar extends MovieClip
	{
		private var _stage:Stage;
 
		private var box:MovieClip;
		//object
		private var _x_y:String;
		private var _roll_on:Boolean;
		private var _speed:Number;
 
		private var _offset:Number;
		private var _min:Number;
		private var _max:Number;
 
		public function ScrollBar(_st:Stage, _scbox:MovieClip, $params:Object):void
		{
			//trace($params)
			//super(_st, _scbox, $params);
 
			//set params
			_stage = _st;
			box = _scbox;
 
			_x_y = $params._x_y;
			_roll_on = $params._roll_on;
			_speed = $params._speed;
			///////////////////////////////////////////////
			//sbox = new ScrollBox(box, _x_y_param);
 
			if (checkIfNeeded())
			{
				//event
				addEventListener(ScrollBarEvent.VALUE_CHANGED, sbChange);
 
				box.sb.thumb.addEventListener(MouseEvent.MOUSE_DOWN, thumbDown);
				box.sb.track.addEventListener(MouseEvent.MOUSE_DOWN, trackDown);
				if(_roll_on)
				{
				box.addEventListener(MouseEvent.MOUSE_OVER, thumbRoll);
				box.addEventListener(MouseEvent.MOUSE_OUT, thumbOut);
				}
				_stage.addEventListener(MouseEvent.MOUSE_UP, thumbUp);
				_stage.addEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelHandler);
 
				//hide sb
				if (!$params._sb_visible)
				{
					hideInterface();
				}
			}
			else
			{
				TweenMax.to(box.sb, 0, {autoAlpha:0});
			}
 
		}
 
		private function checkIfNeeded():Boolean
		{
			if (box.content.width < box.sb.track.width)
			{
				return false;
			}
			else
			{return true;}
		}
 
		private function setMinMax():void
		{
		//for dinamic thumb size
			_min = 0;
			if (_x_y == 'x')
			_max = box.sb.track.width - box.sb.thumb.width;
			else if (_x_y == 'y')
			_max = box.sb.track.height - box.sb.thumb.height;
 
			if (_x_y == 'x')
			{
				if(box.sb.thumb.x <= _min)
				box.sb.thumb.x = _min;
				if(box.sb.thumb.x >= _max)
				box.sb.thumb.x = _max;
				dispatchEvent(new ScrollBarEvent(box.sb.thumb.x/_max));
			}
			else if (_x_y == 'y')
				{
					if(box.sb.thumb.y <= _min)
					box.sb.thumb.y = _min;
					if(box.sb.thumb.y >= _max)
					box.sb.thumb.y = _max;
					dispatchEvent(new ScrollBarEvent(box.sb.thumb.y/_max));
				}
		}
 
		//set via params
		private function thumbOut(e:MouseEvent):void
		{
			_stage.removeEventListener(MouseEvent.MOUSE_MOVE, thumbMoveRoll);
		}
 
		private function thumbRoll(e:MouseEvent):void
		{
 
			_stage.addEventListener(MouseEvent.MOUSE_MOVE, thumbMoveRoll);
			if (_x_y == 'x')
			_offset = mouseX - box.sb.thumb.x;
			else if (_x_y == 'y')
			_offset = mouseY - box.sb.thumb.y;
		}
 
		private function thumbDown(e:MouseEvent):void
		{
			_stage.removeEventListener(MouseEvent.MOUSE_MOVE, thumbMoveRoll);
 
			_stage.addEventListener(MouseEvent.MOUSE_MOVE, thumbMove);
			if (_x_y == 'x')
			_offset = mouseX - box.sb.thumb.x;
			else if (_x_y == 'y')
			_offset = mouseY - box.sb.thumb.y;
		}
		private function trackDown(e:MouseEvent):void
		{
			if (_x_y == 'x')
			{
				box.sb.thumb.x = mouseX - _offset;
				setMinMax();
			}
			else if (_x_y == 'y')
				{
					box.sb.thumb.y = mouseY - _offset;
					setMinMax();
				}
		}
 
		private function thumbUp(e:MouseEvent):void
		{
			_stage.removeEventListener(MouseEvent.MOUSE_MOVE, thumbMove);
		}
 
		private function thumbMoveRoll(e:MouseEvent):void
		{
			box.sb.thumb.x = mouseX - box.sb.thumb.width/2;
			setMinMax();
		}
		private function thumbMove(e:MouseEvent):void
		{
 
			if (_x_y == 'x')
			{
				box.sb.thumb.x = mouseX - _offset;
				setMinMax();
			}
			else if (_x_y == 'y')
				{
					box.sb.thumb.y = mouseY - _offset;
					setMinMax();
				}
 
			e.updateAfterEvent();
		}
 
		public function mouseWheelHandler(e:MouseEvent):void
		{
			if (_x_y == 'x')
			{
			box.sb.thumb.x-=(e.delta*2);
			setMinMax();
			dispatchEvent(new ScrollBarEvent(box.sb.thumb.x/_max));
			}
			if (_x_y == 'y')
			{
			box.sb.thumb.y-=(e.delta*2);
			setMinMax();
			dispatchEvent(new ScrollBarEvent(box.sb.thumb.y/_max));
			}
			e.updateAfterEvent();
		}
 
		private function hideInterface():void
		{
			/*if(!_verbose)
			video_container.holder_mc.blendMode = BlendMode.ERASE;*/
 
			box.sb.blendMode = BlendMode.ERASE;
		}
 
		/////////////////
		private function sbChange(e:ScrollBarEvent):void
		{
			if (_x_y == 'x')
				{
				TweenMax.to(box.content, _speed, {  x:(-e.scrollPercent*(box.content.width - box.masker.width))    });
 
				/*Tweener.addTween(box.content, {x:(-e.scrollPercent*(box.content.width - box.masker.width)),
								time:1 } );*/
				}
				else if (_x_y == 'y')
					{
					TweenMax.to(box.content, _speed, {  y:(-e.scrollPercent*(box.content.height - box.masker.height))    });
					/*Tweener.addTween(box.content, {y:(-e.scrollPercent*(box.content.height - box.masker.height)),
								time:1 } );*/
					}
		}
	///////////
	}
}
 

ScrollBarEvent.as

 
package com.scrollclass
{
	import flash.events.*;
 
	public class ScrollBarEvent extends Event
	{
		public static const VALUE_CHANGED = "valueChanged";
		public var scrollPercent:Number;
 
		public function ScrollBarEvent(sp:Number):void
		{
			super(VALUE_CHANGED);
			scrollPercent = sp;
		}
	}
}
 

web_scroll_source4
0

Tags:

Filed under:as3, scroll