Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-09-2005, 17:10   #1 (permalink)
WMR0r
 
Benutzerbild von voelpel
 
Registriert seit: Sep 2005
Ort: in de Palz!
Beiträge: 15
mit der Maus drehbares Objekt/Zeichnung

Hallo ihr Flasher...

ich bin am verzeifeln... ich denke mal, dass meine Frage nicht wirklich schwer zu beantworten ist, aber ich such jetzt wirklich seit Tagen nach einem vernünftigen Tutorial oder Tips und komme einfach nicht weiter. Vielleicht könnt ihr mir helfen:

ich bin gerade dabei, eine Art Raumplaner für eine Homepage zu entwickeln. Man kann die einzelnen Möbel aus einer Datenbank auf den Grundriss ziehen und dort dann ausrichten. Das Verschieben funktioniert, aber ich finde keine Möglichkeit, dass man die Dinger durch Klicken bzw. Mouseover auf die Ecken auch drehen kann.

Im Grunde also genau die Funktionen, die man mit dem Skalierungstool in Flash hat.
Die Möbel sind einfach nur stinknormale Rechtecke oder Kreise. Ich hab mir zahlreiche Posts durchgelesen und auch ausprobiert, aber mittels Drehregler usw. bekomm ich das nicht hin.

Kann mir biiiitttteeeee jemand helfen? Ich geb auch ein Bier aus!

Danke und Gruß!

Geändert von voelpel (07-09-2005 um 17:11 Uhr)
voelpel ist offline   Mit Zitat antworten
Alt 07-09-2005, 17:33   #2 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Wo wohnstn?
Mit _rotation kann man doch mc's drehen, oder was meinst du?
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 07-09-2005, 17:46   #3 (permalink)
lernwillig
 
Benutzerbild von 23012
 
Registriert seit: Jan 2002
Ort: auf dem Land
Beiträge: 1.327
Hey rendner[i] bist wohl auf das Bier aus?

Also ich würde auf einen unsichtbaren Button diese Aktion schreiben:

on (release) {_level0.sessel1._rotation+=10;// immer 10 Grad rechtsherum
}
oder auf jeder Ecke einen unsichtbaren Button mit:

on (release) {_level0.sessel1._rotation=45;// bzw. -45, 135, -135
}

Gruss
23012
__________________
[TUTORIAL] Nahtlose Muster erstellen in Photoshop
23012 ist offline   Mit Zitat antworten
Alt 07-09-2005, 18:19   #4 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Zitat:
Zitat von 23012
Hey rendner[i] bist wohl auf das Bier aus?
Bei der Hitze die hier herrscht ist mir jedes Getränk recht, aber du scheinst ja auch nicht gerade uninteressiert sein!
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 08-09-2005, 10:23   #5 (permalink)
WMR0r
 
Benutzerbild von voelpel
 
Registriert seit: Sep 2005
Ort: in de Palz!
Beiträge: 15
Zitat:
Zitat von 23012
Hey rendner[i] bist wohl auf das Bier aus?

Also ich würde auf einen unsichtbaren Button diese Aktion schreiben:

on (release) {_level0.sessel1._rotation+=10;// immer 10 Grad rechtsherum
}
oder auf jeder Ecke einen unsichtbaren Button mit:

on (release) {_level0.sessel1._rotation=45;// bzw. -45, 135, -135
}

Gruss
23012

Danke für die schnellen Antworten Jungs... soll ich das Bier dann schicken oder wie?

ans sich war ich allerdings schon soweit wie oben beschrieben. Allerdings sollte sich der Sessel / Tisch... aber nicht per Klick immer um eine bestimmte Gradzahl drehen, sondern sich mit der Maus drehen. Das Ziehen mit der Maus funktioniert, wenn ich aber versuche, den Script auf das Drehen anzupassen geht garnix.

Ich bin halt net so ein Proflasher
voelpel ist offline   Mit Zitat antworten
Alt 09-09-2005, 14:59   #6 (permalink)
lernwillig
 
Benutzerbild von 23012
 
Registriert seit: Jan 2002
Ort: auf dem Land
Beiträge: 1.327
Also - ich hab nochmal drüber nachgedacht. Das ist wohl nicht
so einfach zu realisieren. Woher soll der Sessel wissen, wann Du
ihn ziehen und wann Du nur daran drehen willst? Mit der gleichen
Mausbewegung wird es wohl nicht gehen. Also vielleicht:
1. mit einem zusätzlichen Tastendruck "D" für drehen,
2. mit Einrasten (drag + drop) >>> dann erst drehen,
3. mit einer hitTest-Abfrage (wenn Maus über Sessel-MC und
Maustaste nicht mehr gedrückt) >>> dann drehen.
Das sind so meine Ideen dazu.
Gruss
23012
__________________
[TUTORIAL] Nahtlose Muster erstellen in Photoshop
23012 ist offline   Mit Zitat antworten
Alt 09-09-2005, 15:50   #7 (permalink)
WMR0r
 
Benutzerbild von voelpel
 
Registriert seit: Sep 2005
Ort: in de Palz!
Beiträge: 15
Hmmm

also es lässt sich realisieren, allerdings bin ich in AS echt zu schwach, um mich da durchzukämpfen.

Schau mal hier: www.garpa.de unter "Einrichtungsplaner". Der ist natürlich superprofessionell, aber man soll seine Ziele ja hoch ansetzen

Ich bin mittlerweile so weit, dass man das Produkt mit der Maus ziehen kann (da ist dann der mittelre Teil aktiv) und mit einem Klick auf die Ecken kann mann das Dingens dann in 5° Schritten drehen.

Allerdings frag ich mich langsam, ob das nicht besser so ist, wenn mans per Klick dreht, statt es zu ziehen?! Denn sonst bist du ja mit bei jedem einzelnen Objekt ständig am rumdrehen, bis alle Objekte die selbe Ausrichtung haben...

Schau dir die Garpa Seite mal an... ist sehr gut gemacht wie ich finde. Für Tips bin ich natürlich dankbar!

Gruß Jan
voelpel ist offline   Mit Zitat antworten
Alt 09-09-2005, 16:47   #8 (permalink)
lernwillig
 
Benutzerbild von 23012
 
Registriert seit: Jan 2002
Ort: auf dem Land
Beiträge: 1.327
Ja - wirklich gut gemacht: erst draggt man die Möbel an ihren
Platz, dann (bei Rollover über den Ecken) erscheinen die Anfasspunkte
und der Bewegungsradius, dann bei Klick darauf lassen sie sich drehen.
(Das sind zwei verschiedene Buttons - der mittlere zum Ziehen und die
Eckbuttons zum Drehen.)
Probier mal weiter, das kriegst Du bestimmt hin!
Gruss
23012
__________________
[TUTORIAL] Nahtlose Muster erstellen in Photoshop
23012 ist offline   Mit Zitat antworten
Alt 10-09-2005, 09:40   #9 (permalink)
WMR0r
 
Benutzerbild von voelpel
 
Registriert seit: Sep 2005
Ort: in de Palz!
Beiträge: 15
schonwiedereinproblem...

ok, also das Drehen funktioniert, das Verschieben funktioniert... sehr gut!

Jetzt kommt aber schon das nächste Problem: ich habe eine Art "Datenbank" mit den verschiedenen Artikeln angelegt. Beim Klick auf den Button "Stuhl" soll der (dreh- und verschiebbare) Stuhl in den Grundriss geladen werden. Funktioniert soweit problemlos mit "loadmovienum". Was muss ich denn tun, damit mit jedem neuen Klick auf den Button ein neuer Stuhl geladen wird? Momentan wird einfach nur der eine MC neu geladen.

Helf mer doch mool eener ;-)
voelpel ist offline   Mit Zitat antworten
Alt 10-09-2005, 09:49   #10 (permalink)
Nix Wisser
 
Benutzerbild von nullidee
 
Registriert seit: May 2003
Ort: Würzburg, Kleinstadt
Beiträge: 3.510
mit duplicateMovieClip duplizieren

Code:
 stuhl.duplicateMovieClip("neuerStuhl",100);
oder aus der Bibliothek attachen (attachMovieClip)
__________________
nullidee

Abakus GT 10² Kugeln - 80"Leinwand - CARAN D´ACHE SUPRACOLOR®
nullidee ist offline   Mit Zitat antworten
Alt 13-09-2005, 13:49   #11 (permalink)
WMR0r
 
Benutzerbild von voelpel
 
Registriert seit: Sep 2005
Ort: in de Palz!
Beiträge: 15
nächstes Problem - attach und visible

Und weiter gehts... hab langsam das Gefühl, je mehr Probleme ich löse desto mehr neue treten auf...

also: mithilfe von attachmovieclip lade ich einen Artikel auf den Grundriss. Dieser kann gedragt und gedreht werden.
Wenn man ihn über die Grenzen zieht, wird er mittels _visible=false ausgeblendet.

Jetzt das Problem: man kann jeden Artikel aus der Datenbank mehrmals in den Grundriss laden:

ActionScript:
  1. on (release) {
  2. menge = 1;
  3. while (menge>0) {
  4. attachMovie("tische", "r7070"+i, i );
  5. setProperty("r7070"+i,_x, 50);
  6. setProperty("r7070"+i, _y, 200);
  7. i = i+1;
  8. menge = menge-1;
  9. }
  10. }

Sobald aber ein Artikel mehr als einmal geladen wurde und man zieht einen raus, wird nicht der rausgezogene gelöscht, sondern der, der zuerst geladen wurde. Und wenn man beide übereinander positioniert, verschwindet einer automatisch:

ActionScript:
  1. on (dragOut){
  2.     ("r7070"+i)._visible = false;
  3. }

(AS liegt auf einer Schaltfläche innerhalb des MC)

Ich komme mit hier einfach nicht weiter. Ich habs jetzt mit zig verschiedenen Beispielen im Forum abgeglichen, aber ich kriegs einfach nicht hin. Kann mir jemand helfen??
voelpel ist offline   Mit Zitat antworten
Alt 13-09-2005, 13:56   #12 (permalink)
Nix Wisser
 
Benutzerbild von nullidee
 
Registriert seit: May 2003
Ort: Würzburg, Kleinstadt
Beiträge: 3.510
ganz davon abgesehen, daß "setproperty" Flash4-Syntax ist,
du hast ein Tiefenproblem.

Stelle sicher, daß du immer auf unterschiedliche Tiefen lädst/attachst
__________________
nullidee

Abakus GT 10² Kugeln - 80"Leinwand - CARAN D´ACHE SUPRACOLOR®
nullidee ist offline   Mit Zitat antworten
Alt 13-09-2005, 14:01   #13 (permalink)
WMR0r
 
Benutzerbild von voelpel
 
Registriert seit: Sep 2005
Ort: in de Palz!
Beiträge: 15
öhm wie wo was?

und das macht man wie?

ActionScript:
  1. on (release) {
  2.         menge = 1;
  3.         while (menge>0) {
  4.                 attachMovie("tische", "r7070"+i, i );
  5.                 setProperty("r7070"+i,_x, 50);
  6.                 setProperty("r7070"+i, _y, 200);
  7.                 i = i+1;
  8.                 menge = menge-1;
  9.         }
  10. }
voelpel ist offline   Mit Zitat antworten
Alt 13-09-2005, 14:11   #14 (permalink)
Nix Wisser
 
Benutzerbild von nullidee
 
Registriert seit: May 2003
Ort: Würzburg, Kleinstadt
Beiträge: 3.510
ich würde die Tiefe auf _root speichern oder _global
Code:
on (release) { 
menge = 1; 
   while (menge>0) { 
	  attachMovie("tische", "r7070"+i, _root.count); 
	  setProperty("r7070"+i,_x, 50); 
	  setProperty("r7070"+i, _y, 200); 
	  _root.count += 1; 
	  menge = menge-1; 
   }
}
__________________
nullidee

Abakus GT 10² Kugeln - 80"Leinwand - CARAN D´ACHE SUPRACOLOR®

Geändert von nullidee (13-09-2005 um 14:14 Uhr)
nullidee ist offline   Mit Zitat antworten
Alt 13-09-2005, 14:56   #15 (permalink)
WMR0r
 
Benutzerbild von voelpel
 
Registriert seit: Sep 2005
Ort: in de Palz!
Beiträge: 15
och man!

ich fürchte, ich blick endgültig nicht mehr durch...

ich hab deinen AS eingefügt. Erstes Attachen funktioniert, bei jedem weiteren stimmen die x & y Positionierung nicht mehr (ist jetzt 0,0).
Ausserdem lassen sich die MCs nicht mehr draggen.

Drag und Drehfunktion liegen auf dem Attachten MC:

ActionScript:
  1. onClipEvent (mouseDown) {
  2.     if (hitTest(_root._xmouse, _root._ymouse, false)) {
  3.             startDrag (this,false);
  4.         }
  5. }
  6. onClipEvent (mouseUp) {
  7.     stopDrag ();
  8. }
voelpel 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 22:02 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele