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

JavaScript Discussion :

Calcul vectoriel (savoir si un point est à l'intérieur d'un triangle)


Sujet :

JavaScript

  1. #1
    Invité
    Invité(e)
    Par défaut Calcul vectoriel (savoir si un point est à l'intérieur d'un triangle)
    Bonjour,

    Je cherche à réaliser une fonction qui indique si un point est à l'intérieur d'un triangle.
    Suite à mes recherche, j'ai trouvé cela.
    Cependant, comment effectuer un produit vectoriel en javascript ?

    Merci de vos aides.

    jlmag

    PS: pas bon en trigo le gars!

  2. #2
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    Citation Envoyé par jlmag Voir le message
    Cependant, comment effectuer un produit vectoriel en javascript ?
    bonjour
    de la même façon qu'à la main. utiliser la définition
    wikipedia

  3. #3
    Invité
    Invité(e)
    Par défaut
    Je me suis inspiré du dernier message de

    Ce qui donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
      // isLeft(): teste si un point est à gauche|sur|à droite d'une ligne infinie.
      //    Input:  3 points a, b et c
      //    Return: >0 si c est à gauche de la ligne passant par a et b
      //            =0 si c est sur la ligne
      //            <0 si c est à droite
      function isLeft(a, b, P) {
        return ((b[0]-a[0])*(P[1]-a[1]) - (P[0]-a[0])*(b[1]-a[1]) );
      }
     
      // inTriangle(): Teste si un point est inclu au triangle
      //    Input:  4 points a, b, c et P
      //    Return: true si P est inclu au triangle a,b,c
      //            false si P est strictement exclu au triangle a,b,c
      function inTriangle(a, b, c, P) {
        return ((isLeft(a, b, P) >= 0) && (isLeft(b, c, P) >= 0) && (isLeft(c, a, P) >= 0)) ? true : false;
      }
    Voilà

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [3D] Comment savoir si un point est dans mon champ de vision
    Par patmaba dans le forum Développement 2D, 3D et Jeux
    Réponses: 10
    Dernier message: 04/11/2018, 13h20
  2. Réponses: 4
    Dernier message: 05/04/2013, 15h08
  3. Savoir si un point est dans un polygone.
    Par poly128 dans le forum Langage
    Réponses: 8
    Dernier message: 18/11/2008, 09h34
  4. Savoir si un point est inclus dans un polygone quelconque
    Par SuperBIBI dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 02/08/2005, 19h02
  5. savoir si 1 point est a l'intérieur d'un cercle ...
    Par skarladevobsy dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 23/05/2002, 18h14

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