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 :

Fonction conversion Données décimales en Degré,Minutes,Secondes


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Femme Profil pro
    Autre
    Inscrit en
    Août 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 50
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Août 2014
    Messages : 16
    Points : 18
    Points
    18
    Par défaut Fonction conversion Données décimales en Degré,Minutes,Secondes
    Bonjour à tous,

    J'ai posté un sujet dans un autre forum du site dont une partie du sujet intéresse ce forum çi.

    Voilà je suis une Développeuse débutante (1 an de cours) sans grandes connaissances sur beaucoup de sujet. Mais comme il est jamais trop tard pour apprendre, je me suis lancé dans ce métier dans le cadre d'une reconversion.
    Actuellement je me focalise sur un projet dans lequel j'utilise Knockout entre autre, hors je dois être amené avec cet outil (en l'occurence grâce au ko.computed) à faire afficher sur l'interface web non pas les données en valeur décimale mais en données Degré,Minutes,Secondes.
    Malheureusement c'est la que mon coté blonde fait irruption , je n'arrive pas à écrire la fonction JavaScript qui me permettrait de convertir ces données. Soit je ne suis pas douée en mathématiques, soit je manque de logique ou de connaissance.

    J'ai bien fait le tour de la toile et je tombe quasiment toujours sur des convertisseurs prêt à l'emploi.

    Si quelqu'un pouvait m'aider dans ma démarche pour mettre le pied à l'étrier,j'en serais ravie.

    Merci par avance.

    Flo, Neogeekette un jour, Neogeekette toujours

  2. #2
    Membre à l'essai
    Femme Profil pro
    Autre
    Inscrit en
    Août 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 50
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Août 2014
    Messages : 16
    Points : 18
    Points
    18
    Par défaut
    Bonjour à tous,

    Je suis toujours au point mort avec ma fonction, je vais finir par croire que je suis pas faites pour ça .

    Si quelqu'un saurait m'aider ce serait avec grand plaisir.

    Bon week-end à tous.

    Flo, Neogeekette un jour, Neogeekette toujours.

  3. #3
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Le principe
    Soit la valeur 15,563754

    On prend la partie entière pour les dégrées
    15°
    On multiplie le reste par 60
    0,563754 x 60= 33,82524
    On prends la partie entière pour les minutes
    33'
    On prend le reste e
    On multiplie le reste par 60
    0,82524 x 60=49.5144
    C'est la valeur des secondes
    49.5144"

    Soit donc 15°33'49.5144" ou avec approximation
    15°33'49"

    A+JYT

  4. #4
    Membre à l'essai
    Femme Profil pro
    Autre
    Inscrit en
    Août 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 50
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Août 2014
    Messages : 16
    Points : 18
    Points
    18
    Par défaut
    Bonsoir Sekaijin,

    Avant toute chose, merci pour ta réponse et pour ton aide à mon problème.

    Le principe de base je l'avais plus ou moins compris, là ou j'ai du mal c'est de le retranscrire en fonction Javascript. Je ne dois pas être très douée , je sais que ça peut paraitre très bête mais je n'arrive pas à l'écrire cette fonction.

    Je désespère pas, quoi que ....

    Merci et bonne soirée, je vais me remettre à la tâche.

  5. #5
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function d2dms(x) {
      var d = Math.floor(x);
      var y = (x - d) * 60; // reste X 60
      var m = Math.floor(Y);
      var y = (y - m) * 60; // reste X 60
      s = Math.floor(y);
      return d + '°' + m + "'" + s +'"'; 
    }
    d2dms(15.876868); // 15°52'36"
    version avec les seconde non anrondies
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function d2dms(x) {
      var d = Math.floor(x);
      var x = (x - d) * 60; // reste X 60
      var m = Math.floor(y);
      s = (y - m) * 60; // reste X 60
      return d + '°' + m + "'" + s +'"'; 
    }
    d2dms(15.876868); // 15°52'36.72479999999993"
    A+JYT

  6. #6
    Membre à l'essai
    Femme Profil pro
    Autre
    Inscrit en
    Août 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 50
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Août 2014
    Messages : 16
    Points : 18
    Points
    18
    Par défaut
    Bonjour Seikajin,

    Merci pour ce coup de pouce me voilà heureuse pour la journée, merci mille fois.

    En lisant ton code je viens de me rendre compte que je réfléchissais beaucoup trop loin et je cherchais quelque chose de beaucoup compliqué que ça. Soit j'avais mal compris le principe de base, sois je me suis fais une montagne de cette fonction , mon coté kinder ça .

    Entre les deux solutions je préfère celle de l'arrondi qui me semble plus approprié à ce que je veux en faire, me reste plus qu'à intégrer tout ça avec Knockout. Là encore ça fait être rigolo .

    La différence entre les deux solutions se fait juste avec la méthode Math.floor qui renvoit l'entier inférieur ou égal au paramètre y pour s dans la version arrondi? Je pose la question pour être sûr de bien comprendre le code. Car copier sans comprendre n'a aucune utilité à mes yeux et n'est pas formateur du tout.

    En tout cas encore merci à toi et bon samedi.

    Flo, une Neogeekette heureuse

  7. #7
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Bonjour,

    Oui dans un cas on prends ma la partie entier des secondes on perd donc quelques fractions de secondes.
    Dans l'autre cas on prends les secondes avec sa partie fractionnaires. c'est donc plus précis.

    A+JYT

  8. #8
    Membre à l'essai
    Femme Profil pro
    Autre
    Inscrit en
    Août 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 50
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Août 2014
    Messages : 16
    Points : 18
    Points
    18
    Par défaut
    Re Bonjour Seikajin,

    Merci pour ton aide, merci pour ta pédagogie, je vais me coucher moins idiote grâce à toi.

    J'ai bien compris la structure de la fonction et c'est super.

    Je mets le sujet en résolu.


    Merci pour tout

    Flo

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 05/07/2011, 16h28
  2. Réponses: 2
    Dernier message: 03/07/2008, 11h40
  3. Réponses: 6
    Dernier message: 08/08/2007, 18h41
  4. [Fonction] Conversion des minutes
    Par delcroixf dans le forum VBA Access
    Réponses: 3
    Dernier message: 24/04/2007, 14h03
  5. Fonction { Conversion Degre / Radian }
    Par MirC++ dans le forum C++
    Réponses: 4
    Dernier message: 01/04/2006, 15h58

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