PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → Détection de la position d'un doigt sur une image
Détection de la position d'un doigt sur une image
Débuté par Pascal JEANPIERRE, 13 juin 2013 10:08 - 8 réponses
Posté le 13 juin 2013 - 10:08
Bonjour à tous,

Est il possible de détecter la position d'un doigt (d'un clic de doigt plus precisément) sur une image ?
Je cherche en fait à faite une sorte d'image mappable comme en html.
Je précise que je développe pour Androïd.

Merci de votre aide.
Membre enregistré
27 messages
Posté le 13 juin 2013 - 18:29
hello,

dans la LST 90 ils y a un utilitaire de fourni MAPAREA pour windev/windev mobile, je l'ai pas essayé mais ca a l'air de correspondre a ca

Cordialement
Posté le 14 juin 2013 - 11:26
Bonjour,

Merci pour reponse rapide. Je ne suis pas abonné à la LST. => Je n'ai pas vu cet utilitaire.
Vu le nom de cet utilitaire, ça à effectivement l'air de servir à ça mais je cherchais plutôt une fonctionnalité native de windev mobile 18.
N'y a t'il pas d'autres moyens que cet outil qui ne m'est pas accessible ?

Si vous avez des idées... Merci.
Membre enregistré
27 messages
Posté le 14 juin 2013 - 12:22
j'avoue que je ne suis pas un developpeur expérimenté ( je serai plutot un bricoleur :) )

dans l'aide il y a

la fonction GestePosX gestePosY
http://doc.pcsoft.fr/fr-FR/?1000019741&name=gesteposx_fonction


Retourne la position horizontale du pointeur (doigt ou stylet). La valeur renvoyée varie selon le mode d'utilisation de la fonction :
Utilisée dans un traitement lié au mouvement du pointeur (clic, déplacement, enfoncé, relâché, ...), retourne la position horizontale (X) du pointeur (doigt ou stylet) par rapport au champ ou à la fenêtre considérée.
Utilisée dans un autre traitement, retourne la dernière position connue du pointeur dans le champ.
Si l'appareil supporte les mouvements multi-points (multi-touch), permet de récupérer la position d'un point de contact en particulier.
Quelques exemples d'utilisation : Il est ainsi possible par exemple de connaître :
la position du pointeur (doigt ou stylet) lors d'un clic dans une image (fonction utilisée dans le code de clic de l'image).
la position du pointeur (doigt ou stylet) lors de son déplacement sur la surface d'un champ (fonction utilisée dans le traitement optionnel "Survol" d'un champ).
la position du nième pointeur lors d'un mouvement multi-points (multi-touch) sur la surface d'un champ (uniquement si l'appareil le supporte).

ca pourrait etre une façon de faire de l'imagemap, cela veux dire qu'il faut identifier les zones cible et faire une comparaison avec le touch

Jeff
Posté le 14 juin 2013 - 22:28
il y a aussi les gesture
un petit exemple dans l'aide
Posté le 17 juin 2013 - 10:15
Merci bien.

Ca m'a l'air effectivement de correspondre. Je vais faire quelques essais.

Cordialement.
Posté le 17 juin 2013 - 10:19
Merci bien.

Cette solution est aussi intéréssante. Comme j'utilise sur cette image le scroll, je ne sait pas si il n'y aura pas conflic.

=> Je vais faire des essais.

Merci, Cordialement.
Posté le 17 juin 2013 - 14:42
JEFF-Micro a écrit :
j'avoue que je ne suis pas un developpeur expérimenté ( je serai plutot un bricoleur :) )

dans l'aide il y a

la fonction GestePosX gestePosY
http://doc.pcsoft.fr/fr-FR/?1000019741&name=gesteposx_fonction


Retourne la position horizontale du pointeur (doigt ou stylet). La valeur renvoyée varie selon le mode d'utilisation de la fonction :
Utilisée dans un traitement lié au mouvement du pointeur (clic, déplacement, enfoncé, relâché, ...), retourne la position horizontale (X) du pointeur (doigt ou stylet) par rapport au champ ou à la fenêtre considérée.
Utilisée dans un autre traitement, retourne la dernière position connue du pointeur dans le champ.
Si l'appareil supporte les mouvements multi-points (multi-touch), permet de récupérer la position d'un point de contact en particulier.
Quelques exemples d'utilisation : Il est ainsi possible par exemple de connaître :
la position du pointeur (doigt ou stylet) lors d'un clic dans une image (fonction utilisée dans le code de clic de l'image).
la position du pointeur (doigt ou stylet) lors de son déplacement sur la surface d'un champ (fonction utilisée dans le traitement optionnel "Survol" d'un champ).
la position du nième pointeur lors d'un mouvement multi-points (multi-touch) sur la surface d'un champ (uniquement si l'appareil le supporte).

ca pourrait etre une façon de faire de l'imagemap, cela veux dire qu'il faut identifier les zones cible et faire une comparaison avec le touch

Jeff


Bon, après quelques essais rapides, cela fonctionne bien. Merci pour le tuyau...
Par contre les zones sont assez complexes à délimiter avec des "si" et des "cas ou".
N'y à t'il pas moyen de délimiter simplement des zone comme des "map area" ?
Posté le 17 juin 2013 - 18:44
Bonjour,

J'ai un petit soucis quand je le passe sur ma tablette d'essai.
Cela fonctionne parfaitement (l'utilisation de GestePosX et GestPosY) sur le mode test/débogeur mais les zones de clic ne correspondent pas sur ma tablette.
Je pense que cela vient de l'adaptation de la définition. La plateforme choisie est une 320*480 (le mini des utilisateurs potentiels) ce qui n'est pas le cas de ma tablette.
Résultat, je pense que tout est décalé.
=> J'ai essayé de faire un ratio avec les dimentions utiles SysXRes() et SysYRes() mais je n'arrive pas à retomber sur mes pattes.

Quelqu'un a t'il déja eu ce pb ?

Merci bien.