Tracer un trait en java
Résolu/Fermé
sa0612
Messages postés
4
Date d'inscription
vendredi 1 janvier 2010
Statut
Membre
Dernière intervention
4 janvier 2010
-
1 janv. 2010 à 19:37
Utilisateur anonyme - 3 janv. 2010 à 18:19
Utilisateur anonyme - 3 janv. 2010 à 18:19
A voir également:
- Tracer un trait en java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Tracer un mail - Guide
- Java décompiler - Télécharger - Langages
4 réponses
sa0612
Messages postés
4
Date d'inscription
vendredi 1 janvier 2010
Statut
Membre
Dernière intervention
4 janvier 2010
3
3 janv. 2010 à 15:13
3 janv. 2010 à 15:13
Merci pour ta réponse Dan, mais je pense que j'ai mal exprimé mon problème.
En fait les cercles de 10 cm de diamètre représentent les sommets d'un arbre couvrant, et je voudrais tracer les arcs entre ces sommets. Or je veux que mon programme crée un nouvel arbre chaque fois qu'on le lance, c'est pour cela que je génère les coordonnées de mes sommets aléatoirement.
Si tu as une solution à ça, je suis preneuse aussi! =)
Mais merci quand même d'avoir répondu!
En fait les cercles de 10 cm de diamètre représentent les sommets d'un arbre couvrant, et je voudrais tracer les arcs entre ces sommets. Or je veux que mon programme crée un nouvel arbre chaque fois qu'on le lance, c'est pour cela que je génère les coordonnées de mes sommets aléatoirement.
Si tu as une solution à ça, je suis preneuse aussi! =)
Mais merci quand même d'avoir répondu!
sa0612
Messages postés
4
Date d'inscription
vendredi 1 janvier 2010
Statut
Membre
Dernière intervention
4 janvier 2010
3
3 janv. 2010 à 15:42
3 janv. 2010 à 15:42
J'ai résolu mon problème merci beaucoup!
Au lieu d'écrire
g.drawLine(new Point(posX1,posY1),new Point(posX2,posY2));
j'ai écris
g.drawLine(posX1, posY1, posX2, posY2);
et ça a marché tout seul! =)
Au lieu d'écrire
g.drawLine(new Point(posX1,posY1),new Point(posX2,posY2));
j'ai écris
g.drawLine(posX1, posY1, posX2, posY2);
et ça a marché tout seul! =)
Utilisateur anonyme
3 janv. 2010 à 18:19
3 janv. 2010 à 18:19
Re,
Dans mon exemple
la partie soulignée posX1 + wOval, posY1 + hOval/2); est le calcul de posX2, posY2, mais pour le tracé du diamètre, j'aurais dû le signaler...
Cordialement,
Dan
Dans mon exemple
g.drawLine(posX1, posY1 + hOval/2, posX1 + wOval, posY1 + hOval/2);
la partie soulignée posX1 + wOval, posY1 + hOval/2); est le calcul de posX2, posY2, mais pour le tracé du diamètre, j'aurais dû le signaler...
Cordialement,
Dan
Utilisateur anonyme
2 janv. 2010 à 12:00
2 janv. 2010 à 12:00
Salut,
Il est à noter qu'avec:
tu obtiendras un cercle rouge de diamètre 10 si les coordonnées x = y sont compatibles avec ton cadre.
Pour obtenir une ligne figurant le diamètre horizontal de cercle (si c'est bien ce que tu veux...)
Si y1 = y2 tu obtiens une ligne horizontale de x1 à x2
Exemple:
Plus les dimensions sont grandes, plus le cercle est bien dessiné et plus le diametre est bien inscrit dans le cercle
Cordialement,
Dan
Il est à noter qu'avec:
g.setColor(Color.red); g.fillOval(posX1, posY1, 10, 10);
tu obtiendras un cercle rouge de diamètre 10 si les coordonnées x = y sont compatibles avec ton cadre.
Pour obtenir une ligne figurant le diamètre horizontal de cercle (si c'est bien ce que tu veux...)
g.setColor(Color.black); // pas rouge sinon ne sera pas visible g.drawLine(x1, y1, x2, y2);
Si y1 = y2 tu obtiens une ligne horizontale de x1 à x2
Exemple:
int wOval = 10; int hOval = 10; int posX1 = 40; int posY1 = 54; g.setColor(Color.red); g.fillOval(posX1, posY1, wOval, hOval); // tracer le diametre horizontal g.setColor(Color.black); g.drawLine(posX1, posY1 + hOval/2, posX1 + wOval, posY1 + hOval/2); //g.drawLine(posX1 +1, posY1 + hOval/2, posX1 + wOval-1, posY1 + hOval/2); // en trichant
Plus les dimensions sont grandes, plus le cercle est bien dessiné et plus le diametre est bien inscrit dans le cercle
Cordialement,
Dan