-
Conseil sur interface
Bonjour,
voila, je dois réaliser une interface dans laquelle figurerait le cercle chromatique.
C'est un cercle composé de 12 couleurs http://fr.wikipedia.org/wiki/Image:Ryb-colorwheel.svg
Sur ce cercle, j'ai des "agents" représentés par des "points noires" qui se déplacent, de couleurs en couleurs.
Ceux-ci peuvent aussi disparaitre et réapparaitre.
N'étant pas expert en interface, pouvez vous m'aider et me dire comment je dois procéder pour arriver à faire bouger mes points au grès de mes envies et sur la bonne couleur souhaitée.
Merci à vous.
-
Comme tu as un nombre fixe de secteur tu peux tres bien t'y retrouver avec de simple divisions et un unique Arc2D pour la forme (auquel tu soustrairas une Ellipse2D pour former une Area de la bonne geometrie) que tu "rotationneras" aux bon angles pour le dessin. Cependant si tu ne veux pas passer ton temps a faire des calcul, pregenere donc plutot une List<Shape> contenant une forme pour chaque couleur (toujours avec un Arc2D auquel tu enleves une Ellipse2D pour former une Area), ce qui te permettra d'utiliser les methodes de l'interface Shape (contains(), cordonnees, etc...) histoire de bien placer tes points.
Pour tes points noirs justement, une simple List<Point2D> ou List<Point> suffira que tu representera par une Ellipse2D remplie en noir.
Pour l'animation un simple Timer Swing suffit, apres en general il faut calculer le temps d'un deplacement et les pas dont les pions avancent entre la coordonnee source et la coordonnee destination (en fonction du temps).
Sinon il existe un Animation Framework en preparation pour Swing (fouiller sur Google).