LOG 740: Systèmes interactifs multimodaux
|
Adresse de cette page:
http://profs.logti.etsmtl.ca/mjm/log740-2008e/
Plan de cours: LOG740_2008e_planDeCours.pdf
Professeur: Michael McGuffin ( http://profs.logti.etsmtl.ca/mjm/, )
Cours: normalement mardi soir, 18h-21h30, au B-3402.
Labos: normalement jeudi soir, 18h-20h, au A-3326 (salle principale). Plus tard dans la session, ils seront parfois au A-3446 (labo multimédia).
Chargés de labo:
Ali Awde ( )
Martin Poirier ( )
Adresse courriel pour soumission de travaux électroniques seulement:
Références suggérées:
Dave Shreiner, Mason Woo, Jackie Neider, Tom Davis, OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 2.1, 6e édition, 2007 (?), Addison-Wesley. http://www.glprogramming.com/red/
Laurence Nigay et Joëlle Coutaz (1993). A design space for multimodal systems: concurrent processing and data fusion. Proceedings of CHI '93. Pages 172-178. ACM Press. http://doi.acm.org/10.1145/169059.169143
Sharon Oviatt (1999). Ten myths of multimodal interaction. Communications of the ACM 42(11), Nov. 1999, pages 74-81, ACM Press. http://doi.acm.org/10.1145/319382.319398
Diapos: log740-2008h-cours01.pptLiens vers les sites web et vidéos vus en classe:
Les jouets à notre disposition dans le nouveau laboratoire:
- http://research.microsoft.com/Users/kenh/thesis/system.htm
- http://www.billbuxton.com/t3.swf
- http://www.perceptivepixel.com/
- http://www.cs.cmu.edu/~johnny/projects/wii/
- écran à projection stéréo
- console Wii de Nintendo avec Wiimote
- Patriot de Polhemus
- SpaceNavigator de 3dconnexion
- une autre possibilité: créer une interface bimanuelle en utilisant deux souris USB et JInput
Diapos: log740-2008h-cours02.pptles applets java montrés en classe
ancienne question d'examen: comment corriger la partie du code encadrée, pour empêcher à l'utilisateur de défiler le document en même temps que le menu est affiché ?
Le travail à faire aujourd'hui ne sera pas corrigé, mais vous avez intérêt à le faire pour ne pas être perdu ou mal pris plus tard dans la session. En particulier, le travail à faire aujourd'hui vous prépare pour le travail 1 (T1), dont l'énoncé sera emis la semaine prochaine.Première partie du labo: compiler et exécuter le programme SimplePaint, qui utilise Swing pour ses widgets. Regardez le code source de SimplePaint, et essayer de comprendre comment ça fonctionne. Vous pouvez, au choix, effectuez des modifications au code source pour mieux comprendre comment il fonctionne.
Deuxième partie du labo: compiler et exécuter le programme HelloWorldJOGL, qui utilise OpenGL (via JOGL) pour dessiner. Vous n'avez pas besoin de comprendre ou modifier le code source de HelloWorldJOGL; cet exercise est simplement pour assurer que vous savez compiler et exécuter un programme Java qui utilise la librarie JOGL (ce qui sera essentielle pour T1). Une fois compilé et exécuté, HelloWorldJOGL devrait afficher une fenêtre contenant un triangle coloré. La librarie JOGL devrait déjà être installée sur votre machine de laboratoire. Si vous avez des problèmes à compiler ou à exécuter HelloWorldJOGL, regarder la section "Local installation for development" à la page https://jogl.dev.java.net/nonav/source/browse/*checkout*/jogl/doc/userguide/index.html?rev=HEAD&content-type=text/html et assurez vous que les définitions des variables d'environnement CLASSPATH et PATH sont bonnes.
(HelloWorldJOGL est pris, à l'origine, de http://opengl.j3d.org/tutorials/helloworld.html )
Diapos: log740-2008h-cours03.pptNotes de cours: log740-2008h-cours03-notes.txt
(Lien facultatif) Annexe du livre sur le OpenGL qui parle des matrices: http://www.glprogramming.com/red/appendixf.html
(Lien facultatif) Tutoriel en français sur le OpenGL: http://rvirtual.free.fr/programmation/OpenGl/Index.htm
Travail 1 (T1)
Notes de cours: log740-2008h-cours04-notes.txtCode source pour T1: T1-sourceCode.rtf
Diapos expliquant un tampon de profondeur: tamponDeProfondeur.ppt
Diapos: log740-2008h-cours05-partie1.ppt , log740-2008h-cours05-partie2.pptRéponses au quiz 1: quiz1-reponses.rtf
Diapos: log740-2008h-cours06.ppt
Première partie de Travail 2 (T2):Compiler le code ici et l'exécuter pour voir les deux menus que vous aurez à modéliser, et à évaluer de façon expérimentale.Choisissez 3 tâches à modéliser avec les deux menus, que vous aurez à tester dans votre expérience. Exemples de tâches possibles:
Pour chacune des trois tâches que vous choisissez, modélisez le temps pour effectuer la tâche avec chaque menu, et ensuite essayez de générez des hypothéses: quel menu sera plus rapide pour quelle(s) tâches ? Plus tard, vous aurez à tester vos hypothèses dans une expérience.
- ajustement exact: ajuster un paramètre donné à une valeur donnée (exemple: ajuster paramètre 5 à une valeur de 250)
- ajustement approximatif: ajuster un paramètre donné à une valeur donnée, plus ou moins une erreur permise (exemple: ajuster paramètre 3 à une valeur de 200 +/- 10)
- ajustement extrême: minimiser ou maximiser un paramètre donné (exemple: ajuster paramètre 1 à une valeur de 500)
- ajustement fin: augmenter ou diminuer un paramètre donné d'un ou deux unités (exemple: augmenter paramètre 1 de 2)
- inspection: trouver quelle est la valeur actuelle d'un paramètre donné (notez: dans le cas du Control Menu, cela peut se faire en faisant "UNDO", entre autres)
- autres? Vous pouvez suggérer une autre tâche, mais consultez le prof ou le chargé de lab pour une approbation
Pour modéliser, vous pouvez utiliser la loi de Fitts (en 1D ou 2D), passage à travers un but, loi du mouvement canalisé, ou autres.
Diapos: log740-2008h-cours07.ppt
Deuxième partie de Travail 2 (T2):Compiler le code ici et chercher dans le code pour la chaîne "TODO"Il y aura plus d'explications lors du labo.
Diapos: log740-2008h-cours08.pdf (1 diapo par page) et log740-2008h-cours08-2.pdf (2 diapos par page)Réponses au quiz 2: quiz2-reponses.rtf
Troisiéme partie de Travail 2 (T2):Regarder les exemples de comment utiliser SAS pour analyser des données.Il y aura plus d'explications lors du labo.
Diapos: log740-2008h-cours09.ppt
L'énoncé pour T3
Diapos: log740-2008h-cours10.ppt
Diapos: log740-2008h-cours11.ppt
Réponses au quiz 3: quiz3-reponses.rtf
Semaine |
Cours |
Laboratoire |
Livrables |
28 avril |
jeudi,
1 mai (au B-3402) Cours 1: Introduction |
pas de labo cette semaine |
|
5 mai |
mardi, 6 mai Cours 2: Programmation événementielle |
jeudi, 8 mai |
|
12 mai |
mardi, 13 mai Cours 3: Programmation infographie interactive |
jeudi, 15 mai |
|
19 mai |
mardi, 20 mai Cours 4: Programmation infographie interactive (suite) Quiz #1 portant sur les cours 2 et 3 |
jeudi, 22 mai |
|
26 mai |
mardi, 27 mai Cours 5: Lois et modélisation psychomotrices |
jeudi, 29 mai démonstration de T1 à votre chargé de labo |
remettre T1 vendredi 30 mai |
2 juin |
mardi, 3 juin Cours 6: Plans d'expériences et analyse statistique |
jeudi, 5 juin |
|
9 juin |
mardi, 10 juin Cours 7: Interaction Quiz #2 portant sur les cours 5 et 6 |
jeudi, 12 juin |
|
16 juin |
mardi, 17 juin Cours 8: Interaction (suite) |
jeudi, 19 juin |
|
23 juin |
jeudi,
26 juin Cours 9: Interfaces tridimensionnelles |
pas de labo cette semaine |
|
30 juin |
pas de cours cette semaine |
jeudi, 3 juillet (au A-3446) |
remettre T2 vendredi 4 juillet
|
7 juillet |
mardi, 8 juillet Cours 10: Perception visuelle Quiz #3 portant sur les cours 7 et 8 |
jeudi, 10 juillet |
|
14 juillet |
mardi, 15 juillet Cours 11: Visualisation |
jeudi, 17 juillet |
|
21 juillet |
mardi, 22 juillet Cours 12: Révision, et Présentations orales par les étudiants |
jeudi, 24 juillet |
remettre diapos par courriel
mardi 15h00 |
28 juillet |
mardi, 29 juillet Cours 13: Présentations orales par les étudiants |
jeudi, 31 juillet |
remettre diapos par courriel
mardi 15h00; remettre T3 vendredi 1 août |
Évaluation:
quiz: 15% (5% pour chaque quiz)
T1: 10%
T2: 20%
T3: 10%
Présentation orale: 5%
examen final: 40%
Pénalité de 10% par jour de retard pour T1, T2, et T3.
Remerciements
Le contenu de ce cours a beaucoup évolué avec le temps
et a bénéficié du travail et des
contributions de gens variés.
Des portions de la version actuelle du cours ont peut-être
été contribuées par
Eric Fimbel, Jean-Marc Desharnais,
Bernard Baraby, Francis Cardinal,
et Jean-Marc Beaulieu à l'ÉTS;
Ron Baecker, Ravin Balakrishnan,
Gonzalo Ramos,
Daniel Wigdor,
et monica schraefel à l'Université de Toronto;
Saul Greenberg, James Landay, et Colin Ware,
et peut-être d'autres encore.