"3D" Menü

danke für eure postings, :)

die rotator4.fla ist schon verdammt dicht an dem was ich suche dran, nur finde ich es etwas nervig dass sich die Bilder mit drehen, ich hätte lieber dass die Bilder sich nur proportional in Größe und Tansparenz nach hinten hin ändern.

hab aber leider noch nichts passendes im code gefunden
"obj._xscale = (sw * 100) * (obj._yscale / 100);" wenn ich die Zeile ausklammer dreht sich das Bild zumindest nichtmehr um die eigene Achse, allerdings ist es dann irgendwie etwas verschoben:confused:

hier mal der komplette code:

Code:
var anzahl = 4; // NICHT VERGESSEN: Die Anzahl der Bilder

var radius_x = 250;
var radius_y = 30;

var speed = 0.04;
var winkel =0;

var element = new Array(anzahl);

for (var i=0; i<element.length; i++) {
	element[i] = rotator.attachMovie("element", "e" + i, i + 10);
	element[i].idx = (i + 1);
	element[i].offset = (Math.PI * 2) / anzahl * i;
}

rotator.attachMovie("mitte", "mitte" , 5);

this.onEnterFrame = function() {
	for (var i=0; i<element.length; i++) {
		var obj = element[i]; // Aktuelles Element
		var w = obj.offset + winkel; // Winkel des Elementes
		if (w >= Math.PI * 2) w -= Math.PI * 2; // Winkel beschneiden
		var d = Math.abs(w - Math.PI); // Kreisabschnitt des Objektes
		var sw = Math.sin(w + Math.PI / 2); // x-Skalierung berechnen
		obj._yscale = 45 + d * 15; // Skalierung anhand des Abschnittes
		obj._xscale = (sw * 100) * (obj._yscale / 100);
		obj._alpha = 40 + d * 20; // Transparenz
		// In "depth" wird die Zieltiefe des Objektes abgelegt. Befindet es sich
		// im vorderen Kreisabschnitt (d größer als PI/2), so wird eine positive
		// Tiefenebene gewählt, andernfalls eine negative:
		var depth = (d > Math.PI / 2)? int(d * anzahl * 2) : -500 + int(d * anzahl * 2);
		depth += (i % 2 == 0)? 1 : 0;
		obj.swapDepths(depth);
		obj.tf.text = depth; // Anzeige der Tiefe (nur zur Info)
		obj._x = Math.sin(w) * radius_x; // Positionierung des Objektes
		obj._y = Math.cos(w) * radius_y;
	}
	winkel += speed; // Winkel erhöhen
if (winkel >= Math.PI * 2) winkel -= Math.PI * 2; // Winkel nullen
	if (winkel < 0) winkel += Math.PI * 2;
	speed = getSpeed();
}
function getSpeed() { // Rotationsgeschwindigkeit anhand Mausposition
	return -(_xmouse - rotator._x) /6000;
}

einer ne Idee wie ich die Rotation um die eigene Achse abstellen kann?

Danke für eure Hilfe
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück