Matze: Dijkstra-Algorithmus übersetzen - AS3

Beitrag lesen

Hallo!

Ich steh' gerade vor dem Problem, dass ich versuche den Pfad eines per "Drag" gezogenen Elements bei "Drop" wieder zurück zu dessen Ursprung zu ermitteln.
Das sollte eigentlich mit dem Dijkstra-Algorithmus möglich sein, aber ich versteh es nicht.

Die Sprache ist ActionScript 3, dürfte aber auch für andere Ecma-Derivate gelten. Ich hab den Code mal als JS markiert, damit er im Text beachtet wird.

Ich habe es zuerst so gelöst. Die Funktion triggert bei jedem Frame-Aufruf bis das Element wieder bei xLoc und yLoc ist:

private var xLoc:int = 50;  
private var yLoc:int = 50;  
private var speed:int = 10;  
  
private function moveElementHome(e):void {  
			  
    // X-Achse  
    if((e.currentTarget.x - speed) > xLoc){  
        e.currentTarget.x -= speed;  
    }else if((e.currentTarget.x + speed) < xLoc){  
        e.currentTarget.x += speed;  
    }else{  
        e.currentTarget.x = xLoc;  
    }  
  
    // Y-Achse			  
    if((e.currentTarget.y - speed) > yLoc){  
        e.currentTarget.y -= speed;  
    }else if((e.currentTarget.y + speed) < yLoc){  
        e.currentTarget.y += speed;  
    }else{  
        e.currentTarget.y = yLoc;  
    }  
  
    // Schleife beenden  
    if(e.currentTarget.x == xLoc && e.currentTarget.y == yLoc){  
        e.currentTarget.removeEventListener(Event.ENTER_FRAME, moveElementHome);  
    }  
}

Das bringt mein Element auch wieder zurück zum Startpunkt, aber halt nicht auf dem kürzesten Weg.

Leider hab ich arge Probleme den Pseudocode zu übersetzen.

Könnte mir bitte jemand dabei helfen? Gibt es dafür Beispiele?

Danke, Matze