“Début de semaine sympathique, malgré le réveil un peu matinal, le plaisir de prendre la route pour le boulot est réel, fait vraiment plaisir :).
Nous avons pas mal discuté des différents composants que nous allons faire, un début de classement mais surtout pas mal de test pour chacun.
Pour ma part, j'ai commencé à fouiller du cote d'un petit composant d'OCR, comprendre par la capable de reconnaitre un mouvement et de "deviner" la lettre écrite avec le doigt a l'écran.
J'ai rapidement découvert la facilitée d'utilisation de l'API des Tablet PC Windows fournit dans le SDK du même nom mais sont venu plusieurs problèmes:
Donc...Vieux reflexes, "cela ne convient pas?, je recode!".
Je me suis donc attaqué a une petite classe prenant en paramètre une liste de point et un facteur de précision permettant d'obtenir une liste de vecteur de direction.
Apres deux bonnes heures de petit schéma et code, j'obtiens une première version sympathique permettant sans trop de soucis de reconnaitre des "patterns" simple.
Posez votre doigt sur l'écran, allez vers la droite puis remontez et ensuite encore un peu à droite puis relevez-le.
Mon petit code va produire une liste ressemblant a: droite, haut, droite. Cela reste au final assez basique mais suffisant pour faire pas mal d'action, surtout sur un système tactile comme Surface ;).
Voici deux petits schémas rapidement fait pour mieux voir le système :
Sur le premier on peut voir un chemin dit « parfait », assez facile à deviner donc.
Le second démontre l’intérêt de la valeur de précision, elle permet de ne pas prendre en compte les petites fluctuations dans le mouvement du doigt, on peut voir cela comme un système pour éviter que le résultat soit perturbé par du bruit/parasite.
Et pour conclure sur XNA comme souvent, Prism Engine tourne maintenant sur Surface, bon il reste un bug graphique empêchant de vraiment profiter du paysage mais des que j’ai un moment je règle le souci.
L’intérêt de ma petite classe que je vous ai explique ci-dessus est qu’elle est générique et donc je vais facilement pouvoir m’en servir pour XNA également et essayer de m’en aider pour trouver un système simple pour naviguer dans un environnement 3D sur une table tactile, ouvert aux propositions ;).”
Niels Freier