Magnetfeld Retro-Comeback

Status
Nicht offen für weitere Antworten.

Matthias Kannengiesser

Erfahrenes Mitglied
Hi Folks,

Mal wieder was zum ausprobieren - viel Spass damit!

Version Quadrat

PHP:
MovieClip.prototype.setMatrix = function (pClip, pReihen, pSpalte, pDim, pDist, pFarbe, pAlpha, pAbstand, pMax, pMin, pMult, pFraktion) {
	var tiefe;
	for (var i = 0; i<pReihen; i++) {
		for (var j = 0; j<pSpalte; j++) {
			this[pClip] = this.createEmptyMovieClip(pClip+j+"_"+i, tiefe++);
			with (this[pClip]) {
				beginFill(pFarbe, pAlpha);
				moveTo(-pDim, -pDim);
				lineTo(pDim, -pDim);
				lineTo(pDim, pDim);
				lineTo(-pDim, pDim);
				lineTo(-pDim, -pDim);
				_x = Math.round(i*((2*pDim)+pDist)+Stage.width/2-((pReihen-1)*((2*pDim)+pDist)/2));
				_y = Math.round(j*((2*pDim)+pDist)+Stage.height/2-((pSpalte-1)*((2*pDim)+pDist)/2));
			}
			this[pClip].onEnterFrame = function() {
				this.abstX = this._x-_root._xmouse;
				this.abstY = this._y-_root._ymouse;
				this.abstand = Math.sqrt((this.abstX*this.abstX)+(this.abstY*this.abstY));
				if (this.abstand<pAbstand) {
					this.dimX = pMax-this.abstand;
					this.dimY = pMax-this.abstand;
				} else {
					this.dimX = pMin;
					this.dimY = pMin;
				}
				this.skalX = ((this.dimX-this._xscale)*pMult)+(this.skalX*pFraktion);
				this.skalY = ((this.dimY-this._yscale)*pMult)+(this.skalY*pFraktion);
				this._xscale += this.skalX;
				this._yscale += this.skalY;
			};
		}
	}
}

// Ebene 1
this.setMatrix("feld", 10, 10, 10, 10, 0xffff00, 25, 200, 250, 100 ,.36, .75);

// Ebene 2
this.createEmptyMovieClip("mc",100);
this.mc.setMatrix("feld", 10, 10, 10, 10, 0xff0000, 25, 200, 250, 100 ,.36, .90);


-----

Version Kreise (gefüllt)

PHP:
MovieClip.prototype.setMatrix = function (pClip, pReihen, pSpalte, pDim, pDist, pFarbe, pAlpha, pAbstand, pMax, pMin, pMult, pFraktion) {
	var tiefe;
	for (var i = 0; i<pReihen; i++) {
		for (var j = 0; j<pSpalte; j++) {
			this[pClip] = this.createEmptyMovieClip(pClip+j+"_"+i, tiefe++);
			with (this[pClip]) {
				moveTo(0,-1);
				lineStyle(20, pFarbe, pAlpha);
				lineTo(0, 0);				
				_x = Math.round(i*((2*pDim)+pDist)+Stage.width/2-((pReihen-1)*((2*pDim)+pDist)/2));
				_y = Math.round(j*((2*pDim)+pDist)+Stage.height/2-((pSpalte-1)*((2*pDim)+pDist)/2));
			}
			this[pClip].onEnterFrame = function() {
				this.abstX = this._x-_root._xmouse;
				this.abstY = this._y-_root._ymouse;
				this.abstand = Math.sqrt((this.abstX*this.abstX)+(this.abstY*this.abstY));
				if (this.abstand<pAbstand) {
					this.dimX = pMax-this.abstand;
					this.dimY = pMax-this.abstand;
				} else {
					this.dimX = pMin;
					this.dimY = pMin;
				}
				this.skalX = ((this.dimX-this._xscale)*pMult)+(this.skalX*pFraktion);
				this.skalY = ((this.dimY-this._yscale)*pMult)+(this.skalY*pFraktion);
				this._xscale += this.skalX;
				this._yscale += this.skalY;
			};
		}
	}
}

// Ebene 1
this.setMatrix("feld", 10, 10, 10, 10, 0xffff00, 25, 200, 250, 100 ,.36, .75);

// Ebene 2
this.createEmptyMovieClip("mc",100);
this.mc.setMatrix("feld", 10, 10, 10, 10, 0xff0000, 25, 200, 250, 100 ,.36, .90);

-----

Version Kreis (Umriss)

PHP:
MovieClip.prototype.setMatrix = function (pClip, pReihen, pSpalte, pDim, pDist, pFarbe, pAlpha, pAbstand, pMax, pMin, pMult, pFraktion,pSchritte) {
	var tiefe;
	for (var i = 0; i<pReihen; i++) {
		for (var j = 0; j<pSpalte; j++) {
			this[pClip] = this.createEmptyMovieClip(pClip+j+"_"+i, tiefe++);
			with (this[pClip]) {
				moveTo(pDim, 0);				
				lineStyle(0.1, pFarbe, pAlpha);				
				for (var k=0; k<=45; k++) {
					radiant = k*pSchritte/180*Math.PI;
					pX = Math.cos(radiant)*pDim;
					pY = Math.sin(radiant)*pDim;
					lineTo(pX, pY);
				}				
				_x = Math.round(i*((2*pDim)+pDist)+Stage.width/2-((pReihen-1)*((2*pDim)+pDist)/2));
				_y = Math.round(j*((2*pDim)+pDist)+Stage.height/2-((pSpalte-1)*((2*pDim)+pDist)/2));
			}
			this[pClip].onEnterFrame = function() {
				this.abstX = this._x-_root._xmouse;
				this.abstY = this._y-_root._ymouse;
				this.abstand = Math.sqrt((this.abstX*this.abstX)+(this.abstY*this.abstY));
				if (this.abstand<pAbstand) {
					this.dimX = pMax-this.abstand;
					this.dimY = pMax-this.abstand;
				} else {
					this.dimX = pMin;
					this.dimY = pMin;
				}
				this.skalX = ((this.dimX-this._xscale)*pMult)+(this.skalX*pFraktion);
				this.skalY = ((this.dimY-this._yscale)*pMult)+(this.skalY*pFraktion);
				this._xscale += this.skalX;
				this._yscale += this.skalY;
			};
		}
	}
}

// Kreise

// Ebene 1
this.setMatrix("feld", 5, 5, 10, 10, 0x0000ff, 25, 200, 250, 100 ,.36, .75, 8);

// Ebene 2
this.createEmptyMovieClip("mc",100);
this.mc.setMatrix("feld", 5, 5, 10, 10, 0xff0000, 25, 200, 250, 100 ,.36, .90, 8);

Sterne

PHP:
// Sterne
// Ebene 1
this.setMatrix("feld", 5, 5, 10, 10, 0x0000ff, 25, 200, 250, 100 ,.36, .75, 100);

// Ebene 2
this.createEmptyMovieClip("mc",100);
this.mc.setMatrix("feld", 5, 5, 10, 10, 0xff0000, 25, 200, 250, 100 ,.36, .90, 100);

Polygone

PHP:
// Ebene 1
this.setMatrix("feld", 5, 5, 10, 10, 0x0000ff, 25, 200, 250, 100 ,.36, .75, 300);

// Ebene 2
this.createEmptyMovieClip("mc",100);
this.mc.setMatrix("feld", 5, 5, 10, 10, 0xff0000, 25, 200, 250, 100 ,.36, .90, 300);

Viel Spass - be inspired!

Download wie immer unter:
http://www.flashstar.de/tutlist/

Hinweis:
Wer zu viele Formen setzt der setzt der Performance kräftigt zu hierbei wäre ein _quality = "LOW" zu empfehlen.

Liebe Grüsse
Matze K.
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück