J'ai une application où j'ai besoin de dessiner un nombre aléatoire de points à des endroits aléatoires dans l'activité. Ensuite, je dois déplacer ces points dans toutes les directions, comme les stéroïdes. Comment puis je faire ça? S'il vous plaît voir l'image ci-dessous.Dessiner des cercles à des points aléatoires
Répondre
regard Hav à http://www.droidnova.com/playing-with-graphics-in-android-part-iii,176.html
Dans la méthode onDraw créer un objet aléatoire, il ensemencement avec la largeur et la hauteur de l'écran et dessiner des points sur ces points autant de fois que vous voulez
et contrôleront onTouchevent() la méthode en lien changer la position de ces points
Eh bien, si je vous ai bien compris, vous souhaitez faire des « astéroïdes » pour votre application. Ceci n'est pas spécifique à Android, mais vous avez probablement besoin de définir un astéroïde en tant qu'entité dans votre application et lorsque vous avez besoin des astéroïdes, vous créez simplement un nombre aléatoire d'entre eux avec des positions aléatoires (vous pouvez vérifier s'il y a est déjà un astéroïde ou un autre objet dans cette position pour éviter les collisions). À part cela, il suffit de donner une vélocité à chaque astéroïde (dans un plan 2D, une vitesse X et Y) et de le mettre à jour en conséquence au fur et à mesure que l'application progresse.
Ceci est un exemple simple, mais voilà:
//To make things easier, let's assume you have an Entity class, from which every game object is inherited
public abstract class Entity {
// Fields used to know object position
private float x;
private float y;
// Fields used to calculate object motion
private float x_speed;
private float y_speed;
...
// You would probably have a generic method to draw every entity - details are not relevant to your question, but you should draw the object taking it's x and y coordinates into account here
public void draw() { ... }
// Generic function to update the object's position regarding its speed
public void updatePosition() {
this.x += this.x_speed;
this.y += this.y_speed;
}
...
}
//Let's say you have an Asteroid class, which represents each asteroid
public class Asteroid extends Entity {
// Just add a constructor to set it's initial position and speed
public Asteroid(float initial_x, float initial_y, float ini_x_speed, float ini_y_speed) {
this.x = initial_x;
this.y = initial_y;
this.x_speed = ini_x_speed;
this.y_speed = ini_y_speed;
}
}
A partir de là, vous suffit de créer un nombre aléatoire d'objets Asteroid, avec des positions aléatoires et sur la boucle principale de votre application appeler le updatePosition et dessiner des méthodes pour chaque entité.
EDIT: Oh, et n'oubliez pas de "effacer" ce que vous avez dessiné à chaque cycle de boucle, ainsi vous ne verrez pas les objets déjà dessinés dans leurs anciennes positions. :)
- 1. Comment dessiner des cercles dans des emplacements aléatoires dans MATLAB
- 2. dessiner des cercles aléatoires, stocker leurs coorindates dans un tableau
- 3. dessiner des cercles aléatoires, stocker leurs coorindates dans un tableau
- 4. dessiner des cercles aléatoires, d'abord stocker les points dans un tableau
- 5. Dessin de cercles aléatoires
- 6. Dessiner des flèches sur des cercles
- 7. Puis-je avoir des points aléatoires ainsi que des cercles sur un terrain en python?
- 8. Lire Chemin et dessiner des cercles
- 9. Formule pour dessiner la pyramide des cercles
- 10. Dessiner une forme avec des cercles
- 11. Cercles aléatoires détectés
- 12. essayant de dessiner des cercles basés sur la distance entre les points
- 13. Dessiner des lignes et des cercles dans WPF
- 14. android Comment dessiner des cercles, des rectangles sur toile?
- 15. cacao: comment dessiner des points?
- 16. placer des points aléatoires dans un JPanel
- 17. Dessin des cercles en intersection
- 18. toile android dessiner des cercles et obtenir les événements tactiles
- 19. Dessiner des cercles dans Android comme dans l'application Google Maps
- 20. dessiner des cercles sur chaque élément de travée
- 21. R ggplot2/ggmap cercles concentriques comme des points
- 22. Dessiner des cercles plus rapides avec la tortue Python
- 23. comment dessiner des cercles concentriques dans une image dans MATLAB?
- 24. dessiner des cercles en spirale dans la toile
- 25. sélénium rc tuer Firefox à des points aléatoires sans raison
- 26. Open GL dessiner des points statiques
- 27. Cercles de dessin à des points de flexion de coque convexe
- 28. Cercles autour des cercles avec du texte
- 29. Récupérer des points de cercle
- 30. JES - Créer une image avec des rectangles, des cercles et des demi-cercles
Merci de faire référence à mon blog :) – WarrenFaith
ouais oublié de mentionner la courtoisie à M. Warren Faith votre blog m'a vraiment aidé beaucoup et merci beaucoup de mon côté aussi – ingsaurabh