1. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

WM Boussole avec android

Discussion dans 'Windev Mobile' créé par Chrystof, Avr 21, 2020.

  1. Chrystof

    Chrystof New Member

    Inscrit:
    Avr 21, 2020
    Messages:
    13
    J'aime reçus:
    2
    Bonjour à tous,

    Je suis très heureux d'avoir trouvé ce forum, je l'ai positionné parmi mes favori, merci aux créateurs.
    Voilà, j'ai repris l'exemple WM de la boussole, et je voudrais pas forcément chercher le nord, mais un point GPS.

    Ci-dessous quand je calcule l'azimute de mon point GPS que je veux chercher.
    pos1 = point à chercher
    pos2 = ma position actuel

    ensuite je lance la procédure avec CapteurDétecteChangementOrientation
    [windev]
    MonAzimute est une chaîne

    pos1 est une géoPosition
    pos1..Latitude = SAI_AZlat
    pos1..Longitude = SAI_AZlon

    pos2 est une géoPosition
    pos2.Latitude = LIB_Latitude
    pos2.Longitude = LIB_Longitude

    MonAzimute = géoAzimut(pos1, pos2)

    //Boussole
    IMG_Fleche = giImageFleche
    SAI_AZ = MonAzimute

    CapteurDétecteChangementOrientation("DetectionOrientation", cptAzimut,cptFréquenceNormal , 2)[/windev]


    Ci-dessous, la procédure et c'est avec dRotation que je m'explose les neurones depuis plusieurs jours à savoir comment faire avec 360 - nAzimut.

    [windev]

    PROCÉDURE DetectionOrientation(nAzimut est un entier)

    iImageAvecRotation est une Image = giImageFleche

    AzimuteCalcultee est un entier = SAI_AZ

    LIB_calcule = "360-" + nAzimut + "="
    LIB_calculetotal = Val(AzimuteCalcultee)+Val(nAzimut)

    // On fait tourner l'aiguille
    dRotation(iImageAvecRotation, 360 - nAzimut)

    // On affiche l'aiguille
    IMG_Fleche = iImageAvecRotation


    [/windev]


    Y'auait-il une âme charitable pour m'expliquer et me corriger ?

    Un très grand merci à vous tous.
     
    Tags:
  2. popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,948
    J'aime reçus:
    1,569
    J'ai déjà fait pareil
    voici ma procédure
    Code (Text):
    PROCÉDURE DetectionOrientation(nAzimut est un entier)

    // On réinitialise le fond de la boussole
    IMG_FondBoussole = IMG_FondBoussole_0riginale

    // On fait tourner le fond vers le Nord
    dRotation(IMG_FondBoussole,360 - nAzimut)

    // On réinitialise l'aiguille de la boussole
    IMG_Fleche = IMG_FlecheOriginale

    posMur est une géoPosition
    posMur..Latitude = MALATITUDE POINT GPS RECHERCHE
    posMur..Longitude = MALONGITUDE  POINT GPS RECHERCHE


    posStains est une géoPosition
    posStains..Latitude = MALATITUDE POINT GPS ACTUEL
    posStains..Longitude =  MALONGITUDE  POINT GPS ACTUEL

    dRotation(IMG_Fleche, 360 -nAzimut)
    dRotation(IMG_Fleche, géoAzimut(posStains,posMur))
    Code (Text):
    // fin initialisation fenetre
    CapteurDétecteChangementOrientation("DetectionOrientation", cptAzimut,cptFréquenceNormal)

    //fermeture fenetre
    // On stoppe la détection d'orientation
    CapteurDétecteChangementOrientation("", cptAzimut )
     
     
  3. Chrystof

    Chrystof New Member

    Inscrit:
    Avr 21, 2020
    Messages:
    13
    J'aime reçus:
    2

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    J'ai déjà fait pareil
    voici ma procédure
    Code (Text):
    PROCÉDURE DetectionOrientation(nAzimut est un entier)

    // On réinitialise le fond de la boussole
    IMG_FondBoussole = IMG_FondBoussole_0riginale

    // On fait tourner le fond vers le Nord
    dRotation(IMG_FondBoussole,360 - nAzimut)

    // On réinitialise l'aiguille de la boussole
    IMG_Fleche = IMG_FlecheOriginale

    posMur est une géoPosition
    posMur..Latitude = MALATITUDE POINT GPS RECHERCHE
    posMur..Longitude = MALONGITUDE  POINT GPS RECHERCHE


    posStains est une géoPosition
    posStains..Latitude = MALATITUDE POINT GPS ACTUEL
    posStains..Longitude =  MALONGITUDE  POINT GPS ACTUEL

    dRotation(IMG_Fleche, 360 -nAzimut)
    dRotation(IMG_Fleche, géoAzimut(posStains,posMur))
    Code (Text):
    // fin initialisation fenetre
    CapteurDétecteChangementOrientation("DetectionOrientation", cptAzimut,cptFréquenceNormal)

    //fermeture fenetre
    // On stoppe la détection d'orientation
    CapteurDétecteChangementOrientation("", cptAzimut )
     
    [/QUOTE
    Cliquez pour agrandir...

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    J'ai déjà fait pareil
    voici ma procédure
    Code (Text):
    PROCÉDURE DetectionOrientation(nAzimut est un entier)

    // On réinitialise le fond de la boussole
    IMG_FondBoussole = IMG_FondBoussole_0riginale

    // On fait tourner le fond vers le Nord
    dRotation(IMG_FondBoussole,360 - nAzimut)

    // On réinitialise l'aiguille de la boussole
    IMG_Fleche = IMG_FlecheOriginale

    posMur est une géoPosition
    posMur..Latitude = MALATITUDE POINT GPS RECHERCHE
    posMur..Longitude = MALONGITUDE  POINT GPS RECHERCHE


    posStains est une géoPosition
    posStains..Latitude = MALATITUDE POINT GPS ACTUEL
    posStains..Longitude =  MALONGITUDE  POINT GPS ACTUEL

    dRotation(IMG_Fleche, 360 -nAzimut)
    dRotation(IMG_Fleche, géoAzimut(posStains,posMur))
    Code (Text):
    // fin initialisation fenetre
    CapteurDétecteChangementOrientation("DetectionOrientation", cptAzimut,cptFréquenceNormal)

    //fermeture fenetre
    // On stoppe la détection d'orientation
    CapteurDétecteChangementOrientation("", cptAzimut )
     
    Cliquez pour agrandir...
    Bonsoir popoy,

    un grand merci pour ton aide, et je suis heureux de savoir que je suis pas le seul à essayer cette procédure.

    J'ai testé, mais cela n'est pas trop concluant (tout reste figé), dans mon code bouton ci-dessous tu lance la détection et tu la stop direct ?
    Code (Text):

    //CapteurDétecteChangementOrientation("DetectionOrientation", cptAzimut,cptFréquenceNormal , 2)
    CapteurDétecteChangementOrientation("DetectionOrientation", cptAzimut,cptFréquenceNormal)

    // On stoppe la détection d'orientation
    CapteurDétecteChangementOrientation("", cptAzimut )
     

    la procédure adaptée à mon code :

    Code (Text):

    PROCÉDURE DetectionOrientation(nAzimut est un entier)

    // On réinitialise le fond de la boussole
    IMG_Fond = gIImagefond

    // On fait tourner le fond vers le Nord
    dRotation(IMG_Fond,360 - nAzimut)

    // On réinitialise l'aiguille de la boussole
    IMG_Fleche = giImageFleche

    posMur est une géoPosition
    posMur..Latitude = SAI_AZlat
    posMur..Longitude = SAI_AZlon

    posStains est une géoPosition
    posStains..Latitude = LIB_Longitude
    posStains..Longitude =  LIB_Latitude

    dRotation(IMG_Fleche, 360 -nAzimut)
    dRotation(IMG_Fleche, géoAzimut(posStains,posMur))

     
    Merci de ton aide,
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,948
    J'aime reçus:
    1,569
    Si tu lis mes commentaires,
    Tu vois que la détection est en fin d'initialisation de la fenêtre.
    Et j'arrête la détection à la fermeture de la fenêtre.
     
  • Chrystof

    Chrystof New Member

    Inscrit:
    Avr 21, 2020
    Messages:
    13
    J'aime reçus:
    2

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Si tu lis mes commentaires,
    Tu vois que la détection est en fin d'initialisation de la fenêtre.
    Et j'arrête la détection à la fermeture de la fenêtre.
    Cliquez pour agrandir...

    Ah, oui en effet, j'ai cru que tu mettais cela dans le meme bouton :)

    quand je le retire, la boussole et le fond tournent à toute vitesse, tellement vite que que tout devient flou :(, chez toi pas ?
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,948
    J'aime reçus:
    1,569
    tu peux rajouter
    Multitâche(-5)
    dans la procedure
    chez moi, ca fonctionne sur android et ios
    sur android sur plusieurs tel
    Les dernier en date sont un galaxy a8 2018 et iphone 8
    Il faut que téléphone soit le plus a plat possible.
     
  • Chrystof

    Chrystof New Member

    Inscrit:
    Avr 21, 2020
    Messages:
    13
    J'aime reçus:
    2
    Voilà j'ai réussi à faire fonctionner, merci beaucoup !

    En faite actuellement je met la flèche rouge au nord et la direction et notée via le coté blanc de la flèche, en gros il y a 180°.
     
  • Partager cette page

    Chargement...