IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

[ALGO] dessiner un triangle dans le bon sens


Sujet :

Algorithmes et structures de données

  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2003
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 13
    Points : 8
    Points
    8
    Par défaut [ALGO] dessiner un triangle dans le bon sens
    je doit déssiner un triangle qui suit une droite. Comment orienter mon triangle dans le bon sens ?
    Ia -t-il 1 algo ou dois-je vaire des tests de fou ?
    merci

  2. #2
    Membre régulier

    Profil pro
    Inscrit en
    Mars 2003
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 60
    Points : 94
    Points
    94
    Par défaut
    avec quoi dessines tu ta droite et ton triangle? Avec GD?

  3. #3
    Futur Membre du Club
    Inscrit en
    Avril 2003
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    nan je le fait en SVG.(que je genere en php)

  4. #4
    Expert éminent
    Avatar de cyberzoide
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 277
    Points : 6 612
    Points
    6 612
    Par défaut
    c'est un trinagle isocèle, équilatéral ou quelconque ?
    Supervision avec Check_MK et OMDdistro (Open Monitoring Distribution)

  5. #5
    Futur Membre du Club
    Inscrit en
    Avril 2003
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    c un triangle isocele.
    Sur un ensemble de droite (qui représente un parcours de véhicule) ces triangles indiquent le sens du déplacement.

  6. #6
    Expert éminent
    Avatar de cyberzoide
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 277
    Points : 6 612
    Points
    6 612
    Par défaut
    à partir de ta droite en y=ax+b, trouve l'eq de la perpendiculaire en un x ou un y particulier,
    droite que tu transforme en segment centré en le point l'intersection et de longueur la base de ton triangle isocèle
    et trouve les éq des 2 droites qui partent des extrémitées de ton segment et coupe la droite du départ de manière a avoir la bonne longeur pour ta hauteur
    Supervision avec Check_MK et OMDdistro (Open Monitoring Distribution)

  7. #7
    Futur Membre du Club
    Inscrit en
    Avril 2003
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    et trouve les éq des 2 droites qui partent des extrémitées de ton segment et coupe la droite du départ de manière a avoir la bonne longeur pour ta hauteur
    ben ui mais je le fait dans quel sens ?
    le probleme c'est pas de tracer un triangle c'est de la faire dans le bon sens.
    Néanmoins merci.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 31
    Points : 41
    Points
    41
    Par défaut Re: [ALGO] dessiner un triangle dans le bon sens
    Citation Envoyé par lefait
    je doit déssiner un triangle qui suit une droite. Comment orienter mon triangle dans le bon sens ?
    Ia -t-il 1 algo ou dois-je vaire des tests de fou ?
    merci
    Comme d'habitude il n'y a pas assez de données...

    Si ta droite n'est pas orienté tu ne peux pas orienter ton triangle, c'est bête comme choux... maintenant si il y a un moyen de déterminer un sens... il faudrait nous donner des pistes... des indices... ou un exemple peut-être.

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 52
    Points : 75
    Points
    75
    Par défaut
    Pendant que tu es dans les précisions, peux-tu expliciter ce que veut dire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    un triangle qui suit une droite
    - un triangle que tu déplaces en translation
    - un triangle dont un sommet est sur une droite
    - un triangle dont un côté est confondue avec la droite ?

  10. #10
    Futur Membre du Club
    Inscrit en
    Avril 2003
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    en effet c'est vrai ke je n'est pas assez décrit mon probleme.

    J'ai un ensemble de droite qui représentent un parcours de véhicule. Ces droites sont définis pas leur position (abs/ord).

    Le but est de placer sur chacunes de ces droites un triangle (représentant une fleche) qui indique le sens kutilise le vehicule pour passer sur cette droite (du point de départ au point d'arrivée).

    Pour determiner le sens, on possede le point de départ et le point d'arrivée sur la droite.(le véhicule va ds le sens pt départ -> pt d'arrivée)

    Le triangle doit donc etre placer sur cette droite la base étant perpendiculaire à la droite et le sommet étant sur cette droite.
    voila un shéma :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
                            |\
    depart          ________|  \_____________arrivee
                            |  /
                            |/
    la difficulté étant que la droite peut être placer n'importe comment (diagonale, verticale) et ds nimporte kel sens (de goche à droite ).

    voila, j'espere avoir apporter un peu plus de précision.
    merci.

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 52
    Points : 75
    Points
    75
    Par défaut
    Une fois, j'avais réfléchi pour tracer des vecteurs (segment avec flèche au bout): j'avais trouvé une bidouille. Je t'explique le principe en décomposant en plusieurs transformations (si je m'en souviens bien):

    - Je partais d'un triangle A(0; 0) B(-5; -3) C(-5; 3)
    Ainsi le triangle ABC de départ (je ne le trace pas) convient pour une droite horizontale dont la pointe serait en (0, 0). Il regarde vers la droite.

    - Je lui applique une rotation autour de O pour l'orienter correctement.

    - Je lui applique la translation qui améne A à l'extrémité de du segment (à sa place quoi).


    Dans la pratique, j'avais établi les formules pour n'effectuer qu'un seul mouvement.
    Le point un peu délicat a été la détermination de l'angle. J'avais utilisé des if pour discuter les cas (le sens, ...).

    Je crois que pour d'autres raisons, je n'utilisais pas directement les coordonnées usuel d'un écran mais je passais par un repère plus mathématique usuel.

    Je travaillais en Delphi et pour le tracé je suis passé par Canvas.PolyBezier (meilleur rendu ?)


    Je ne sais pas si tu peux adapter ceci ?

  12. #12
    Futur Membre du Club
    Inscrit en
    Avril 2003
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    en effet ca pourait convenir. Mais on se retrouve avec des tests. Bon ben je pense ke je vé le faire a l'arrache et ej verré ensuite si il existe 1 meilleure solution.

  13. #13
    Futur Membre du Club
    Inscrit en
    Novembre 2004
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Tu as les formules à l'adresse :
    http://lionel.romain.free.fr/gd_fleche.html

  14. #14
    Membre habitué
    Profil pro
    Enculeur de mouches
    Inscrit en
    Septembre 2003
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Enculeur de mouches

    Informations forums :
    Inscription : Septembre 2003
    Messages : 133
    Points : 161
    Points
    161
    Par défaut
    Heu... Un segment, en informatique, n'a t'il pas un PREMIER et un DEUXIEME point ?
    Je pense que ça suffit pour définir un sens.

    Pour ce qui est de la conversion de repère, c'est probablement parceque l'axe Y est inversé (croissant vers le bas sur un écran) La translation necéssaire ne pose en général aucun soucis.

    Quant à toi, fatima-zohra, pourquoi veux tu avoir des test ?
    A part celui qui sert à determiner si y est négatif, je ne vois pas : m'explique:
    A partir de (x,y), tu peut déduire (x', y') vecteur de la droite dans un repère mathématique centré (c'est à dire (x-x_screen_center, -(y-y_screen_center)).

    De là, cos(angle) = x'/y'... Tout bêtement.

    Il te reste a déterminer néanmoins (vu que cos(alpha)=cos(-alpha)) si tu doit ajouter PI au nombre trouvé.
    Seul test de l'algo, il est justifié même en maths.

    Alors je vois pas ce qui te dérange.
    [mode=troll]
    C'est ta touche 'i' ou 'f' qui est cassée
    [/mode]

    PS : le tag dans le titre sert a rien. Mais l'intention était bonne !!!
    Gaïa n'est pas une marchandise.

Discussions similaires

  1. Réponses: 9
    Dernier message: 15/11/2010, 11h38
  2. Initialisation de membre finaux dans le bon sens ?
    Par BakaOnigiri dans le forum Langage
    Réponses: 2
    Dernier message: 11/12/2009, 09h33
  3. parentNode sur des liens, n'a pas l'air de fonctionner dans le bon sens ;)
    Par nicko_73 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 31/10/2009, 10h47
  4. Besoin de confirmation pour partir dans le bon sens.
    Par ventrebleu dans le forum Projets
    Réponses: 3
    Dernier message: 21/11/2007, 18h45
  5. Réponses: 2
    Dernier message: 08/09/2007, 22h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo