Zurück   Flashforum > Flash > Stuff

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 03-12-2006, 15:58   #16 (permalink)
habs vergessen
 
Benutzerbild von pwdVergesser
 
Registriert seit: Feb 2006
Beiträge: 990
Zitat:
Zitat von Aerks Beitrag anzeigen
Das produktivitätssteigernde Ambiente einer S-Bahn darf man allerdings nicht unterschätzen. Man wird nicht abgelenkt, weil das Umfeld (Pissgestank, Zugluft, Lärm) nicht besonders attraktiv ist. Nur eine Horde Teens - mit ultrafieser R&B-Mucke, die im Volksempfängerstyle durch einen knarzenden Handylautsprecher dröhnt - können dann noch die Lust am coden empfindlich stören.
...aber s-bahn ist doch quälerei - das dauert doch auch ewig. aber sicherlich bist du
darin der star mit deinem apple-ibook...



Zitat:
Zitat von Aerks Beitrag anzeigen
nett... schlottert bei mir so mit 5fps auf´m mac durch... auf´m pc hab ich´s noch
nicht getestet...

Zitat:
Zitat von Aerks Beitrag anzeigen
Einmal natürlich der Herr R. in diesem Thread
...sonntage können ja so langweilig sein...

Zitat:
Zitat von Aerks Beitrag anzeigen
Der Source lad ich als Anhang hoch. Kommentare reich ich ggf. noch nach. Der innerste Loop für die Iterationsberechnung ist ziemlich unleserlich, weil alles ausgerollt ist (Ich will Macros), aber da muss man eben durch.
...werde mich da mal wegen des byteArrays und paletteMap durchwühlen...

Zitat:
Das hab ich ja schon ewig nicht mehr gehört.
...Axel bestimmt auch nicht! =)

pwd
__________________
Blog/Lab Xing
pwdVergesser ist offline   Mit Zitat antworten
Alt 03-12-2006, 16:40   #17 (permalink)
Euer Nuser
 
Benutzerbild von ~pyropete~
 
Registriert seit: Apr 2004
Ort: Sand-City
Beiträge: 3.483
Also, wenn man's um 90° im Uhrzeigersinn dreht ist
es eher Sitting Buddha - Mandelbrot ... wo?
Aber fein fein. ^_^

Edit: Ach, Benoît Mandelbrot ...

--pp

Geändert von ~pyropete~ (03-12-2006 um 16:41 Uhr)
~pyropete~ ist offline   Mit Zitat antworten
Alt 03-12-2006, 20:13   #18 (permalink)
Knopfmaler
 
Benutzerbild von Aerks
 
Registriert seit: Nov 2004
Ort: Essen
Beiträge: 227
Zitat:
...sicherlich bist du darin der star mit deinem apple-ibook...
Nein, leider nicht. Die Kids denken, es wäre ein klobiger iPod der ersten Generation und schauen mich dann nur mitleidig an.

Viele Gruesse
=:] Aerks
__________________
______________________________________________
www.rgblaster.de
Aerks ist offline   Mit Zitat antworten
Alt 04-12-2006, 08:22   #19 (permalink)
habs vergessen
 
Benutzerbild von pwdVergesser
 
Registriert seit: Feb 2006
Beiträge: 990
Zitat:
Zitat von Aerks Beitrag anzeigen
Die Kids denken, es wäre ein klobiger iPod der ersten Generation und schauen mich dann nur mitleidig an.
=)
__________________
Blog/Lab Xing
pwdVergesser ist offline   Mit Zitat antworten
Alt 08-12-2006, 09:52   #20 (permalink)
habs vergessen
 
Benutzerbild von pwdVergesser
 
Registriert seit: Feb 2006
Beiträge: 990
...habe mal mit dem Input von Aerks herumgespielt.

Die Julia-Menge wird nun über ein byteMap + paletteMap erstellt. Alle 3 Sekunden werden die Farben neu gesetzt.

ansehen

Die Farbfunktionen etc. sind von Aerks und seinem echt coolen Fractal-
Piloten:
ansehen

Beim berechnen und mappen meines byteArrays/paletteMap mache ich noch Fehler, den meine Juliamenge sieht nicht so aus wie sie soll - nämlich eigentlich so:
ansehen


Und hier was zum "mit" rumspielen:
Code:


/////////////////////////////////////////////////////
//  juliamenge fractal viewer
//  author : frank reitberger
//  site : http://www.dasprinzip.com
//  copyright 2006
/////////////////////////////////////////////////////


// --------------------------------------------------------------------------------------------------


stop();


// --------------------------------------------------------------------------------------------------

///////////////////////////////////
// import stage classes
///////////////////////////////////


import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.StageScaleMode;
import flash.display.Sprite;
import flash.geom.Point;
import flash.geom.Rectangle;



// --------------------------------------------------------------------------------------------------

///////////////////////////////////
// setup juliamenge global vars
///////////////////////////////////


var efxDraw:Bitmap;
var efxStage:BitmapData;

var blurDraw:Bitmap;
var blurtage:BitmapData;

var fractalCanvas:BitmapData;
var fractalByteArray:ByteArray;


var paletteR:Array;
var paletteG:Array;
var paletteB:Array;

var newSec:Number;
var oldSec:Number;
var timeCnt:Number = 0;




// --------------------------------------------------------------------------------------------------

///////////////////////////////////
// get mouse position steady
///////////////////////////////////


function catchMouse(evt:MouseEvent) {

	blurStage.copyPixels(efxStage, new Rectangle(stage.mouseX-50, stage.mouseY-50, 50 , 50), new Point(stage.mouseX-50, stage.mouseY-50));

}


// --------------------------------------------------------------------------------------------------

///////////////////////////////////
// draw blur filters steady
///////////////////////////////////


function onEnterFrame(evt:Event) {
	
	pnt.y--;
	
	if (pnt.y < 0) {
		pnt.y = 400;		
	}
	
	blurStage.copyPixels(efxStage, new Rectangle(pnt.x, pnt.y, 400 , 20), new Point(pnt.x, pnt.y));	
	
	var updTime = new Date();
	newSec = updTime.getSeconds();
	
	if (oldSec != newSec) {
			
		timeCnt++;
		
		if (timeCnt > 3) {
			
			paint();
			
			timeCnt = 0;
			
		}

	}
		
	oldSec = newSec;

	blurStage.applyFilter(blurStage,blurStage.rect,new Point(0, 0),new BlurFilter(8, 8, 1));
	blurStage.colorTransform(blurStage.rect, new ColorTransform(1, 1, 1, 1, -1, -1, -1,-4));
	
	noiseStage.perlinNoise(20, 20, 1, Math.random()*1000, false, true, true, true);
	
	var dpMap:DisplacementMapFilter = new DisplacementMapFilter(noiseStage, new Point(0, 0), 1, 2, 20, 20);
	dpMap.mode = "clamp";
	
	blurStage.applyFilter(blurStage, new Rectangle(0, 0, stage.stageWidth, stage.stageHeight), new Point(0, 0), dpMap);	


}


// --------------------------------------------------------------------------------------------------

///////////////////////////////////
// color management
// written by Thorsten Werner
// www.rgblaster.de
///////////////////////////////////

function initPalette():void {
	
	paletteR=new Array();
	paletteG=new Array();
	paletteB=new Array();
	
	for (var i:uint=0;i<0xFF;i++) {
		
		paletteR.push(0);
		paletteG.push(0);
		paletteB.push(0);
	
	}
	
}

function updatePalette():void {
	
	var t:Number=getTimer()*0.0003;
	var s1:Number=Math.sin(t)*2.972;
	var s2:Number=Math.cos(t)*1.581;
	var s3:Number=Math.sin(t)*2.193;
	
	for (var i:uint=1;i<0xFF;i++) {
		paletteR[i]=createCol(s1,s2,s3);
		paletteG[i]=createCol(s1,s2,s3);
		paletteB[i]=createCol(s1,s2,s3);
		s1+=0.36;
		s2+=0.34;
		s3+=0.38;
	} 
}


function createCol(s1:Number,s2:Number,s3:Number):Number {
	
	var r:Number=0x7F+Math.sin(s1)*0x7F;
	var g:Number=0x7F+Math.sin(s2)*0x7F;
	var b:Number=0x7F+Math.sin(s3)*0x7F;
	
	return 0xFF000000 | (r & 0xFF) <<16 | (g & 0xFF) <<8 | (b & 0xFF);
}
	
// --------------------------------------------------------------------------------------------------

///////////////////////////////////
// configure canvas
///////////////////////////////////


function initStage() {
	
	stage.scaleMode = StageScaleMode.NO_SCALE;
	
	efxStage = new BitmapData( stage.stageWidth , stage.stageHeight , false , 0x000000 );
	efxDraw = new Bitmap( efxStage );
	addChild( efxDraw );
	
	fractalCanvas = new BitmapData( stage.stageWidth , stage.stageHeight , false , 0x000000 );
	fractalByteArray = new ByteArray();
	fractalByteArray.endian = Endian.BIG_ENDIAN;
	fractalByteArray.length = fractalCanvas.width*fractalCanvas.height; 
	
	blurStage = new BitmapData( stage.stageWidth , stage.stageHeight , true, 0x000000 );
	blurDraw = new Bitmap( blurStage );
	addChild( blurDraw );
	
	noiseStage = new BitmapData(stage.stageWidth,stage.stageHeight, false, 0xffffff);
	
	addChild( pnt );

	initPalette();
	
	
	
	stage.addEventListener(Event.ENTER_FRAME, onEnterFrame );
	
	paint();

}


// --------------------------------------------------------------------------------------------------

///////////////////////////////////
// paint juliamenge fractal
///////////////////////////////////


function paint() {
	
	updatePalette();
	
	fractalByteArray.position=0;
	fractalByteArray.length=0;
	
	var cnt:Number;
	var tx:Number;
	var ty:Number;
	var dim:Number;
	var dist:Number;
	var xn:Number;
	var yn:Number;	
	
	
	var a:Number = -1;
	var b:Number = 0.28;
	var xmin:Number = -1;
	var ymin:Number = -1;
	
	var k = 1.2;
	
	dim = k / 200;
	
	tx = xmin;
	
	for (var s:Number = 0; s <= 400; s++) {
		
		ty = ymin;
		
		for (var r:Number = 0; r<=400; r++) {	
        	
			xn = tx;
        	yn = ty;
        	cnt = 0;	
			
			while ((cnt < 255) && (Math.sqrt(xn*xn+yn*yn)<2)) {
				
				cnt++;
				
				dist = (xn*xn)-(yn*yn) + a;
				yn = (2*xn*yn) + b;
				
				xn = dist;
				
			}

			
			fractalByteArray.writeUnsignedInt(cnt);
			
			ty = ty + dim;			
		}
		
		tx = tx + dim;
	}	
	
	fractalByteArray.position=0;
	fractalCanvas.setPixels(fractalCanvas.rect,fractalByteArray);
	fractalCanvas.paletteMap(fractalCanvas,fractalCanvas.rect,new Point(0, 0),paletteR,paletteG,paletteB);
	
	var myMatrix:Matrix = new Matrix();

	myMatrix.rotate(Math.PI/2);

	
	var translateMatrix:Matrix = new Matrix();
	translateMatrix.translate(400, 0);
	
	myMatrix.concat(translateMatrix);

	
	efxStage.draw(fractalCanvas,myMatrix,null,"normal",efxStage.rect,true);	
	
}


// --------------------------------------------------------------------------------------------------

///////////////////////////////////
// init
///////////////////////////////////


initStage();

pwd
__________________
Blog/Lab Xing
pwdVergesser 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 18:35 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele