Einzelnen Beitrag anzeigen

Torpedo

Registriert seit: 21. Dez 2003
410 Beiträge
 
#8

Re: Mausbewegung(!) simulieren

  Alt 24. Apr 2007, 14:56
Habs mal so gemacht. Ist allerdings in C, sollte aber ganz leicht übersetzt werden können
Code:
void mouseto(int x, int y, int speed){
        POINT maus;
        GetCursorPos(&maus);
        double mx = maus.x;
        double my = maus.y;

        while(mx != x || my != y) {
                double nx = x-mx;
                double ny = y-my;
                double len = sqrt(nx*nx + ny*ny);
                if(len<=1){
                        mx=x;
                        my=y;
                } else {
                        nx/=(len*0.5);
                        ny/=(len*0.5);
                        mx+=nx;
                        my+=ny;
                }
                SetCursorPos(ceil(mx),ceil(my));
                Sleep(speed);
        }
}
Es wird also bei jedem Durchgang (da der Benutzer die Maus bewegt haben könnte) ein Vektor gezogen und die x- bzw. y-Geschwindigkeit berechnet.

Kann sein, dass an der Abfrage in while noch gerundet werden muss und bei "0.5" ein bisschen was geändert werden muss. Konnte es gerade nicht testen.
  Mit Zitat antworten Zitat