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

Mathématiques Discussion :

Intersection entre segment et cercle


Sujet :

Mathématiques

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 6
    Par défaut Intersection entre segment et cercle
    Bonjour,
    J'ai un segment (je connais les coordnnées de ses 2 points limites) et un cercle (je connais son rayon et les coordonnées de son centre). Mathématiquement, je peux avoir le spoints d'intersection (s'ils existent) mais j'ai pas trouvé comment transformer la méthode mathématique en algorithme.
    Merci d'avance pour votre aide

  2. #2
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Janvier 2007
    Messages : 47
    Par défaut
    Salut,
    Mathématiquement c'est koi tes tests ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 6
    Par défaut
    l'equation d'un droie est sous la frome y=ax+b.
    on connait 2 points qui vérifient cette équation donc on peut trouver a et b. Juste faut faire attention aux intervalles puisque c'est un segment.
    L'equation d'un cercle est: (x-xc)²+(y-yc)²=R² avec R:Rayon et le centre (xc,yc).
    Pour trouver l'intersection, il suffit de substituer y dans la 2eme equation.
    Vous avez une idée comment faire ça algorithmiquement?
    Merci

  4. #4
    Membre émérite
    Avatar de Kangourou
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    579
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 579
    Par défaut
    salut,

    une solution est de raisonner geometriquement.
    - soient D la droite supportant le segment, et C le cercle
    - construire P, la perpendiculaire à D passant par le centre de C
    - calculer les coordonnees de I, le point d'intersection de P avec D. Ce point est situe entre les deux intersections de la droite avec le cercle, si elles existent.
    - calculer la distance du point I au centre du cercle. Si la distance est duperieure au rayon, pas d'intersection. Sinon, par Pythagore, on deduit la distance 'r' entre I et chaque point d'intersection.
    - les coordonnees des points d'intersection sont obtenues en ajoutant au point I un vecteur de norme 'r' et d'angle +/- l'angle de la droite

    Pour les calculs sur droite, je te conseille la representation parametrique:
    x(t) = x0 + t*dx
    y(t) = y0 + t*dy
    Ca te permet d'avoir la 'position' d'un point sur une droite. Si pour un segment, tu prends x0 et y0 egaux aux coordonnees du premier point, et dx et dy egaux a la difference des coordonnees des extremites, les points du segment correspondent a 0 <= t <= 1.

    A+

  5. #5
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Janvier 2007
    Messages : 47
    Par défaut
    Ben en fait tu te ramène à une équation du second degré en x donc t'as juste un test à faire sur le signe de delta.
    L'équation si je me suis pas trompé est:

    (1+a)x² + 2(a(b-yc)-xc)x + (xc² + (b-yc)²-R²) = 0

    tu poses
    A=(1+a)
    B=2(a(b-yc)-xc)
    C=(xc² + (b-yc)²-R²)

    tu calcules ton delta et tu conclue
    si négatif pas d'intersection
    si positif deux intersection
    si nul un point d'intersection

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

Discussions similaires

  1. Calcul des surfaces d'intersections entre les cercles
    Par Midou45 dans le forum Mathématiques
    Réponses: 6
    Dernier message: 14/03/2012, 10h21
  2. Intersection entre droite et un plan
    Par Dark-Water dans le forum Développement 2D, 3D et Jeux
    Réponses: 7
    Dernier message: 24/03/2009, 17h47
  3. [c#][ADO.net] INTERSECT entre 2 DataTables
    Par lordnecron dans le forum Accès aux données
    Réponses: 2
    Dernier message: 23/02/2007, 09h45
  4. Intersection entre 1 droite et un parallélépipède rectangle
    Par mathieu_t dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 25/05/2005, 18h29
  5. Intersection entre 2 triangles?? (3D)
    Par supergrey dans le forum DirectX
    Réponses: 1
    Dernier message: 25/08/2004, 09h22

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