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 :

collision entre deux mobiles


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2009
    Messages : 28
    Points : 11
    Points
    11
    Par défaut collision entre deux mobiles
    Bonjour,

    Je suis entrain de faire un projet qui simule l'intéraction de deux planètes et j'aimerais établir un test qui affiche un message lorsque les deux planètes se rencontrent. Pour cela je pensais prendre les coordonnées des deux planètes selon x.

    x étant la coordonnée des abscisses de la terre
    x0 celle du soleil
    ws la largeur du soleil

    J'ai placé dans mon code le test suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if((x==x0+ws) || (x==x0-ws))
        {alert("boum")}
    Mais ca ne marche pas... qu'est-ce qui cloche selon vous ???

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if((x==(x0+ws)) || (x==(x0-ws)))

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2009
    Messages : 28
    Points : 11
    Points
    11
    Par défaut
    non c'est pas ca le problème car j avais déja essayé et ca ne change rien...

  4. #4
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    je dirais que ton "x0" n'est pas interprété comme tu le veux...

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2009
    Messages : 28
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par javatwister Voir le message
    je dirais que ton "x0" n'est pas interprété comme tu le veux...
    c'est à dire ???

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    fais un alert de chacune des variables

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2009
    Messages : 28
    Points : 11
    Points
    11
    Par défaut
    Rien ne se passe... on dirait que mon programme détecte pas que les coordonnées sont identiques... je me trompe pas pourtant pour que le programme détecte la collision ca suffit bien de mettre les coordonnées selon x uniquement car elles sont forcément les mêmes...

    il y a quelque chose qui m échappe... est-ce que tu as une autre manière de tester la collision ???

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    tu as mis les alert ou ???
    il te retourne quoi ?

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2009
    Messages : 28
    Points : 11
    Points
    11
    Par défaut
    il me retourne rien du tout et le alert je l ai placé dans le if... tu veux ke je te copie tout mon code ???

  10. #10
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    lol ben places le avant le if !!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alert('x='+x+';  x0='+x0+';  ws='+ws)

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2009
    Messages : 28
    Points : 11
    Points
    11
    Par défaut
    lol mais je peux pas je vais péter un cable si je fais ca je vais avoir 45000 alert... mon programme fait varier de position chaque milliseconde donc le x il change tout le temps...

  12. #12
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    mets des inputs dans la page et colle leur en value tes variable
    un bouton pour stopper l'action
    et tu verras tes varaibles se modifier en live !

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2009
    Messages : 28
    Points : 11
    Points
    11
    Par défaut
    mais j ai déja tout ca... je dois pas comprendre ce que tu veux dire excuse moi

  14. #14
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    tu as vois les valeurs de x x0 et ws se modifier en live à l'ecran ???
    pas juste les objets bouger ???

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2009
    Messages : 28
    Points : 11
    Points
    11
    Par défaut
    oh excuse moi je viens de comprendre génial ta technique :-) je vais essayer ca et je te redis... merci

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2009
    Messages : 28
    Points : 11
    Points
    11
    Par défaut
    bon j'emploie une autre méthode qui fonctionne à peu près mais pas tout à fait et je comprends pas pourquoi et je commence à m énerver

    j utilise la position .top et .left des mes deux images je test d'abord si la position selon top est égale si c'est le cas je teste si mon image qui bouge se situe entre le point du coin en haut a gauche de celle ki bouge pas moins la taille de celle qui bouge et le point du coin en haut a gauche de celle qui bouge pas plus sa taille pour avoir des impactes selon tous les points. Voici le code :

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    function crache(){
     
        var abs_soleil=document.getElementById('soleil').style.left;
    abs_soleil=parseInt(abs_soleil.replace("px",""));
    var abs_terre=document.getElementById('terre').style.left;
    abs_terre=parseInt(abs_terre.replace("px",""));
     
    var ord_soleil=document.getElementById('soleil').style.top;
    ord_soleil=parseInt(ord_soleil.replace("px",""));
    var ord_terre=document.getElementById('terre').style.top;
    ord_terre=parseInt(ord_terre.replace("px",""));
     
    var intervalle1=abs_soleil-wt;
    var intervalle2=abs_soleil+ws;
     
    if(ord_soleil==ord_terre) 
    { 
     
        if((abs_terre>=intervalle1) && (abs_terre<=intervalle2))
        {
        alert("boum")
        } 
    }
     
     
     
    }

    Le problème c'est que ca marche pas il me détecte des impactes si la terre passe a gauche du coin du soleil mais pas si elle passe a droite...

  17. #17
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2009
    Messages : 28
    Points : 11
    Points
    11
    Par défaut
    Bon j'ai résolu mes problèmes enfin une partie... merci pour votre aide les gens même si j'ai fait autrement c'est sympa d'avoir passé du temps sur mon cas

  18. #18
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    tu devrais plutot te baser sur les offsetTop ou le computedstyle top ...

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

Discussions similaires

  1. Fonction pour tester la collision entre deux objets
    Par izissie dans le forum Newton
    Réponses: 1
    Dernier message: 22/09/2010, 20h56
  2. Réponses: 3
    Dernier message: 14/08/2010, 23h05
  3. collision entre deux segments
    Par [Hugo] dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 01/04/2009, 15h48
  4. Collision entre deux rectangle
    Par Ouaibou dans le forum Mathématiques
    Réponses: 4
    Dernier message: 15/04/2007, 15h16
  5. Detection de collision entres deux cylindres.
    Par Sandro Munda dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 07/11/2006, 14h36

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