Java3D. Généralités sur la synthèse d'images temps réel. Généralités sur Java3D. d 'après P.Reignier, UJF
|
|
- Gabriel Meloche
- il y a 8 ans
- Total affichages :
Transcription
1 Java3D Généralités sur la synthèse d'images temps réel Généralités sur Java3D d 'après P.Reignier, UJF
2 Généralités sur la 3D Pourquoi utiliser une représentation en 3D? Réalisme Compréhension accrue d'un modèle à 3 dimensions => travail du système perceptif humain plutôt que du système cognitif Représentations des molécules en chimie Mouvement des astres en astronomie Topographies de terrains en cartographie Représentation d'organes en médecine Interactions riches et intuitives avec de multiples données
3 Synthèses d'images : API bas niveau Aspect matériel : facultatif mais fortement conseillé Stations spécialisées : SGI, Sun, HP, IBM Cartes accélératrices : PC, Mac (dans une moindre mesure) Aspect logiciel APIs
4 API bas niveau Interface avec le matériel Emule le matériel inexistant Très bas niveau d'abstraction : Sommets, faces Processus de rendu Exemples : OpenGL : standard multi OS, multi machines Direct3D IM : Windows
5 API haut niveau S'appuient sur les APIs bas niveau Haut niveau d'abstraction : Objets par opposition à sommets Contenu par oppostion à processus de rendu Graphe de scènes Exemples : Open Inventor, Performer, OpenGL Optimizer, Java 3D Direct3D RM
6 Construction avion : graphe de scène Scène 3D : hiérarchie d'objets => notion de graphe de scène Exemple : éléments constituant la scène
7 Construction avion : graphe de scène On commence à regrouper les éléments
8 Construction avion : graphe de scène On finit l'avion
9 Construction avion : graphe de scène Le graphe de scène
10 Graphe de scène : plusieurs objets
11 Java3D? API destinée à l'affichage 3D sous Java : développée par SUN en 1998 Java 3D destinée à l'écriture d'applications et d'applets. Conçue dans le but de faciliter la programmation : Classes pour la création de scènes 3D Classes pour la manipulation de ces scènes Justifiée par la portabilité de Java qui permet la portabilité des applications Java 3D sur toute plateforme où Java existe (Solaris, Windows) : accès à tous les packages Java
12 Rendu3D Rendu haute performance Utilisation de l'accélération 3D matérielle si possible Basé sur : OpenGL Direct3D
13 Applications Visualisation scientifique Visualisation d'informations Entraînement médical Système d'information géographique CAO etc
14 Visualisation scientifique
15 Visualisation médicale
16 Conception Assistée par Ordinateur
17 Java3D Introduction Organisation d'une scène : Graphe de scène Ecrire un programme Java3D Les classes principales Un peu d'animation
18 API Java3D Chaque programme Java3D est assemblé à partir d'objets provenant des classes Java3D : Plus de 100 classes et des centaines de méthodes et champs présents dans le package javax.media.j3d appelé aussi core package D'autres packages sont utilisés : Classes d'objets fonctionnels : com.sun.j3d.utils Classes d'outils de fenêtrage (AWT) : java.awt Classes d'objets mathématiques : javax.vecmath Cette collection d'objets décrit un univers virtuel «virtual universe» qui représente ce qui est rendu
19 Graphe de scène (Scene Graph) L'«univers virtuel» java3d est créé à partir d'un graphe de scènes : Feuilles : formes 3D, lumières, sons, comportements,.. Parents : groupe d'enfants, transformation 3D,.. 2 points de vue : Développeur : construction et mise à jour d'un graphe à l'aide des classes et des méthodes Java3D Java3D : rendu à l'écran du contenu du graphe (moteur de rendu : Z Buffer + ombrage de Gouraud)
20 Rendu du graphe Ordre du parcours du graphe : choisi par Java3D Rendu via des threads indépendants et asynchrones: Graphique (objets) Fonctionnalités classiques : brouillard, antialiassage,... Son Comportement («behaviors») Animation («interpolators») Périphériques d'entrée sortie Événements (détection de collision)
21 Graphe de scènes Représentation et terminologie
22 Graphe de scènes Représentation et terminologie
23 Graphe de scènes Représentation et terminologie Univers Virtuel (virtual universe) : Collection de graphes de scènes Un par application (possibilité d'en avoir 2, mais aucune com) C'est le sommet du graphe Repère (Locale) : généralement un par univers Graphe de scènes : généralement plusieurs par repère Noeuds (nodes) Groupe (group) : peut avoir plusieurs enfants mais un seul parent (ex: BranchGroup, TransformGroup) Feuille (Leaf) : un seul parent et aucun enfant (ex : Shape3D, Light, Behavior, Sound)
24 Graphe de scènes Représentation et terminologie
25 Graphe de scènes Représentation et terminologie Composant du Noeud (NodeComponent) Définit les attributs géométriques et d'apparence utilisés pour le rendu des objets décrits par le noeud du graphe qui lui est associé (ex : texture, matériel, géométrie) Ne fait pas partie du graphe de scènes 2 types d'arcs : «parent enfant» : lie les noeuds de l'arbre du graphe «référence» : lie un noeud de l'arbre à un objet NodeComponent N'appartient pas à l'arbre du graphe de scènes
26 Graphe de scènes Représentation et terminologie BranchGroup : racine d'un sous graphe ou graphe de branches 2 types de branches (Branch Graph) : Branche de scènes (content branch graph) : Spécifie les contenus de l'univers virtuel (Node et NodeComponent) : géométrie, apparence, comportement, emplacement dans la scène, son, lumières Plusieurs par univers Branche de visualisation (view branch graph) : Spécifie les paramètres de visualisation : emplacement de vision, direction de vision Généralement une par univers
27 Aperçu de la hiérarchie de classes class java.lang.object class javax.media.j3d.virtualuniverse class javax.media.j3d.scenegraphobject class javax.media.j3d.node class javax.media.j3d.group class javax.media.j3d.branchgroup class javax.media.j3d.switch class javax.media.j3d.leaf class javax.media.j3d.background class javax.media.j3d.behavior class javax.media.j3d.nodecomponent class javax.media.j3d.geometry class javax.media.j3d.appearance class javax.media.j3d.view
28 Ecrire un programme Java3D Créer un objet Canvas3D (fournit une image dans la fenêtre d'affichage) Créer un objet VirtualUniverse Créer un objet Locale, l'attacher à l'objet VirtualUniverse 4. Construire un graphe de branche de visualisation : Créer un objet View, ViewPlatform, PhysicalBody, PhysicalEnvironment Attacher les objets ViewPlatform, PhysicalBody, PhysicalEnvironment, Canvas3D à l'objet View 5. Construire le(s) graphe(s) de branche de scène 6. Compiler les graphes de branche Insérer les sous graphes dans le repère Locale
29 Programme simple la classe SimpleUniverse la classe SimpleUniverse (com.sun.j3d.utils.universe) va permettre de décrire les points 2, 3, et 4 Le constructeur de l'objet SimpleUniverse crée un graphe de scène incluant : les objets VirtualUniverse et Locale un graphe de branche de visualisation complet On rattache le Canvas3D à l'objet View en passant Canvas3D en paramètre au constructeur. Le graphe de branche de visualisation créé inclut un plaqué de l'image («image plate»)
30 SimpleUniverse y z x
31 Programme simple la classe ViewingPlatform La classe SimpleUniverse a un objet appartenant à la classe ViewingPlatform La classe ViewingPlatform a une méthode setnominalviewingtransform() qui positionne les yeux à (0,0,2.41). A cette distance et dans un champ de vue par défaut, les objets de hauteur et largeur de 2m «tiennent» dans le plaqué. On récupère l'objet ViewingPlatform créé par le SimpleUniverse grâce à la méthode de la classe SimpleUniverse : ViewingPlatform getviewingplatform()
32 Programme facile graphe de branche de scènes La régularité de structure n'existe pas pour les graphes de branche de scènes On crée un BranchGroup par branche de scène qui est ajouté au graphe comme fils de l'objet Locale (créé par le SimpleUniverse) : void addbranchgroup(branchgroup bg) Lorsque l'objet est ajouté, on dit qu'il est «vivant» Les objets BranchGroup peuvent être compilés afin de convertir l'objet et tous ses ancêtres en une forme plus efficace pour le renderer : void compile()
33 Exemple
34 Public class Hello extends Applet { public Hello() { Programme simple 1/3 setlayout(new BorderLayout()); //permet de créer la fenêtre de vision 1. GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration(); Canvas3D canvas3d = new Canvas3D(config); add("center",canvas3d); 2/3/4. SimpleUniverse simpleu = new SimpleUniverse(canvas3D); //on place les objets pour qu'ils soient vus simpleu.getviewingplatform().setnominalviewingtransform(); 5. BranchGroup scene = createscenegraph(); 6. scene.compile(); 7. simpleu.addbranchgraph(scene); }
35 Programme simple 2/3 construction d'un graphe de scene public BranchGroup createscenegraph() { } BranchGroup objroot = new BranchGroup(); //crée la racine du graphe objroot.addchild(new ColorCube(0.4)); //création d'un objet simple return objroot; public static void main(string[] args) { //permet de fournir un cadre pour une applet (ici : «Hello()») pour pouvoir l'exécuter comme une application 3D (dans une fenêtre) } } Frame frame = new MainFrame(new Hello(), 256, 256);
36 Programme simple 3/3 packages utilisés La plupart des classes utilisées en Java3D se trouvent dans les packages : javax.media.j3d javax.vecmath Dans la plupart des programmes Java3D on retrouvera les packages suivants : import java.applet.applet; import java.awt.borderlayout; import java.awt.frame; import java.awt.event.*; import com.sun.j3d.utils.applet.mainframe; import com.sun.j3d.utils.universe.*; import com.sun.j3d.utils.geometry; import javax.media.j3d.*; import javax.vecmath.*; summary.html
37 Transformations des objets classe Transform3D 1/2 Les objets Transform3D représentent des transformations de géométrie 3D (rotation,...) Ces objets ne sont utilisables que dans le cadre d'une création d'un objet TransformGroup Les objets Transform3D peuvent être combinés Ces objets sont représentés en interne comme des matrices 4x4 de flottants en double précision ligne par ligne Le constructeur Transform3D() construit la matrice identité
38 Transformations des objets classe Transform3D 2/2 Transformations de base : rotx(double angle), roty(angle), rotz(angle) où l'angle est spécifié en radians La rotation autour des axes se fait dans le sens des aiguilles La valeur de pi est donnée par la constante Math.PI set (params) où params peut être par exemple : Vector3f translate : alors seuls les composants de la matrice identité correspondant à la translation sont modifiés double scale : met les valeurs de la transformée à une échelle uniforme ; toutes les valeurs de la matrice sont modifiées
39 Transformations des objets classe TransformGroup La classe TransformGroup permet d'appliquer des transformations sur tous les objets de son sous graphe. On passe l'objet Transform3D : à la création : TransformGroup(Transform3D t) ou en utilisant la méthode set(transform3d t) après l'avoir construit par TransformGroup()
40 Transformations des objets exemple : rotations d'un cube 1/2 1. créer la transformation : une rotation «tmprotate» par rapport à Oy, précédée d'une rotation «rotate» par rapport à Ox, la combinaison finale étant représentée par «rotate» Transform3D rotate = new Transform3D(); rotate.rotx(math.pi/4.0d); Transform3D tmprotate = new Transform3D(); tmprotate.roty(math.pi/5.0d); rotate.mul(tmprotate); 2. Rattacher la transformation au TransformGroup TransformGroup objrotate = new TransformGroup(rotate);
41 Transformations des objets exemple : rotations d'un cube 2/2 3. Rattacher l'objet «ColorCube» (sur lequel la transformation va être appliquée) comme fils du TransformGroup objrotate.addchild(new ColorCube(0.4)); 4. Rattacher le TransformGroup à son parent le BranchGroup BranchGroup objroot = new BranchGroup(); objroot.addchild(objrotate);
42 Exemple représentation du graphe de scène BG objroot TG objrotate T3D rotate Objet ColorCube
43 Performances Le graphe de scène construit par un programme Java3D pourrait être utilisé directement en rendu, mais la représentation n'est pas très efficace => utilisation d'une représentation interne pour l'univers virtuel qui est obtenue par : Compilation du graphe de la branche avec compile() Insertion du graphe de la branche dans l'univers virtuel pour le rendre «vivant» A chacune de ces actions correspond une méthode dans la classe SceneGraphObject renvoyant un booléen : iscompiled(), islive()
44 Capacités («capabilities») Les effets de la transformation du graphe en représentation interne sont de : Fixer les valeurs des transformations et d'autres objets Mais il y a des cas où on a besoin de changer les valeurs dans le graphe de scène de l'objet après qu'il soit devenu «vivant» (exemple : pour réaliser des animations un objet TransformGroup doit avoir des valeurs différentes) On appelle la liste des paramètres ayant des valeurs modifiables les capacités de l'objet (varie en fonction de la classe) Chaque graphe de scène a un ensemble de bits de capacité dont les valeurs déterminent quelles capacités existent pour l'objet «vivant»
45 Exemples de capacités Capacités de la classe TransformGroup : 2 et seulement 2 qui spécifient que le TransformGroup permet d'accéder/modifier les informations de transformations de cet objet ALLOW_TRANSFORM_READ : accès ALLOW_TRANSFORM_WRITE : modifier TransformGroup hérite des capacités de ses parents Capacités de la classe Group : ALLOW_CHILDREN_EXTEND : les enfants peuvent être ajoutés au noeud après qu'il ait été compilé ALLOW_CHILDREN_READ : permet de lire les références aux enfants de ce noeud
46 Un peu d'animation... la classe Behavior Behavior permet de spécifier : des animations d'objets visuels (réponses au temps qui passe) ou des interactions entre ces objets (réponses aux activités de l'utilisateur) Le behavior peut changer virtuellement tout attribut d'un objet visuel : Plusieurs behavior prédéfinis existent On peut créer son propre behavior Une fois que le behavior est spécifié, le système Java3D met à jour les position, couleur,... Un objet visuel peut avoir plusieurs behavior
47 Un peu d'animation... Behavior comment? Pour spécifier un behavior pour un objet visuel : Créer les objets que spécifie le behavior Ajouter l'objet visuel au graphe de scène Faire les références appropriées parmi les objets du graphe et les objets du behavior Exemple de behavior : Interpolator basée sur le temps Pour éviter la surcharge de calculs, un behavior aura une zone d'action («scheduling region») et il sera actif seulement lorsque sa zone d'action intersectera le volume d'activation de la zone de vision ViewPlatform
48 Un peu d'animation les étapes Créer un TransformGroup cible mettre la capacité ALLOW_TRANSFORM_WRITE Créer un objet Alpha spécifier les paramètres de temps pour alpha Créer un objet Interpolator lui faire référencer les objets Alpha et TransformGroup adapter les paramètres du behavior Spécifier une zone d'action la rattacher au behavior 5.Lier le behavior comme enfant du TransformGroup
49 Un peu d'animation... Exemple : RotationInterpolator Interpolator permet de réaliser différentes actions, on parle de ixinterpolator où ix est remplacé par : Position (position), Rotation (orientation), Scale (taille), Color (couleur), Transparency (transparence) RotationInterpolator : change un objet TransformGroup en une rotation spécifique en réponse à la valeur d'un objet Alpha Peut spécifier l'axe de rotation, l'angle de départ, l'angle d'arrivée Constructeur RotationInterpolator(Alpha alpha, TransformGroup target)
50 Un peu d'animation... le temps et la zone d'action Classe Alpha fournit des objets pour convertir le temps en une valeur alpha (valeur entre 0 et 1) : la fonction f(t) et les caractéristiques de l'objet Alpha peuvent être données par l'utilisateur via les méthodes de la classe : Constructeur Alpha() : boucle continue pendant 1s Constructeur Alpha(int loopcount, long alphaduration) : ceci est répété autant de fois que la valeur de loopcount (si= 1=> infini) avec une durée de alphaduration (en ms) entre le début et la fin Pour définir la zone d'action on utilise la méthode setschedulingbounds (de la classe Behavior) avec en paramètre le type de zone : on utilise souvent l'objet BoundingSphere (constructeur BoundingSphere() de rayon 1) dont on peut spécifier le centre et le rayon
51 Exemple : rotation du cube coloré HelloUniverse3Dc.java
52 Un peu d'animation... les étapes : exemple de fonction public BranchGroup createscenegraph() { BranchGroup objroot = new BranchGroup(); } 1. TransformGroup objspin = new TransformGroup(); objspin.setcapability(transformgroup.allow_transform_write); objroot.addchild(objspin); objspin.addchild(colorcube(0.4)); 2. Alpha rotationalpha = new Alpha( 1, 4000); 3. RotationInterpolator rotator = new RotationInterpolator(Alpha, objspin); 4. rotator.setschedulingbounds(new BoudingSphere()); 5. objspin.addchild(rotator); return objroot;
53 Exemple représentation du graphe de scène
Java 7 Les fondamentaux du langage Java
184 Java 7 Les fondamentaux du langage Java 1.1 Les bibliothèques graphiques Le langage Java propose deux bibliothèques dédiées à la conception d'interfaces graphiques. La bibliothèque AWT et la bibliothèque
Plus en détailDéveloppement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN fbertin@neotilus.com
Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184 Frédéric BERTIN fbertin@neotilus.com Présentaion : Mobile 3D Graphics API JSR 184 M3G :présentation Package optionnel de l api J2ME. Prend
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailTP1. Outils Java Eléments de correction
c sep. 2008, v2.1 Java TP1. Outils Java Eléments de correction Sébastien Jean Le but de ce TP, sur une séance, est de se familiariser avec les outils de développement et de documentation Java fournis par
Plus en détailInstitut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique
Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation
Plus en détailChapitre I Notions de base et outils de travail
Chapitre I Notions de base et outils de travail Objectifs Connaître les principes fondateurs et l historique du langage Java S informer des principales caractéristiques du langage Java Connaître l environnement
Plus en détailJava Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites
Java Licence Professionnelle 2009-2010 Cours 7 : Classes et méthodes abstraites 1 Java Classes et méthodes abstraites - Le mécanisme des classes abstraites permet de définir des comportements (méthodes)
Plus en détailInitiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr
Initiation à JAVA et à la programmation objet raphael.bolze@ens-lyon.fr O b j e c t i f s Découvrir un langage de programmation objet. Découvrir l'environnement java Découvrir les concepts de la programmation
Plus en détailJava c est quoi? Java. Java. Java : Principe de fonctionnement 31/01/2012. 1 - Vue générale 2 - Mon premier programme 3 - Types de Programme Java
1 - Vue générale 2 - Mon premier programme 3 - Types de Programme 1 2 c est quoi? Technologie développée par SUN Microsystems lancée en 1995 Dans un des premiers papiers* sur le langage JAVA, SUN le décrit
Plus en détailJAVA 8. JAVA 8 - Les fondamentaux du langage. Les fondamentaux du langage Java. Avec exercices pratiques et corrigés JAVA 8 29,90.
Analyste et développeur pendant plus de 10 ans, Thierry GROUSSARD s est ensuite orienté vers la formation et plus particulièrement dans le domaine du développement. Sa connaissance approfondie des besoins
Plus en détailModules Multimédia PAO (Adobe)
Modules Multimédia PAO (Adobe) Pré-requis : Bonne maîtrise de la manipulation d'un PC (environnement Windows ou Mac) et de la navigation Internet. Disposition pour le graphisme recommandée. Mémoire visuelle,
Plus en détailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détailIntroduction à Business Objects. J. Akoka I. Wattiau
Introduction à Business Objects J. Akoka I. Wattiau Introduction Un outil d'aide à la décision accès aux informations stockées dans les bases de données et les progiciels interrogation génération d'états
Plus en détailGL BE FLYER. Chef de projet de l équipe : SCIONICO Pierre
GL BE FLYER Chef de projet de l équipe : SCIONICO Pierre Membres de l équipe : BRESSON Adrien THIERY Kévin SCIONICO Pierre ALBERTINI Rémi ROBERT Cédric Tuteur du projet : GESQUIERE Gilles IUT de l'université
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailAnne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2
Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................
Plus en détailProgrammation par les Objets en Java
Programmation par les Objets en Java Najib TOUNSI Les classes en Java (TD 3) I. Notion de classe I.1 Classe, champs, méthodes, instanciation, this, private vs. public. Créer une classe Point (coordonnée
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailDossier. Développer en Java sur téléphone mobile. Benjamin Damécourt benjamin.damecourt@me.com. UFR SITEC Master 2 EESC 11 janvier 2012
Dossier Développer en Java sur téléphone mobile Benjamin Damécourt benjamin.damecourt@me.com UFR SITEC Master 2 EESC 11 janvier 2012 Table des matières Introduction 2 Pré-requis 3 Hello World! 5 Installation
Plus en détailBULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)
Ministère de l Enseignement Supérieur et de la Recherche Scientifique Ecole Supérieure Privée d Ingénierie et de Technologie BULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailGénéralités sur le Langage Java et éléments syntaxiques.
Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...
Plus en détailJava Licence professionnelle CISII, 2009-2010
Java Licence professionnelle CISII, 2009-2010 Cours 6 : le paquetage (package) Cours inspiré des cours de Richard Grin, Antoine Tabbone et Hazel Everett 1 Définition - Les classes Java sont regroupées
Plus en détailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Plus en détailHéritage presque multiple en Java (1/2)
Héritage presque multiple en Java (1/2) Utiliser deux classes ou plus dans la définition d'une nouvelle classe peut se faire par composition. class Etudiant{ int numero; Diplome d; float passeexamen(examen
Plus en détailCours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java
Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page
Plus en détailINITIATION AU LANGAGE JAVA
INITIATION AU LANGAGE JAVA I. Présentation 1.1 Historique : Au début des années 90, Sun travaillait sur un projet visant à concevoir des logiciels simples et performants exécutés dans des PDA (Personnal
Plus en détailProgramme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)
Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée
Plus en détailInterfaces graphiques avec l API Swing
Interfaces graphiques avec l API Swing Les Swing Les classes graphiques Swing dérivent de la classe JComponent, qui hérite ellemême de la classe AWT (Abstract Window Toolkit). Tous les composants Swing
Plus en détailLangage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2
Langage et Concepts de Programmation Objet Travaux Dirigés no2 Pôle Informatique École Nationale Supérieure des Mines de St-Etienne Vous trouverez plus de détails sur les concepts abordés lors de ce TD
Plus en détailpcon.planner 6 Préparer et présenter une implantation en toute simplicité
pcon.planner 6 Préparer et présenter une implantation en toute simplicité Sommaire 1. Installation :... 3 2. Démarrer le logiciel :... 3 3. Interface :... 3 4. Naviguer :... 4 5. Réaliser une implantation
Plus en détailACQUISITION ANALYSE PRÉSENTATION
INITIATION AU LOGICIEL D'INSTRUMENTATION LAB ABVIEW 1. INTRODUCTION Labview (Laboratery Virtual Instruments Engineering Workbench) est un environnement de développement d'applications fondé sur un langage
Plus en détailTutoriel : logiciel de présentation Openoffice Impress
Tutoriel : logiciel de présentation Openoffice Impress Le logiciel de présentation permet de construire une suite de pages (diapositives) contenant différents objets : du texte, de l'image, du son. - L'apparition
Plus en détailµrv : Realité Virtuelle
µrv : Realité Virtuelle Edgar-Fernando ARRIAGA-GARCIA Charles-Henri BABIAUD Clément GRELLIER Quentin PETIT Jérôme Ricoeur Florent VIOLLEAU INSA Rennes 21 septembre 2011 1 / 15 Objectifs pour cette semaine
Plus en détailLa plate-forme DIMA. Master 1 IMA COLI23 - Université de La Rochelle
La plate-forme DIMA Master 1 IMA COLI23 - Université de La Rochelle DIMA Bref aperçu Qu'est-ce? Acronyme de «Développement et Implémentation de Systèmes Multi-Agents» Initié par Zahia Guessoum et Jean-Pierre
Plus en détailÉléments de programmation et introduction à Java
Éléments de programmation et introduction à Java Jean-Baptiste Vioix (jean-baptiste.vioix@iut-dijon.u-bourgogne.fr) IUT de Dijon-Auxerre - LE2I http://jb.vioix.free.fr 1-20 Les différents langages informatiques
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailAUVRAY Clément (168187) HOMBERGER Alexandre (186897) GLADE. Langages, outils et méthodes pour la programmation avancée Page 1 sur 12
GTK+ GLADE Page 1 sur 12 SOMMAIRE INTRO 3 Présentation de GTK+ 3 Présentation de GLADE 3 GTK+ 4 Installation 4 Les Widgets 4 Le système de hiérarchie 5 Les signaux 6 GLADE 7 Installation 7 L interface
Plus en détailHP Color LaserJet Pro MFP M476dn
HP Color LaserJet Pro MFP M476dn HP Color LaserJet Pro MFP M476dn - Imprimante multifonctions - couleur - laser - Légal (216 x 356 mm) (original) - A4/Légal (support) - jusqu'à 21 ppm (copie) - jusqu'à
Plus en détailPolymorphisme, la classe Object, les package et la visibilité en Java... 1
Polymorphisme, la classe Object, les package et la visibilité en Java. Polymorphisme, la classe Object, les package et la visibilité en Java.... 1 Polymorphisme.... 1 Le DownCast... 4 La Classe Object....
Plus en détailmodélisation solide et dessin technique
CHAPITRE 1 modélisation solide et dessin technique Les sciences graphiques regroupent un ensemble de techniques graphiques utilisées quotidiennement par les ingénieurs pour exprimer des idées, concevoir
Plus en détailLivre Blanc WebSphere Transcoding Publisher
Livre Blanc WebSphere Transcoding Publisher Introduction WebSphere Transcoding Publisher vous permet d'offrir aux utilisateurs des informations Web adaptées à leurs besoins. Il vous permet, par exemple,
Plus en détailLangage Java. Classe de première SI
Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les
Plus en détailCréation d'étiquettes de disques à l'aide de LightScribe
Création d'étiquettes de disques à l'aide de LightScribe Référence du document : 383416-051 Février 2005 2005 Hewlett-Packard Development Company, L.P. Les informations contenues dans ce document peuvent
Plus en détailInspiration 7.5. Brève description d Inspiration. Avantages d Inspiration. Inconvénients d Inspiration
Inspiration 7.5 Brève description d Inspiration Langue : Français et anglais. Coût : 109$. Une version d essaie gratuite de 30 jours est disponible à l adresse suivante : http://inspiration.demarque.com/applicationweb/pages/publique/index.php
Plus en détailCours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr
. Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le
Plus en détailEclipse atelier Java
Eclipse atelier Java Table des matières 1. Introduction...2 2. Télécharger eclipse...3 3. Installer eclipse...3 4. Premier lancement d eclipse...3 5. Configurer eclipse pour faire du Java...5 6. Développer
Plus en détailInitiation à la librairie graphique VTK
Initiation à la librairie graphique VTK Telecom Bretagne, Février 2011 Jean CHAOUI Objectif : Être capable de créer une scène 3D simple composée de quelques primitives géométriques et de pouvoir modifier,
Plus en détailÉvaluation des compétences. Identification du contenu des évaluations. Septembre 2014
Identification du contenu des évaluations Septembre 2014 Tous droits réservés : Université de Montréal Direction des ressources humaines Table des matières Excel Base version 2010... 1 Excel intermédiaire
Plus en détailMEGA ITSM Accelerator. Guide de Démarrage
MEGA ITSM Accelerator Guide de Démarrage MEGA 2009 SP4 1ère édition (juin 2010) Les informations contenues dans ce document pourront faire l objet de modifications sans préavis et ne sauraient en aucune
Plus en détailMEMENTO D'UTILISATION Du T.N.I. SmartBoard (Version 10.0.130)
CRDP de l académie de Versailles Mission TICE Médiapôles mediapoles @crdp.ac-versailles.fr MEMENTO D'UTILISATION Du T.N.I. SmartBoard (Version 10.0.130) Mars 2009 584, rue Fourny 78530 Buc Tél. 01 39 45
Plus en détailBases Java - Eclipse / Netbeans
Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement
Plus en détailPour les futurs développeurs Sommaire
Pour les futurs développeurs Sommaire I. Présentation du projet... 2 II. Détails sur les différentes parties... 3 1. Le modèle 3D... 3 2. Reconnaissance des gestes... 4 3. Reconnaissance d objets... 6
Plus en détailLa technologie Java Card TM
Présentation interne au CESTI La technologie Java Card TM sauveron@labri.u-bordeaux.fr http://dept-info.labri.u-bordeaux.fr/~sauveron 8 novembre 2002 Plan Qu est ce que Java Card? Historique Les avantages
Plus en détailTp 1 correction. Structures de données (IF2)
Tp 1 correction Structures de données (IF2) Remarque générale : compilez et exécutez le code au-fur-et-à mesure de son écriture. Il est plus facile de corriger une petite portion de code délimitée que
Plus en détailOutils, langage et approche Android Une introduction. Nicolas Stouls nicolas.stouls@insa lyon.fr
Outils, langage et approche Android Une introduction Nicolas Stouls nicolas.stouls@insa lyon.fr Webographie La bible contenant «tout» : http://developer.android.com/index.html Les supports cette intervention
Plus en détailLe langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie
Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis
Plus en détailUne introduction à Java
Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)
Plus en détailRMI le langage Java XII-1 JMF
Remote Method Invocation (RMI) XII-1 Introduction RMI est un ensemble de classes permettant de manipuler des objets sur des machines distantes (objets distants) de manière similaire aux objets sur la machine
Plus en détailConservation des documents numériques
Conservation des documents numériques Qu'est ce qu'un document numérique? Matthieu GIOUX matthieu.gioux@bnf.fr Contexte de la préservation des documents numériques Une croissance en expansion Développement
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 I. Objectif du TP TP1 : Initiation à Java et Eclipse Programmation Mobile Initiation à l environnement Eclipse et aux notions de base du langage Java. II. Environnement
Plus en détailGuide pour la réalisation d'un document avec Open Office Writer 2.2
Guide pour la réalisation d'un document avec Open Office Writer 2.2 1- Lancement de l'application : Le Traitement de textes de la Suite OpenOffice peut être lancé : soit depuis le menu «Démarrer / Programmes/OpenOffice2.2/Writer
Plus en détailTITRE PARTIE TITRE SECTION. Faire des anaglyphes avec CatiaV5
TITRE PARTIE TITRE SECTION Faire des anaglyphes avec CatiaV5 1 SOMMAIRE SOMMAIRE 1. QU'EST-CE QU'UN ANAGLYPHE? 3 2. LES LOGICIELS A INSTALLER 5 3. CREATION D'UN ANAGLYPHE FIXE 6 4. CREATION D'UN ANAGLYPHE
Plus en détailAccélérez votre émulateur Android
Accélérez votre émulateur Android Introduction Le lancement de l émulateur est une opération très lente. Pour l améliorer, nous pouvons profiter de la puissance du matériel de la machine. Pour ce faire,
Plus en détailCanvas 3D et WebGL. Louis Giraud et Laetitia Montagny. 9 Avril 2013. Université Lyon 1
Canvas 3D et WebGL Louis Giraud et Laetitia Montagny Université Lyon 1 9 Avril 2013 1 Présentation du sujet Introduction Présentation du sujet Problématique : Représenter de la 3D dans le navigateur sans
Plus en détailLANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation
ING 01 LANGAGUE JAVA Durée : 21 heures 1090 HT / jour Dates : à définir en 2012 Concevoir et développer des programmes en langage Java Comprendre le fonctionnement de la machine virtuelle S approprier
Plus en détailInstallation et prise en main
TP1 Installation et prise en main Android est le système d'exploitation pour smartphones, tablettes et autres appareils développé par Google. Pour permettre aux utilisateurs d'installer des applications
Plus en détailTraitement de données
Traitement de données Présentation du module TINI Présentation du module : Le module Tini se décline en plusieurs versions, il est constitué d une carte d application et d un module processeur : Les modules
Plus en détailDévelopper des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David
Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server Sébastien Boutard Thomas David Le plan de la présentation Petit retour sur les environnements de développement ArcGIS Server
Plus en détailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailRemote Method Invocation (RMI)
Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe
Plus en détailGuide Draw. Chapitre 5 Combiner plusieurs objets
Version 4.0 Guide Draw Chapitre 5 Combiner plusieurs objets Grouper, combiner, fusionner et positionner LibreOffice est une marque déposée de The Document Fondation Plus d informations sur fr.libreoffice.org
Plus en détailVirtual Universe Pro V2 Manuel de l Utilisateur (C) 2013 IRAI. Manuel Utilisateur VIRTUAL UNIVERSE PRO V2 Page 1
Virtual Universe Pro V2 Manuel de l Utilisateur (C) 2013 IRAI Manuel Utilisateur VIRTUAL UNIVERSE PRO V2 Page 1 Table des matières Introduction... 7 Installation... 8 Configuration matérielle requise...
Plus en détailAlgorithmique avec Algobox
Algorithmique avec Algobox 1. Algorithme: Un algorithme est une suite d instructions qui, une fois exécutée correctement, conduit à un résultat donné Un algorithme doit contenir uniquement des instructions
Plus en détailPrise en main du BusinessObjects XI R2 Service Pack 2/ Productivity Pack
Prise en main du BusinessObjects XI R2 Service Pack 2/ Productivity Pack A propos de ce guide A propos de ce guide Ce guide contient des informations de prise en main du BusinessObjects XI R2 Service Pack
Plus en détailMachines Virtuelles. et bazard autour. Rémi Forax
Machines Virtuelles et bazard autour Rémi Forax Avant propos Quelle est la complexité du code ci-dessous? Avec un processeur à 1Ghz, combien de temps le calcul prendra t'il? public static void main(string[]
Plus en détailUn exemple avec WORKSPACE d'interwrite
S'approprier un utilitaire de TNI Un exemple avec WORKSPACE d'interwrite Objectifs : S'approprier un utilitaire de TNI («soft»)afin de percevoir la plus-value pédagogique de l'outil. Pour cela utiliser
Plus en détailTraitement numérique de l'image. Raphaël Isdant - 2009
Traitement numérique de l'image 1/ L'IMAGE NUMÉRIQUE : COMPOSITION ET CARACTÉRISTIQUES 1.1 - Le pixel: Une image numérique est constituée d'un ensemble de points appelés pixels (abréviation de PICture
Plus en détailACTIVITÉ DE PROGRAMMATION
ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,
Plus en détailWhite Paper - Livre Blanc
White Paper - Livre Blanc Développement d applications de supervision des systèmes d information Avec LoriotPro Vous disposez d un environnement informatique hétérogène et vous souhaitez à partir d une
Plus en détailJAVA TD0. Prise en main du langage Environnement de base JAVA 1
JAVA TD0 Prise en main du langage Environnement de base JAVA 1 Mon premier programme public class HelloWorld { public static void main(string [] arg){ System.out.println("Hello, World!"); main(string []
Plus en détailLa visio-conférence holographique : Pourquoi? Comment?
La visio-conférence holographique : Pourquoi? Comment? Francis Felix Labo LSIS / Arts & Métiers Paritech (ENSAM) 2 Cours des Arts et Métiers 13100 Aix-en-Provence Thierry Henocque AIP-Primeca Dauphiné
Plus en détailPrénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Plus en détailDans ce mémento, vous trouverez les informations détaillées pour configurer les fonctionnalités du Responsive Design dans le Worldsoft CMS:
1 La taille et la résolution de l'écran des ordinateurs portables, des ordinateurs de bureau, des tablettes et des smartphones peuvent considérablement varier. C'est pour cette raison, que les sites Web
Plus en détailEncadré par : Michel SIMATIC
Réalisé Par : Nizar BEN AYADA Ahmed GHZAIEL Encadré par : Michel SIMATIC I. PRESENTATION DU PROJET II. PRESENTATION DU MIDDLEWARE GASP 1- PRESENTATION GENERALE : 2- NECESSITE DES INTERGICIELS DANS LE MONDE
Plus en détailSAP BusinessObjects Web Intelligence (WebI) BI 4
Présentation de la Business Intelligence 1. Outils de Business Intelligence 15 2. Historique des logiciels décisionnels 16 3. La suite de logiciels SAP BusinessObjects Business Intelligence Platform 18
Plus en détailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détail7.0 Guide de la solution Portable sans fil
7.0 Guide de la solution Portable sans fil Copyright 2010 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur
Plus en détailProgrammation d'applications sur PDA
Programmation d'applications sur PDA l'exemple de Waba Paul Guyot - ECE - Systèmes Embarqués (14/12/01) 1 Introduction 2 Introduction Généralisation des PDAs Utilisation spécifique des PDAs Projet originel
Plus en détailEIP 2012 Projet Livepad. Documentation technique 1.5
EIP 2012 Projet Livepad 1.5 Marc Mathieu Benjamin Netter David Ngo Pierre Pasteau Denis Togbe 12-01-2012 Informations sur le projet Groupe Nom du projet Type de document Marc Mathieu Benjamin Netter David
Plus en détailUne solution pour les experts! Les relevés de surfaces. solution? On y retourne!
Relevé de surfaces, Repérage amiante, Diagnostic plomb, Etat parasitaire, avec une TabletPC Une solution pour les experts! DISTOTABLET La réhabilitation de bâtiments existants constitue désormais une partie
Plus en détailAuto-évaluation Programmation en Java
Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN
Plus en détailPage 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T>
Page 1 sur 5 TP3 Lectures préalables : l Java_II l tutorial Interfaces Thèmes du TP : l la classe Object l Vector l Stack Une pile d'objects Les éléments de la classe Pile sont maintenant des instances
Plus en détailRetrospect 7.7 Addendum au Guide d'utilisation
Retrospect 7.7 Addendum au Guide d'utilisation 2011 Retrospect, Inc. Certaines parties 1989-2010 EMC Corporation. Tous droits réservés. Guide d utilisation d Retrospect 7.7, première édition. L utilisation
Plus en détailRapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/2011. 1.1 Présentation. 1.2 Ressources
Master Maths Finances 2010/2011 Data Mining janvier 2011 RapidMiner 1 Introduction 1.1 Présentation RapidMiner est un logiciel open source et gratuit dédié au data mining. Il contient de nombreux outils
Plus en détailTable des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction
PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS Depuis SAS 9.2 TS2M3, SAS propose un nouveau langage de programmation permettant de créer et gérer des tables SAS : le DS2 («Data Step 2»). Ces nouveautés
Plus en détail1 Gestionnaire de Données WORD A4 F - USB / 2014-04-05 / 6020 Alco-Connect
1 Gestionnaire de Données WORD A4 F - USB / 2014-04-05 / 6020 Alco-Connect Introduction... 4 Comment décrire le logiciel Cosmos?... 4 Quelles sont les fonctions de ce logiciel PC?... 4 Est-il possible
Plus en détailLicence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...
Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez
Plus en détailDOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin
DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin Objectifs : Apprendre à l apprenant à lancer un serveur local «Apache» Apprendre à l'apprenant à lancer un serveur MySQL
Plus en détailGenerative Structural Analysis (GPS et EST)
Generative Structural Analysis (GPS et EST) Plan du site Préface Nouveautés Mise en route Tâches de base Description de l'atelier Glossaire Index Dassault Systèmes 1994-2000. Tous droits réservés. Plan
Plus en détail