Polygones convexes

cs_beatriz42 Messages postés 2 Date d'inscription mercredi 1 décembre 2010 Statut Membre Dernière intervention 7 décembre 2010 - 7 déc. 2010 à 10:45
 Utilisateur anonyme - 8 déc. 2010 à 14:05
Bonjour à tous
Est ce quelqu'un pourrait m'aider. Je n'arrive pas à trouver une fonction qui est-convexe qui me permet de créer un polygone convexe à chaque fois que je veux en créer un.
voici mon code mais qui ne gère pas tous les cas.

int i=0; // J'initialise
int sens = 0;
if(tab[0].signeAngle(tab[1], tab[2]) == 1){
// En faisant ça je regarde le sens dans lequel le polynome tourne SAM SIAM ou ALIGNES
sens = SAM;
}else if(tab[0].signeAngle(tab[1], tab[2]) == -1){
sens = SIAM ;
}
for(i=0 ; i< tab.length-2 ; i++){
// Quand j'ai le sens de rotation je lance une boucle afin d'explorer mon tableau de points
// Maintenant je test si je change de sens
if(tab[i].signeAngle(tab[i+1], tab[i+2]) != sens && tab[i].signeAngle(tab[i+1], tab[i+2]) != 0){
// Si le programme rentre dans ce " IF " c'est que j'ai changé de sens
return(false);
}
}
// Ici je fait une dernière rotation pour tester le dernier angle qui est relié à tab[0]
if(tab[i].signeAngle(tab[i+1], tab[0]) != sens && tab[i].signeAngle(tab[i+1], tab[0]) != 0){
return(false);
}

/* Une fois que j'ai tout testé alors je renvoie TRUE.
return(true);
}

merci
A voir également:

2 réponses

cs_beatriz42 Messages postés 2 Date d'inscription mercredi 1 décembre 2010 Statut Membre Dernière intervention 7 décembre 2010
7 déc. 2010 à 10:48
ma fonction est
public boolean estConvexe()

merci
0
Utilisateur anonyme
8 déc. 2010 à 14:05
Bonjour

Cherche "convex hull" sur Google Codesearch, tu devrais trouver ton bonheur. Passe par des angles polaires. Je crois que j'ai un code qui fait ça chez moi, je vais regarder ça cette nuit. Bon courage.















TUER : http://tuer.sourceforge.net/tuer.jnlp

yeah! vive java
0
Rejoignez-nous