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 :

Soustraction d'angle en degres


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 61
    Par défaut Soustraction d'angle en degres
    Salut à tous,

    je travaile sur des données d'une girouette, et je souhaite controler ses données .

    Mes données sont les angles du vent entre 0 et 360°.
    Mon soucis c'est que dans mon controle de donnée je suis amené à calculer

    donnée_actuelle - donnée_précédent

    Hors pour un exemple ou je me trouve à 10° actuellement alors que j'etais à 350 à l'instant d'avant je vais me retrouver à 20-350=-330 alors qu'en réalitée ma girouette n'a parcourue que 30°.

    Quelqu'un à une méthode simple pour calculer ca comme il faut?

    Merci

  2. #2
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Par défaut
    Salut!

    Il n'y a pas de solution "parfaite" à ton problème. Considérons l'exemple suivant:
    • donnée précédente: 90 degrés
    • donnée suivante: 270 degrés

    Le résultat est-il 180 degrés ou -180 degrés? Tu ne sais pas dans quelle sens ta girouette a tourné.

    Jean-Marc Blanc

  3. #3
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Par défaut
    Regarde du coté des statistiques angulaires.
    Par exemple, la moyenne se fait en calculant la moyenne des sinus/cosinus.
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 61
    Par défaut
    Citation Envoyé par FR119492 Voir le message
    Salut!

    Il n'y a pas de solution "parfaite" à ton problème. Considérons l'exemple suivant:
    • donnée précédente: 90 degrés
    • donnée suivante: 270 degrés

    Le résultat est-il 180 degrés ou -180 degrés? Tu ne sais pas dans quelle sens ta girouette a tourné.

    Jean-Marc Blanc
    Et si par choix je prendrai toujours le positif en priorité

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 61
    Par défaut
    Mais finalement je peux tout simplement faire

    val=abs(dir_actuelle - direc_prec)
    if val>180
    val=val-180
    end


    et j'obtiens bien ce que je veux non?

  6. #6
    Membre chevronné

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 426
    Par défaut
    Citation Envoyé par Sasuke1234 Voir le message
    Mais finalement je peux tout simplement faire

    val=abs(dir_actuelle - direc_prec)
    if val>180
    val=val-180
    end

    et j'obtiens bien ce que je veux non?
    Non, pas encore: en prenant la valeur absolue tu perds le sens de variation de l'angle:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    val = dir_actuelle - direc_prec
    if val>180
         val = val - 360
         return
    if val<-180
         val = val + 360
    end

  7. #7
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 61
    Par défaut
    cool merci, simple en faite, pourquoi vouloir tout ramener au math et statistique angulaire???

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Sasuke1234 Voir le message
    Quelqu'un à une méthode simple pour calculer ca comme il faut?
    Que ce soit 0-360 ou 0-180 (ou 0-PI ou 0-2PI) , il y a problème de discontinuité..

    Ces calculs sont simplement à expliciter, avec leurs conditions... Ou, comme le dit ToTo13, à éviter... On n'a pas le choix..

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

Discussions similaires

  1. Angle en Degrés
    Par star971 dans le forum Android
    Réponses: 0
    Dernier message: 06/05/2014, 16h42
  2. Affichage angles en degrés
    Par LOOOMM dans le forum Excel
    Réponses: 3
    Dernier message: 22/08/2011, 07h33
  3. Angle: Format de Cellule Degre
    Par Didou007 dans le forum Excel
    Réponses: 2
    Dernier message: 20/08/2011, 18h37
  4. Signe d'un angle orienté en degrés entre 2 vecteurs 3d
    Par Djakisback dans le forum Mathématiques
    Réponses: 10
    Dernier message: 29/12/2010, 10h30
  5. angle entre 2 segments
    Par tane dans le forum Mathématiques
    Réponses: 4
    Dernier message: 25/09/2002, 16h47

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