Java classe de Robot de simulation de l'homme le mouvement de la souris

Je suis en train de travailler sur un projet de contrôle à distance, d'envoyer des conrdinate x et y du curseur à partir du serveur vers le client.

Mais

robot.mouseMove(x,y);

ne se déplacent le curseur sur le point particulier sans avoir à déplacer le curseur de la forme original du point de

J'ai trouver cette simple algorthim pour simuler la poursuite du mouvement de souris

for (int i=0; i<100; i++){
   int x = ((end_x * i)/100) + (start_x*(100-i)/100);
 int y = ((end_y * i)/100) + (start_y*(100-i)/100);
 robot.mouseMove(x,y);
} 

Mais ce algorthim encore trop simple, il suffit de déplacer d'un point à un autre point lentement, toujours à la différence de l'homme de se comporter.

J'ai lu quelques ouvert soruce de code sur la télécommande à partir du web, et je trouve ce projet
http://code.google.com/p/java-remote-control/
est l'aide de l'appel de la méthode MosueMovement de MouseListener classe, qu'ils utilisent pour effectuer le "glisser".

Je voudrais savoir est un savoir la meilleure façon de faire cela?

  • vous voudrez peut-être obtenir quelques données provenant des utilisateurs et ensuite l'utiliser de différentes manières pour répliquer l'homme de la simulation.
  • À partir de votre post, il semble que votre plainte principale est que le mouvement de la souris, la vitesse est mal. Si c'est le problème principal, ensuite, vous pouvez ajuster votre code afin de le rendre le mouvement de la souris une vitesse constante, puis ajuster la vitesse jusqu'à ce qu'elle est proche de l'optimal.
  • Vous pourriez peut-être [Alt]+[Tab] un couple de fois et de vérifier e-mail et facebook sur le chemin de A à B. Sérieusement, je pense que l'enregistrement des mouvements de la souris d'un couple d'utilisateurs pourrait être une expérience intéressante pour le rendre plus réaliste. Ce serait cool de prendre en compte un couple de variables, telles que X, Y la position, la vitesse, le temps, le sens du courant, exécutez Rapide Mineur et voir ce que vous pouvez en extraire. Peut-être que vous seriez en mesure de venir avec une version plus sophistiquée de l'algorithme.
InformationsquelleAutor Shawn Lien | 2012-08-26