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 :

savoir si 1 point est a l'intérieur d'un cercle ...


Sujet :

Algorithmes et structures de données

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    avril 2002
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2002
    Messages : 2
    Points : 1
    Points
    1
    Par défaut savoir si 1 point est a l'intérieur d'un cercle ...
    La question est posé dans le sujet...
    J'aimerais savoir comment on peut savoir si le point S (X,Y) se trouve dans le cercle C de centre O (X0,Y0) dans on connaitrait le rayon R et ses coordonnées X0 et Y0.

    Merci tt le monde
    @++
    Il n'y a pas d'hommes cultivés, il n'y a que des hommes qui se cultivent.
    pslus un ordinateur possede de RAM, plus vite il peut generer un message d'erreur c'est pour ça que j'en ai 16

  2. #2
    AP
    AP est déconnecté
    Membre confirmé
    Avatar de AP
    Profil pro
    Inscrit en
    avril 2002
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : avril 2002
    Messages : 480
    Points : 537
    Points
    537
    Par défaut points et cercle
    salut
    et bien ce n'est pas compliqué suffit de savoir si la distance du point au centre du cercle est inférieure au rayon du cercle
    c'est du pythagore !
    soit si racine_carre((x_point - x_centre)² + (y_centre - y_point)) < rayon
    alors le point est dans le cercle
    voila en espérant avoir été clair!

  3. #3
    DrQ
    DrQ est déconnecté
    Membre expérimenté
    Avatar de DrQ
    Profil pro
    Inscrit en
    mars 2002
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 388
    Points : 1 490
    Points
    1 490
    Par défaut
    Sauf pour le temps de calcul où la deuxième solution est plus rapide
    1)http://www.developpez.com/cours/
    2)Recherche
    3)Posez votre question en suivant les règles
    _oOo-DrQ-oOo_

  4. #4
    Membre confirmé
    Avatar de giminik
    Profil pro
    Inscrit en
    mars 2002
    Messages
    303
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 303
    Points : 482
    Points
    482
    Par défaut
    je ne suis pas trop d'accord: dans la première solution évoquée on calcule la distance du point par rapport au centre que l'on compare avec le rayon.
    alors que dans la seconde on ne prend pas la racine carrée, mais on la compare avec le rayon que l'on éléve au carré, donc à mon avis les 2 calculs sont aussi rapides l'un que l'autre... non ???

  5. #5
    DrQ
    DrQ est déconnecté
    Membre expérimenté
    Avatar de DrQ
    Profil pro
    Inscrit en
    mars 2002
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 388
    Points : 1 490
    Points
    1 490
    Par défaut
    Le proc effectue beaucoup plus vite une multiplication qu'une division, et je ne parle pas de la racine carrée.
    Je ne connais pas l'algorithme pour calculer une racine carrée mais ca doit prendre plus de temps que faire une simple multilication.
    1)http://www.developpez.com/cours/
    2)Recherche
    3)Posez votre question en suivant les règles
    _oOo-DrQ-oOo_

  6. #6
    Membre régulier

    Profil pro
    Inscrit en
    mars 2002
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 17
    Points : 117
    Points
    117
    Par défaut
    La racine d'un entier peut generer un resultat du type reel avec une suite de chiffre apres la virgule tendant vers l'infini.
    Tandis qu'un carré d'un entier generera toujours un resultat entier.

    2^(1/2) = 1.414213562371 ...

    2^2 = 4

    De plus l'operation racine est calculé en passant par la relation e^((1/2)*ln(2)) qui est elle meme calculé par des developpements limités... qui revient a calculé une suite considerable de puissance!

    Alors que le carré c'est juste 2*2!

    Et donc le carré est plus rapide a calculé.
    Cordialement, Gysmo

    [size=9]> Respectez les régles du forum.
    > Consultez le guide du developpeur Delphi devant un problème.
    > Participez à la F.A.Q Delphi !

  7. #7
    Membre confirmé
    Avatar de giminik
    Profil pro
    Inscrit en
    mars 2002
    Messages
    303
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 303
    Points : 482
    Points
    482
    Par défaut
    ah ok je ne voyais pas les choses de cette façon... j'aurai au moins appris que le processeur utilise les développements limités...

  8. #8
    Membre régulier

    Profil pro
    Inscrit en
    mars 2002
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 17
    Points : 117
    Points
    117
    Par défaut
    Et oui il ne connais que les operations simple le proc (+,*) et donc on transforme un truc qui connait pas (racine) en truc qui connait par l'intermediare de relations mathematiques debouchant sur un DL (un DL etant plein de + et de * !!!).

    De tout facon il fait ca tres vite mais c'est theoriquement plus rapide de faire 2*2 que ...

    Bref voila quoi!

    Babaille.
    Cordialement, Gysmo

    [size=9]> Respectez les régles du forum.
    > Consultez le guide du developpeur Delphi devant un problème.
    > Participez à la F.A.Q Delphi !

  9. #9
    Membre confirmé
    Avatar de giminik
    Profil pro
    Inscrit en
    mars 2002
    Messages
    303
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 303
    Points : 482
    Points
    482
    Par défaut
    à noter quand même que les développements limités ne sont pas des opérations de base puisqu'ils font intervenir la dérivée, la dérivée seconde, la n-ième dérivée... et fait en plus intervenir les factorielles:
    bref ce n'est pas si simple:

    f(0)+f'(0)/1!.x+f''(0)/2!.x²+...

  10. #10
    Membre régulier

    Profil pro
    Inscrit en
    mars 2002
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 17
    Points : 117
    Points
    117
    Par défaut
    Oui bien sur, mais dans le cas d'une fonction simple connu le problème ne ce pose pas, elle fait ainsi partis de l'algorythme.

    Par ex : e^(t) = 1 + t/1! + t^2/2! + ... + t^n/n! + t^n * epsilon(t)

    De plus n! = 1*2*3*4 ... *n ce qui n'est pas compliqué.

    On se sert alors de n (l'ordre) pour obtenir la précision voulu.

    Comment procédrais tu autrement pour calculer une racine?

    Enfin débatre la dessus n'est pas simple tant le sujet est complexe!

    Babaille.
    Cordialement, Gysmo

    [size=9]> Respectez les régles du forum.
    > Consultez le guide du developpeur Delphi devant un problème.
    > Participez à la F.A.Q Delphi !

  11. #11
    Membre confirmé
    Avatar de giminik
    Profil pro
    Inscrit en
    mars 2002
    Messages
    303
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 303
    Points : 482
    Points
    482
    Par défaut
    oui je suis bien d'accord avec toi, le débat pourrait aller loin tant les mathématiques peuvent être si complexes...

  12. #12
    Membre régulier

    Profil pro
    Inscrit en
    mars 2002
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 17
    Points : 117
    Points
    117
    Par défaut
    Tout as fait!

    Il n'y as qu'à voir les nombres complexes...
    Arg quel horreur!

    Babaille.
    Cordialement, Gysmo

    [size=9]> Respectez les régles du forum.
    > Consultez le guide du developpeur Delphi devant un problème.
    > Participez à la F.A.Q Delphi !

  13. #13
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    avril 2002
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2002
    Messages : 2
    Points : 1
    Points
    1
    Par défaut vous batez pas...
    c'est bon vous batez pas...
    La rapidité du calcule je m'en fous un peu pour ce que je vais faire ...

    Franchement merci, j'avais franchement pas penser a ça...

    merci a tous
    Il n'y a pas d'hommes cultivés, il n'y a que des hommes qui se cultivent.
    pslus un ordinateur possede de RAM, plus vite il peut generer un message d'erreur c'est pour ça que j'en ai 16

  14. #14
    Membre régulier

    Profil pro
    Inscrit en
    mars 2002
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 115
    Points : 102
    Points
    102
    Par défaut
    1/ Skarla, t'as pas honte de poser une question pareille ?
    2/ Les DL pour la racine, je ne suis pas convaincu, il existe en effet des séries qui convergent plus rapidement vers les fonctions classiques qu'une série entière (et pas un DL). Il faudrait regarder du côté des développements généralisés je pense

  15. #15
    Membre régulier

    Profil pro
    Inscrit en
    mars 2002
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2002
    Messages : 17
    Points : 117
    Points
    117
    Par défaut
    Moi j'ai appris ca en math.
    Maintenant je pense qu'il y a d'autre facon d'avoir un algo pour calculer la racine ou autre.
    Mais je ne les connais pas.


    Babaille.
    Cordialement, Gysmo

    [size=9]> Respectez les régles du forum.
    > Consultez le guide du developpeur Delphi devant un problème.
    > Participez à la F.A.Q Delphi !

  16. #16
    AP
    AP est déconnecté
    Membre confirmé
    Avatar de AP
    Profil pro
    Inscrit en
    avril 2002
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : avril 2002
    Messages : 480
    Points : 537
    Points
    537
    Par défaut
    bon je pense pas que la machine fasse un Dl pour chaque racine
    sinon ca serait encore plus long . En fait je crois qu'elle se base sur certaines propriétés de la fonction racine .

    Remarque Si le Dl est bien factorisée et optimisé, et que le degré du développement n'est pas trop important , en assembleur ca va très vite

    mais bon je suis d'accord que si j'avais fait une comparaison avec les carrés, il y aurait seulement 2 messages dans le topic...

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, 14h20
  2. Comment savoir si un point est a l intérieur d un cercle (Urgent SVP)
    Par the rost dans le forum SIG : Système d'information Géographique
    Réponses: 2
    Dernier message: 13/05/2013, 00h29
  3. Réponses: 4
    Dernier message: 05/04/2013, 16h08
  4. Calcul vectoriel (savoir si un point est à l'intérieur d'un triangle)
    Par Invité dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 29/10/2008, 23h46
  5. 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, 20h02

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