Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 30-11-2004, 19:18   #1 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
kurze lineTo frage

hallo zusammen!

lineTO zeichnet die bewegung meines mc auf. allerdings möchte ich den startpunkt der linie mittig auf meinem mc positionieren aber irgendwie will das gerade nicht.

was muss ich noch ergänzen oder ändern?

PHP-Code:
this.onEnterFrame = function() {
    if (
draw) {
        
_root.lineStyle(10x000000100);
        
_root.lineTo(_root.podgesamt.zwei._x_root.podgesamt.zwei._y);
    }
};
this.onMouseDown = function() {
    
draw true;
    
_root.moveTo(_root.podgesamt.zwei._x_root.podgesamt.zwei._y);
};
this.onMouseUp = function() {
    
draw false;
}; 
gruß,
nalin
nalin ist offline   Mit Zitat antworten
Alt 30-11-2004, 19:29   #2 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
dreh mal diese beiden zeilen um:
also so:
ActionScript:
  1. this.onMouseDown = function() {
  2.     _root.moveTo(_root.podgesamt.zwei._x, _root.podgesamt.zwei._y);
  3.     draw = true;
  4. };
edit: in diesem sinne: erst hin-bewegen dann malen! /edit
geht das dann?

grz
pape

Geändert von pape (30-11-2004 um 19:34 Uhr)
pape ist offline   Mit Zitat antworten
Alt 30-11-2004, 19:35   #3 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
hi pape!

ist leider wie vorher!
nalin ist offline   Mit Zitat antworten
Alt 30-11-2004, 19:38   #4 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
..hmm.. also wenn ich dein script mal so teste:
ActionScript:
  1. this.onEnterFrame = function() {
  2.     if (draw) {
  3.         _root.lineStyle(1, 0x000000, 100);
  4.         _root.lineTo(_root._xmouse, _root._ymouse);
  5.     }
  6. };
  7. this.onMouseDown = function() {
  8.     draw = true;
  9.     _root.moveTo(_root._xmouse, _root._ymouse);
  10. };
  11. this.onMouseUp = function() {
  12.     draw = false;
  13. };
funzt das !

d.h. es liegt an diesem dingen: _root.podgesamt.zwei

am besten mal fla, oder beschriebung was das teil ist/macht... (oder beides)

pape

//edit2.. quark... edi1 trifft nich auf dich zu!

Geändert von pape (30-11-2004 um 19:46 Uhr)
pape ist offline   Mit Zitat antworten
Alt 30-11-2004, 19:43   #5 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
die aufzeichnung funzt ja auch nur die fängt an einer komischen stelle an anstatt auf meinem mc _root.podgesamt.zwei!

ich kann die fla gleich mal uppen. dauert einen moment

Geändert von nalin (30-11-2004 um 19:58 Uhr)
nalin ist offline   Mit Zitat antworten
Alt 30-11-2004, 19:45   #6 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
jo, hab das prob schon verstanden!

upp einfach mal
pape ist offline   Mit Zitat antworten
Alt 30-11-2004, 19:59   #7 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
so hier ist das gute stück!

(der andere code im ersten frame und auf dem kreis ist nur für die bewegung durch das quadrat)
Angehängte Dateien
Dateityp: zip lineto_ff.zip (6,4 KB, 7x aufgerufen)
nalin ist offline   Mit Zitat antworten
Alt 30-11-2004, 20:25   #8 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
also.. das problem ist, dass
_root.podgesamt.zwei._x
der x wert von zwei im mc peodgesamt.. und nicht der x wert von zwei bezogen auf _root!

abhilfe kann hier mc.getBounds(zielkoordinatensystem) schaffen:
ActionScript:
  1. this.onEnterFrame = function() {
  2.     if (draw) {
  3.         _root.lineStyle(1, 0x000000, 100);
  4.         _root.lineTo(_root.podgesamt.zwei.getBounds(_root).xMin, _root.podgesamt.zwei.getBounds(_root).yMin);
  5.     }
  6. };
  7. this.onMouseDown = function() {
  8.     _root.moveTo(_root.podgesamt.zwei.getBounds(_root).xMin, _root.podgesamt.zwei.getBounds(_root).yMin);
  9.     draw = true;
  10. };
  11. this.onMouseUp = function() {
  12.     draw = false;
  13. };

grz
pape
pape ist offline   Mit Zitat antworten
Alt 30-11-2004, 20:31   #9 (permalink)
.
 
Registriert seit: May 2003
Ort: bayern
Beiträge: 1.117
eines muß ich dir lassen, dein script verdient die note "erstaunlich", da dein sich bewegender kreis innerhalb des mc's podgesamt liegt mußt du dessen ursprung berücksichtigen m.a.W.:
ActionScript:
  1. this.onEnterFrame = function() {
  2.     if (draw) {
  3.         this.lineStyle(1, 0x000000, 100);
  4.         this.lineTo(podgesamt._x + podgesamt.zwei._x,podgesamt._y +  podgesamt.zwei._y);
  5.     }
  6. };
  7. this.onMouseDown = function() {
  8.     draw = true;
  9.     this.moveTo(podgesamt._x + podgesamt.zwei._x, podgesamt._y + podgesamt.zwei._y);
  10.  
  11. };
  12. this.onMouseUp = function() {
  13.     draw = false;
  14. };
__________________
[mooseMash]

Geändert von mooseMash (30-11-2004 um 20:32 Uhr)
mooseMash ist offline   Mit Zitat antworten
Alt 30-11-2004, 20:35   #10 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
gut zu wissen das mit getBounds()!

dank dir für deine hilfe pape!

gruß,
nalin
nalin ist offline   Mit Zitat antworten
Alt 30-11-2004, 20:36   #11 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
achso.. raff jetzt erst, dass der strich da inner mitte anfangen soll!

dann wäre die lösung mit getBounds diese:
ActionScript:
  1. this.onEnterFrame = function() {
  2.     if (draw) {
  3.         _root.lineStyle(1, 0x000000, 100);
  4.         _root.lineTo(_root.podgesamt.zwei.getBounds(_root).xMin+_root.podgesamt.zwei._width/2, _root.podgesamt.zwei.getBounds(_root).yMin+_root.podgesamt.zwei._height/2);
  5.     }
  6. };
  7. this.onMouseDown = function() {
  8.     _root.moveTo(_root.podgesamt.zwei.getBounds(_root).xMin+_root.podgesamt.zwei._width/2, _root.podgesamt.zwei.getBounds(_root).yMin+_root.podgesamt.zwei._height/2);
  9.     draw = true;
  10. };
  11. this.onMouseUp = function() {
  12.     draw = false;
  13. };
..allerdings ist die von mooseMash somit zu bevorzugen, da diese kürzer ist
allerdings musst du bei der Lösung von mooseMash mit der Ausrichtung des Mcs aufpassen!

grz

Geändert von pape (30-11-2004 um 20:38 Uhr)
pape ist offline   Mit Zitat antworten
Alt 30-11-2004, 20:43   #12 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
Zitat:
Zitat von mooseMash
[...]
ActionScript:
  1. this.onEnterFrame = function() {
  2.     if (draw) {
  3.         this.lineStyle(1, 0x000000, 100);
  4.         this.lineTo(podgesamt._x + podgesamt.zwei._x,podgesamt._y +  podgesamt.zwei._y);
  5.     }
  6. };
  7. this.onMouseDown = function() {
  8.     draw = true;
  9.     this.moveTo(podgesamt._x + podgesamt.zwei._x, podgesamt._y + podgesamt.zwei._y);
  10.  
  11. };
  12. this.onMouseUp = function() {
  13.     draw = false;
  14. };
auch nicht schlecht funzt genauso gut! thx
welches der beiden ist denn jetzt performater?

gruß,
nalin

EDIT:
da sind die fragen ja schon geklärt bevor ich diese gepostet habe! dieses forum ist unglaublich!

Geändert von nalin (30-11-2004 um 20:48 Uhr)
nalin ist offline   Mit Zitat antworten
Alt 30-11-2004, 20:57   #13 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
Zitat:
Zitat von nalin
auch nicht schlecht funzt genauso gut! thx
welches der beiden ist denn jetzt performater?

gruß,
nalin
ich schätze mal dass die von mooseMash performance sparender ist...:
einmal +rechnen , oder koordinaten berechnen (getBounds:xMin,xMax,yMin,yMax) und dann noch addieren und noch durch 2 teilen....
ich denke da fällt die wahl leicht...

Zitat:
Zitat von nalin
EDIT:
da sind die fragen ja schon geklärt bevor ich diese gepostet habe! dieses forum ist unglaublich!
hehe.. jo.. des is auch nen goiles forum!

grz & schönen Abend
pape
pape 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 20:52 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele