Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.

Forum Casio - Vos tutoriels et astuces


Index du Forum » Vos tutoriels et astuces » Tactile et lissage de tracé
Louloux Hors ligne Ancien administrateur Points: 7035 Défis: 61 Message

Tactile et lissage de tracé

Posté le 27/10/2012 10:21

La simulation du tactile est très à la vogue en ce moment, alors je mets à votre disposition une astuce qui facilitera vos algorithmes de tracé.

Le principe utilisé est que l'utilisateur fait défiler ses mains sur le clavier. Via les fonctions d'entrées (Getkey, IsKeyDown() selon les langages) vous calculez les coordonnées des points correspondant aux positions des touches pressées sur votre clavier.

Mais voilà, les relier bêtement fait un truc tout moche... Pas de souci à se faire, je vais vous expliquer !


Créez une List -un tableau pour le C/C++- de trois cases. Dans ces trois cases stockez les valeurs de vos trois derniers points.

Vous allez tracer un arc de cercle passant par ces trois points A, B et C. Pour cela rappelez vous que le centre du cercle circonscrit à ABC est le point d'intersection des médiatrices.
Là c'est un peu plus compliqué. Posons O(x;y) ce centre du cercle circonscrit.

AO² = (x-xa)² + (y-ya)²
BO² = (x-xb)² + (y-yb)²
CO² = (x-xc)² + (y-yc)²
AO² = BO² => -2x*xa + xa² -2y*ya + ya² = -2x*xb + xb² -2y*yb + yb²
AC² = BO² => -2x*xc + xc² -2y*yc + yc² = -2x*xb + xb² -2y*yb + yb²

Vous en déduisez xa et ya. Pour le rayon vous prenez la distance AO et vous tracez l'arc de cercle.

Pour le tracé d'un arc de cercle vous avez besoin d'un algorithme comme celui de Bresenham.

Et vous refaites ça tous les trois points.

Exemple :




EDIT : vous pouvez aussi effectuer un tracé à chaque nouveau point et faire la moyenne sur les morceaux, le tracé sera alors très fluide


Ninestars Hors ligne Membre Points: 2449 Défis: 24 Message

Citer : Posté le 27/10/2012 12:02 | #


Bien vue l'idée d'utiliser le cercle circonscrit au triangle !
Mais après vu la résolution de l'écran entre un arc de cercle et 3 point reliées en ligne droite il y a très peu de différence.
Tu pourrais utiliser le "tactile Casio" pour ton Angry Bird
Louloux Hors ligne Ancien administrateur Points: 7035 Défis: 61 Message

Citer : Posté le 27/10/2012 12:27 | #


Ninestars a écrit :
Tu pourrais utiliser le "tactile Casio" pour ton Angry Bird
Pas bête mais j'y vois tout de suite plusieurs problèmes :
-si tu veux aller encore plus à gauche tu es obligé de revenir en arrière et ça te foire ton truc
-perte de précision énorme qui pourrait rendre le truc injouable
Btl Hors ligne Ancien modérateur Points: 3879 Défis: 107 Message

Citer : Posté le 27/10/2012 13:21 | #


pas mal.
joli tuto
Un excellent tuto video qui vous explique comment transférer des fichiers de l'ordinateur vers la calculatrice et vice versa ma chaine youtube
mes jeux
mes jeux

Jouez à 6 sur une seule calto : Curve Fever
Un die and retry qui vous fera bieeeen rager Test Andropov
un très bon sokoban
le seul vrai jeu de foot en basic : FIFA 12
Ca c'est ce que j'appelle un jeu de reflexion jewel master
Qui vaincra l'intelligence artificielle de cet othello
Le célèbre pacman
Et tant d'autres BTL's games

Le jeu du mois de Novembre et award du jeu le plus dur de l'année 2013 MultiTask, testez-le
Louloux Hors ligne Ancien administrateur Points: 7035 Défis: 61 Message

Citer : Posté le 27/10/2012 14:36 | #


Merci. En espérant que ça puisse être utile à d'éventuels futurs jeux.

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2022 | Il y a 77 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd