Programmation/Sommaire
Langages de programmation
VTK/Exemple introductif
Pour le manuel de références, on se reportera à la page 
Interpréteur.
À partir d'un interpréteur de commandes Unix, on commence par lancer l'interpréteur de commandes VTK
 vtk
C'est un interpréteur Tcl, avec de nouvelles commandes propres à VTK.
Fenêtre de rendu.
Je vais commencer par créer une fenêtre de visualisation, que je vais
appeler "laFenetreDeRendu". C'est la commande "vtkRenderWindow" qui permet
cette opération (classe vtkRenderWindow)
 vtkRenderWindow laFenetreDeRendu
"laFenetreDeRendu" est un objet VTK. Cela signifie entre autres que c'est une commande,
le premier argument de la commande étant appelée "méthode de l'objet".
Avant de vraiment voir la fenêtre, on va la redimensionner et lui attacher
deux rendeurs, "ren1" et "ren2".
La méthode de définition de la dimension, c'est "SetSize" :
 laFenetreDeRendu SetSize 600 300
Rendeurs.
Affreux néologisme, mais qui évite ici toute ambiguité. C'est ce qui agit permet le rendu, c'est à dire la réalisation graphique.
La commande de création des rendeurs, c'est "vtkRenderer" (classe vtkRenderer)
 vtkRenderer ren1
 vtkRenderer ren2
Il nous faut placer ces rendeurs dans la fenêtre de rendu. C'est la méthode "SetViewport" qui définit les
valeurs xmin, ymin, xmax, ymax. Il est à noter que la documentation de cette méthode ne figure
pas à la page "vtkRenderer" mais à la page "vtkViewport" (classe vtkViewport.html)
parce que "vtkRenderer" hérite de "vtkViewport".
 ren1 SetViewport 0.0 0.0 0.5 1.0 ;# moitié gauche de la fenêtre
 ren2 SetViewport 0.5 0.0 1.0 1.0 ;# moitié droite de la fenêtre
Pour bien visualiser les deux rendeurs, je change la couleur de fond
au moyen de la méthode "SetBackground". Les arguments sont les taux de rouge, vert, bleu
 ren1 SetBackground 0.8 0.4 0.2
 ren2 SetBackground 0.1 0.2 0.4
Je n'ai pas encore connecté la fenêtre de rendu et ses deux rendeurs. C'est la
méthode "AddRenderer" qui établit la connexion.
 laFenetreDeRendu AddRenderer ren1
 laFenetreDeRendu AddRenderer ren2
Maintenant, il s'agit de voir le résultat. C'est la méthode "Render"
de l'objet de type "vtkRenderWindow" qui permet de vraiment montrer la fenêtre
et ses deux rendeurs dont le fond est coloré.
 laFenetreDeRendu Render
Un cube.
Créons maintenant un volume. Une base de départ, c'est le cube. La commande
qui crée un cube, c'est "vtkCubeSource" (classe vtkCubeSource)
 vtkCubeSource unCube
Au départ, ce cube est centré à l'origine et il est de largeur unité.
 puts [unCube GetXLength] ;# -> 1
 puts [unCube GetCenter] ;# -> 0 0 0
Ces propriétés peuvent être modifiées par les méthodes "SetXLength", "SetCenter".
Il y a aussi "SetYLength" et "SetZLength". En fait, ce cube est un parallélépipède.
La classe des objets "vtkCubeSource" hérite de la classe des objets polygonaux "vtkPolyDataSource".
(class vtkPolyDataSource), comme les sphères, les flèches etc.
Ces objets sont abstraits. Pour les rendre concrets, il faut les passer
dans une moulinette de conditionnement de la classe "vtkPolyDataMapper"
Le conditionneur.
Je crée le conditionneur
 vtkPolyDataMapper leConditionneurDuCube
et je récupère le canal de sortie de mon cube (méthode GetOutput) pour le brancher sur le canal d'entrée du conditionneur (méthode SetInput)
 leConditionneurDuCube SetInput [unCube GetOutput]
L'acteur.
Ce conditionneur est connecté au rendeur par l'intermédiaire d'un acteur,
classe "vtkActor". (classe vtkActor)
Cet intermédiaire permet placer à un endroit précis, avec une orientation choisie
les objets conditionnés. On commence par utiliser les paramètres par défaut.
 vtkActor acteurDuCube
 acteurDuCube SetMapper leConditionneurDuCube
 ren1 AddViewProp acteurDuCube #; version 4: ren1 AddProp acteurDuCube 
 ren1 ResetCamera
 laFenetreDeRendu Render
 acteurDuCube RotateX 30.0
 acteurDuCube RotateY 20.0
 laFenetreDeRendu Render
Résumé des connexions.
En résumé, on a une chaine d'objets connectés comme suit :
 vtkCubeSource unCube
 vtkPolyDataMapper leConditionneurDuCube
 vtkActor acteurDuCube
 vtkRenderer ren1
 vtkRenderWindow laFenetreDeRendu
Cela parait compliqué mais permet une grande souplesse de manipulation.
Manipulation.
Supposons que je veuille observer l'effet du changement de largeur du parallèlépipède.
J'ai besoin d'appeler à la fois "unCube SetXLength ..." et "laFenetreDeRendu Render".
Je crée une procédure Tcl qui fait les deux :
et un curseur de manipulation
 scale .s -command modifie_hauteur ; pack .s
 .s configure -from 0.1 -to 2 -resolution 0.01
Pour la manipulation du point de vue, on peut créer un objet d'interaction
de la class vtkRenderWindowInteractor (classe vtkRenderWindowInteractor)
 vtkRenderWindowInteractor l_Interacteur
Il faut attacher le fenêtre de rendu à l'interacteur et initialiser celui-ci
 l_Interacteur SetRenderWindow laFenetreDeRendu
 l_Interacteur Initialize
Maintenant, les 3 boutons de la souris permettent de contrôler la visualisation du cube.
Opérations booléennes.
Passons à des opérations booléennes (classe vtkImplicitBoolean)
 vtkCubeSource unCube2
 unCube2 SetXLength 0.5
 unCube2 SetYLength 0.5
 unCube2 SetZLength 2
 vtkImplicitBoolean bidule
 bidule AddFunction unCube
 bidule AddFunction unCube2
 bidule SetOperationType 0;#union

Programmation
Ce livre se propose d'expliquer clairement et intuitivement les concepts de base liés à la programmation sur ordinateur et des machines qui en dérivent. Il proposera également à la fin un panorama des langages de programmation afin de permettre au programmeur de pouvoir choisir le langage qui lui convient le mieux à ses algorithmes et son environnement.
Sommaire.
Modifier le sommaire

JavaScript
Selvius
Le langage de programmation Python
Les technologies mobiles en éducation
Introduction.
Les évènements qui modifient l’environnement ponctuent les vagues de l’évolution (« Punctuated equilibrium » Gould, 1980); il en est un en juin 2007 avec la mise en marché du I-Phone d’Apple. D’abord simplement un nouvel outil de communication puis un appareil qui impose de nouvelles façons de faire qui modifiera certainement notre mode de vie. Nous l’avons déjà vécu avec le téléphone cellulaire mais constatons le, les événements en communications (qu’elles soient technologiques ou non) ont toujours eus de grands impactes sur nos modes de vie. Mentionnons l'écriture, l'imprimerie, la photographie, le téléphone, la télévision, le passage au numérique (Caron et Caronia, 2005). En enseignement, chaque instrument technologique n’a pas toujours sa place. Mais souvent les nouveaux instruments permettent une ouverture vers de nouvelles stratégies pédagogiques. De plus, chacun des instruments technologiques possède son propre potentiel pédagogique (Collins, Neville, Bielaczyc, 2000).
Dans la première partie de cet ouvrage, je commencerai par faire le point sur les technologies mobiles actuellement utilisées en enseignement. Dans une approche générale, j’en décrirai d’abord la philosophie qui a menés à son apparition, les fonctions offertes, et l’utilisation qu’on en fait. J’étudierai ensuite ces applications en enseignement en relatant certaines des expériences documentées. La deuxième partie traitera des technologies émergentes. J’ai retenu : le flux RSS, la baladodiffusion (PodCasting) et la messagerie texte (SMS). Et dans la dernière partie, j’étudierai l’intégration de ces dernières dans un contexte d’enseignement mobile (M-Learning). 
Première partie : Utilisation des Technologies Mobiles.
L’utilisation des technologies en enseignement.
Utilisation autre que pédagogique.
Domestique et social.
La mobilité croissante des responsables d'entreprises comme des commerciaux, et la nécessité d'accéder et de partager l'information en temps réel imposent désormais une relation étendue entre les différents collaborateurs" (analyse Damien Duchâteau, INES, Lyon)
Conclusion.
Agenda/Annuaire
Accès Web
Cellulaire
GPS
Pad pour écrire, pour annoter
Portable intégral

Néerlandais/Grammaire/le pronom/le pronom possessif