DropShadowFilter Parte I
0 COMENTARIOS - Publicado hace 41 meses - Clasificado en: ACTIONSCRIPT, FLASH, TUTORIALESSiguiendo con los nuevos filtros aparecidos con Flash 8, en esta ocasión vamos a ver un ejemplo de uso de DropShadowFilter. La clase DropShadowFilter permite añadir una sombra a diversos objetos de Flash. Cuenta con varias opciones para el estilo de la sombra, incluida sombra interior o exterior y modo de extractor. La sintaxis es la siguiente:
DropShadowFilter([distance:Number], [angle:Number], [color:Number], [alpha:Number], [blurX:Number], [blurY:Number], [strength:Number], [quality:Number], [inner:Boolean], [knockout:Boolean], [hideObject:Boolean])
El ejemplo parte de lo visto en otras anotaciones:
- Drag con easing
- BlurFilter II
1.- Creamos un clip de película dentro del cual creamos un botón que nos permitirá añadir las acciones pertinentes para el arrastre del clip. Asociado al dicho botón añadimos el siguiente actionscript:
on (press) {
arrastrar = true;
xd = _x-_root._xmouse;
yd = _y-_root._ymouse;
}
on (release, releaseOutside) {
arrastrar = false;
xfinal = _root._xmouse;
yfinal = _root._ymouse;
}
2.- Asociado al clip, en función de si estamos arrastrando o no el clip de película le asociamos unas fórmulas de easing tanto que controlen la posición del clip, como la sombra y la profundida (SwapDepths)
onClipEvent (load) {
xfinal = _x;
yfinal = _y;
import flash.filters.DropShadowFilter;
}
onClipEvent (enterFrame) {
var dsf:DropShadowFilter = new DropShadowFilter(DesX, 40, 0xCCCCCC, 30, DesX, DesY, 1, 3, false, false, false);
//DropShadowFilter([distance:Number], [angle:Number], [color:Number], [alpha:Number], [blurX:Number], [blurY:Number], [strength:Number], [quality:Number], [inner:Boolean], [knockout:Boolean], [hideObject:Boolean])
this.filters = [dsf];
if (arrastrar) {
this.swapDepths(_root.getNextHighestDepth());
x = _root._xmouse+xd;
y = _root._ymouse+yd;
DesY = 0.75*Math.abs(difY) + difX/7;
DesX = 0.75*Math.abs(difX) + difY/7;
difY = (_ymouse-this._y)/7;
difX = (_xmouse-this._x)/7;
} else {
x = xfinal+xd;
y = yfinal+yd;
if (DesX > 0){
DesY--
DesX--
}
}
_x = _x+(x-_x)/3;
_y = _y+(y-_y)/3;
}
Algunas entradas relacionadas:
- Efecto cine sobre imágenes
- FLASH Y XML (VIII): Generar una Galeria de Imagenes. Tercera Parte
- ColorMatrix Parte I
- Sonido en Flash V: Carga dinámica de mp3's
- BlurFilter Parte I
- Control de colisiones: hitTest
- Listas desplegables dependientes
También te puede interesar:
| 5 aplicaciones gratuitas para convertir archivos PDF | Ejemplos y cómo crear el efecto CSS parallax | 20 Estrategias para derrotar a la necesidad de hacer tareas inútiles | The Top 7 Quality Free WordPress Themes Released in February 2009 | HipChat: servicio para crear salas de chat privadas para empresas |





















Mauricio Campos en 50 preguntas y respuestas de entrevistas de trabajo




