Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 02-09-2008, 08:44   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2002
Ort: Saarbrücken
Beiträge: 280
Flagge mit perlinNoise

Hallo Leute ich habe mir diese AS3 geskriptete Flagge vorgeknöpft.
Leider klappt sie nur halb d.h. die Fahne ist animiert, aber der Inhalt darauf nicht. Weiß aber nicht woran es liegt.

Als erstes habe ich ein jpg in die fla importiert und sie als "myflag" verknüpft.

Hier mein Skript:
a) in der fla Frame1:
Code:
var flagBitmap:myflag = new myflag(180,110);
myFlag = new Bitmap(flagBitmap);
myFlag.x = 21;
myFlag.y = 30
this.addChildAt(myFlag, 0);

perlinBitmap = new BitmapData(230, 150, true, 0xFFFFFF);

this.addEventListener(Event.ENTER_FRAME, perFrame,false,0,true);

var point:Point = new Point(offset, 0);
perlinBitmap.perlinNoise(230,150,15,100,true,true,8,false,[point,point]);
offset -= 40;

filter= new DisplacementMapFilter(perlinBitmap,new Point(0,0),8,8,scaleX,scaleY);

filterArray[0] = filter;
myFlag.filters = filterArray;
b) in der flag.as:
Code:
package{
	import flash.display.MovieClip;
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.BitmapDataChannel;
	import flash.geom.Point;
	import flash.events.Event;
	import flash.filters.DisplacementMapFilter;
		
	public class flag extends MovieClip{
		private var perlinBitmap:BitmapData;
		private var myFlag:Bitmap;
		private var offset:int = 0;
		private var filter:DisplacementMapFilter;
		private var scalex:Number;
		private var scaley:Number;
		private var filterArray:Array;
		public function flag():void{
			init();
		}
		private function init():void{
			scalex = 30;
			scaley = 15;
			
			filterArray = new Array();
			
			var flagBitmap:myflag = new myflag(180,110);
			myFlag = new Bitmap(flagBitmap);
			myFlag.x = 21;
			myFlag.y = 30
			this.addChildAt(myFlag, 0);
			
			perlinBitmap = new BitmapData(230, 150, true, 0xFFFFFF);
			var perlin:Bitmap = new Bitmap(perlinBitmap);
			
			this.addEventListener(Event.ENTER_FRAME, perFrame,false,0,true);
			
		}
		private function perFrame(event:Event):void{
			var point:Point = new Point(offset, 0);
			perlinBitmap.perlinNoise(230,150,15,100,true,true,8,false,[point,point]);
			offset -= 40;
			filter= new DisplacementMapFilter(perlinBitmap , new Point(0,0),8,8,scalex,scaley);
			filter.mode = "color";
			filterArray[0] = filter;
			myFlag.filters = filterArray;
		}
	}
}
Hans meisa ist offline   Mit Zitat antworten
Alt 02-09-2008, 12:33   #2 (permalink)
Neuer User
 
Registriert seit: Sep 2002
Ort: Saarbrücken
Beiträge: 280
Weiß echt nicht weiter

Hi Leute,

bräuchte echt Eure Hilfe,
hier ist der Link zu dem Tut:
http://www.tutorialhero.com/click-40...onscript_3.php

und im Anhang hab ich mal meine Variante angehängt.
Dort ist dann glaube ich mein Prob besser zu verstehen.

Beste Grüße Hans
Angehängte Dateien
Dateityp: zip flag.zip (26,2 KB, 20x aufgerufen)
Hans meisa ist offline   Mit Zitat antworten
Alt 03-09-2008, 09:23   #3 (permalink)
Neuer User
 
Registriert seit: Sep 2002
Ort: Saarbrücken
Beiträge: 280
???

Guten Morgen,

und? Hat denn keiner ne Idee?
Hans meisa ist offline   Mit Zitat antworten
Alt 03-09-2008, 19:33   #4 (permalink)
Neuer User
 
Registriert seit: Jun 2001
Ort: Stuttgart
Beiträge: 6.415
Du erstellst zwei Flaggen,
eine wird nicht animiert und liegt über der animierten,
deshalb hast du den Eindruck nur der schwarze Rand bewegt sich.
Aber lösche mal den gesamten Code in Frame 1 und überlasse die Arbeit der Dokumentenklasse "flag" die du eingebunden hast.

Grüße
deluxe
Deluxe ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 13:04 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele