XNA Atelier 11. Introduction à la programmation 3D. Développement de programmes. dans un environnement graphique RE. Auteur Vincent Echelard
|
|
- Mauricette Martel
- il y a 8 ans
- Total affichages :
Transcription
1 XNA Atelier 11 Introduction à la programmation 3D Auteur Vincent Echelard Table des matières A. BUT DE L ATELIER... 2 B. MODÈLES 3D Introduction Ajout d un modèle 3D au projet... 3 C. MÉLANGER L AFFICHAGE 2D ET L AFFICHAGE 3D Introduction Stratégie de gestion de l affichage La classe Afficheur3D... 5 D. CAMÉRA Introduction La classe Caméra La classe CaméraFixe... 7 E. AFFICHAGE D UN MODÈLE 3D Introduction La classe ObjetDeBase... 8 F. TRAVAIL À RÉALISER RE Développement de programmes dans un environnement graphique
2 A. But de l atelier Cet atelier vous permettra de vous initier à certains aspects du développement d une application 3D avec XNA. Pour commencer : 1. Téléchargez les différents fichiers d'archives relatifs à l atelier 11 sur le site Web du cours. 2. Décompressez les fichiers d archives. 3. Ouvrez le projet de base B. Modèles 3D 1. Introduction En infographie 3D, la modélisation 3D est le processus d'élaboration d'une représentation mathématique d'une surface tridimensionnelle d un l'objet par le biais d un logiciel spécialisé. Le résultat obtenu est appelé un modèle 3D. XNA reconnaît de prime abord deux formats de modèle 3D. Soit le format FBX et le format X. Le format FBX a été développé par la firme canadienne Kaydara et est maintenant la propriété de la firme Autodesk qui est spécialisée dans les logiciels de dessin et de conception assistée par ordinateur tels Maya et 3D Studio MAX qui sont les logiciels les plus utilisés en modélisation 3D. Ces logiciels permettent d exporter les modèles 3D en format FBX. Le format X a été développé par la firme américaine Microsoft et il est lié à la bibliothèque graphique DirectX. Il est toutefois théoriquement possible de développer des outils d importation qui permettraient d utiliser des fichiers ayant un format standard tel BLEND (Blender), OBJ (Wavefront), MAX (3D Studio MAX), ou MA (Maya). Auteur : Vincent Echelard, 2015 Page 2
3 2. Ajout d un modèle 3D au projet Les modèles 3D, comme tous les autres types de ressources doivent être ajoutés dans le Content de notre projet, dans un répertoire approprié qui ici portera le nom de Models. Pour cet atelier, nous allons ajouter le modèle «Ship.fbx» que vous trouverez dans le fichier d archives contenant les assets de l atelier 11. Une particularité importante à souligner en ce qui concerne l ajout des modèles 3D, c est qu il faut généralement également ajouter le ou les fichiers contenant les diverses textures qui seront appliquées sur le modèle (voir figure 1). Ces fichiers de texture devront, habituellement, être placés dans le même répertoire que le modèle. Il ne faut toutefois pas que ces textures apparaissent dans l explorateur de solution (voir figure 2). Le modèle 3D La texture Figure 1. Ajout du modèle (et de sa texture) au projet Figure 2. Exclure la texture du projet Auteur : Vincent Echelard, 2015 Page 3
4 C. Mélanger l affichage 2D et l affichage 3D 1. Introduction Dans une application 3D classique, il est fréquent de devoir également afficher certains éléments 2D. En XNA, cela comporte certaines difficultés qui sont inhérentes au fait que les paramètres graphiques liés à l affichage 2D sont différents de ceux associés à l affichage 3D. C est pourquoi il nous faudra mettre en place une stratégie qui nous permettra de limiter les interactions négatives entre les deux modes d affichage. 2. Stratégie de gestion de l affichage Dans un affichage mixte 2D/3D, les problèmes surviennent lorsque l on passe de l affichage 2D à l affichage 3D. En effet, lors du passage du 3D au 2D, le framework XNA initialise correctement les paramètres graphiques pour permettre l affichage des composants 2D. Toutefois, lors du passage du 2D au 3D, notre application doit prendre en charge l initialisation des paramètres graphiques, sans quoi nos éléments 3D ne seront pas correctement affichés. La stratégie que nous devons mettre en place est relativement simple. Nous allons créer, au sein de notre liste de composants, trois groupes distincts de composants. Le premier sera constitué des composants liés à l affichage 2D de l arrière-plan (background), le second sera formé des composants liés à l affichage 3D et le troisième groupe sera constitué des composants qui s occuperont de l affichage 2D de l avant-plan (foreground). De plus, nous allons nous assurer que le premier composant du second groupe se charge de réinitialiser correctement les paramètres graphiques nécessaires à l affichage 3D. Dans nos ateliers nous confierons cette tâche à un composant nommé «Afficheur3D». Auteur : Vincent Echelard, 2015 Page 4
5 3. La classe Afficheur3D public class Afficheur3D : Microsoft.Xna.Framework.DrawableGameComponent InputManager GestionInput get; set; DepthStencilState JeuDepthBufferState get; private set; RasterizerState JeuRasterizerState get; private set; BlendState JeuBlendState get; private set; bool estaffichéenwireframe; bool EstAffichéEnWireframe get return estaffichéenwireframe; set JeuRasterizerState = new RasterizerState(); estaffichéenwireframe = value; JeuRasterizerState.CullMode = CullMode.CullCounterClockwiseFace; JeuRasterizerState.FillMode = estaffichéenwireframe? FillMode.WireFrame : FillMode.Solid; Game.GraphicsDevice.RasterizerState = JeuRasterizerState; public Afficheur3D(Game jeu) : base(jeu) public override void Initialize() JeuDepthBufferState = new DepthStencilState(); JeuDepthBufferState.DepthBufferEnable = true; JeuRasterizerState = new RasterizerState(); JeuRasterizerState.CullMode = CullMode.CullCounterClockwiseFace; JeuBlendState = BlendState.Opaque; base.initialize(); protected override void LoadContent() GestionInput = Game.Services.GetService(typeof(InputManager)) as InputManager; public override void Update(GameTime gametime) GestionClavier(); public override void Draw(GameTime gametime) GraphicsDevice.DepthStencilState = JeuDepthBufferState; GraphicsDevice.RasterizerState = JeuRasterizerState; GraphicsDevice.BlendState = JeuBlendState; GraphicsDevice.SamplerStates[0] = SamplerState.LinearWrap; void GestionClavier() if (GestionInput.EstNouvelleTouche(Keys.F)) EstAffichéEnWireframe =!EstAffichéEnWireframe; Auteur : Vincent Echelard, 2015 Page 5
6 D. Caméra 1. Introduction Dans cet atelier, nous allons implémenter une caméra fixe. Pour ce faire, nous allons créer une hiérarchie de classe dont le sommet sera occupé par une classe abstraite, la classe Caméra, qui servira de Parent aux différentes caméras fixe, subjective, objective, etc. 2. La classe Caméra public abstract class Caméra : Microsoft.Xna.Framework.GameComponent protected const float OUVERTURE_OBJECTIF = MathHelper.PiOver4; //45 degrés protected const float DISTANCE_PLAN_RAPPROCHÉ = 0.001f; protected const float DISTANCE_PLAN_ÉLOIGNÉ = ; public Matrix Vue get; protected set; public Matrix Projection get; protected set; // Propriétés relatives au "Point de vue" public Vector3 Position get; protected set; public Vector3 Cible get; protected set; public Vector3 OrientationVerticale get; protected set; // Propriétés relatives au "Volume de visualisation" protected float AngleOuvertureObjectif get; set; protected float AspectRatio get; set; protected float DistancePlanRapproché get; set; protected float DistancePlanÉloigné get; set; public Caméra(Game jeu) : base(jeu) private void CréerPointDeVue() //Création de la matrice de vue (point de vue) Vue = Matrix.CreateLookAt(Position, Cible, OrientationVerticale); protected virtual void CréerPointDeVue(Vector3 position, Vector3 cible) //Initialisation des propriétés de la matrice de vue (point de vue) Position = position; Cible = cible; OrientationVerticale = Vector3.Up; //Création de la matrice de vue (point de vue) CréerPointDeVue(); Auteur : Vincent Echelard, 2015 Page 6
7 protected virtual void CréerPointDeVue(Vector3 position, Vector3 cible, Vector3 orientationverticale) //Initialisation des propriétés de la matrice de vue (point de vue) Position = position; Cible = cible; OrientationVerticale = orientationverticale; CréerPointDeVue(); //Création de la matrice de vue (point de vue) private void CréerVolumeDeVisualisation() //Création de la matrice de projection (volume de visualisation) Projection = Matrix.CreatePerspectiveFieldOfView(AngleOuvertureObjectif, AspectRatio, DistancePlanRapproché, DistancePlanÉloigné); protected virtual void CréerVolumeDeVisualisation(float angleouvertureobjectif, float distanceplanrapproché, float distanceplanéloigné) //Initialisation des propriétés de la matrice de projection (volume de visualisation) AngleOuvertureObjectif = angleouvertureobjectif; AspectRatio = Game.GraphicsDevice.Viewport.AspectRatio; DistancePlanRapproché = distanceplanrapproché; DistancePlanÉloigné = distanceplanéloigné; CréerVolumeDeVisualisation(); //Création de la matrice de projection (volume de visualisation) protected virtual void CréerVolumeDeVisualisation(float angleouvertureobjectif, float aspectratio, float distanceplanrapproché, float distanceplanéloigné) //Initialisation des propriétés de la matrice de projection (volume de visualisation) AngleOuvertureObjectif = angleouvertureobjectif; AspectRatio = aspectratio; DistancePlanRapproché = distanceplanrapproché; DistancePlanÉloigné = distanceplanéloigné; //Création de la matrice de projection (volume de visualisation) CréerVolumeDeVisualisation(); 3. La classe CaméraFixe public class CaméraFixe : Caméra public CaméraFixe(Game jeu, Vector3 positioncaméra, Vector3 cible, Vector3 orientation) : base(jeu) // Création de la matrice de vue CréerPointDeVue(positionCaméra, cible, orientation); // Création de la matrice de projection (volume de visualisation) CréerVolumeDeVisualisation(Caméra.OUVERTURE_OBJECTIF, Caméra.DISTANCE_PLAN_RAPPROCHÉ, Caméra.DISTANCE_PLAN_ÉLOIGNÉ); Auteur : Vincent Echelard, 2015 Page 7
8 E. Affichage d un modèle 3D 1. Introduction Dans cet atelier, l affichage d un modèle 3D sera basé sur la classe ObjetDeBase qui nous permettra de gérer les propriétés de base d un modèle 3D, son chargement et son affichage. 2. La classe ObjetDeBase public class ObjetDeBase : Microsoft.Xna.Framework.DrawableGameComponent string NomModèle get; set; RessourcesManager<Model> GestionnaireDeModèles get; set; Caméra CaméraJeu get; set; protected float Échelle get; set; protected Vector3 Rotation get; set; protected Vector3 Position get; set; protected Model Modèle get; private set; protected Matrix[] TransformationsModèle get; private set; protected Matrix Monde get; set; public ObjetDeBase(Game jeu, String nommodèle, float échelleinitiale, Vector3 rotationinitiale, Vector3 positioninitiale) : base(jeu) NomModèle = nommodèle; Position = positioninitiale; Échelle = échelleinitiale; Rotation = rotationinitiale; public override void Initialize() CalculerMonde(); base.initialize(); private void CalculerMonde() Monde = Matrix.Identity; Monde *= Matrix.CreateScale(Échelle); Monde *= Matrix.CreateFromYawPitchRoll(Rotation.Y, Rotation.X, Rotation.Z); Monde *= Matrix.CreateTranslation(Position); protected override void LoadContent() CaméraJeu = Game.Services.GetService(typeof(Caméra)) as Caméra; GestionnaireDeModèles = Game.Services.GetService(typeof(RessourcesManager<Model>)) as RessourcesManager<Model>; Modèle = GestionnaireDeModèles.Find(NomModèle); TransformationsModèle = new Matrix[Modèle.Bones.Count]; Modèle.CopyAbsoluteBoneTransformsTo(TransformationsModèle); public override void Draw(GameTime gametime) Auteur : Vincent Echelard, 2015 Page 8
9 foreach (ModelMesh maille in Modèle.Meshes) Matrix mondelocal = TransformationsModèle[maille.ParentBone.Index] * GetMonde(); foreach (ModelMeshPart portiond lage in maille.meshparts) BasicEffect effet = (BasicEffect)portionD lage.Effect; effet.enabledefaultlighting(); effet.projection = CaméraJeu.Projection; effet.view = CaméraJeu.Vue; effet.world = mondelocal; maille.draw(); public virtual Matrix GetMonde() return Monde; Auteur : Vincent Echelard, 2015 Page 9
10 F. Travail à réaliser Vous devez créer un nouveau composant nommé ObjetDeDémo, qui nous permettra d effectuer diverses transformations sur le modèle affiché. Ce composant devra avoir un comportement similaire à celui de l exemple disponible sur le site Web. Il devra donc répondre aux commandes énumérées dans le tableau ci-dessous : Touche du clavier Action 1 Démarrer/arrêter la rotation sur l axe des Y (yaw) 2 Démarrer/arrêter la rotation sur l axe des X (pitch) 3 Démarrer/arrêter la rotation sur l axe des Z (roll) <espace> Rétablir les angles de rotation initiaux + Agrandir le modèle (maximum 100%) - Réduire le modèle (minimum 0.5%) De plus, la signature du constructeur de votre composant devra être la suivante : public ObjetDeDémo(Game jeu, String nommodèle, float échelleinitiale, Vector3 rotationinitiale, Vector3 positioninitiale, float intervallemaj) G. Modalité de remise Vous devrez remettre, par Colnet, la version modifiée du composant ObjetDeDémo d ici minuit le mercredi 11 novembre Votre fichier d archives sera nommé de la façon habituelle, soit «Atelier 11 - Nom Prénom». Pour ceux qui décideraient de faire le travail en équipe, le nom prendra la forme «Atelier 11 - Nom1 Prénom1 - Nom2 Prénom2». Auteur : Vincent Echelard, 2015 Page 10
Pré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é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é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é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é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étailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 - Année 2004-2005 auteur : Frédéric Vernier semaine : 11-16 octobre 2004 conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
Plus en détailMise en scène d un modèle dans l espace 3D
CHAPITRE 3 Mise en scène d un modèle dans l espace 3D Blender permet de construire des espaces à la manière d une scène de théâtre. Pour cela, il présente dès l ouverture tout ce dont on a besoin : un
Plus en détailConstruire des plug-ins pour SAS Management Console SAS 9.1
Construire des plug-ins pour SAS Management Console SAS 9.1 Janvier 2005 Sommaire 1 INTRODUCTION... 3 1.1 OBJECTIFS... 3 1.2 PERIMETRE... 3 2 LES COMPOSANTS DE SAS MANAGEMENT CONSOLE... 4 3 LA CONSTRUCTION
Plus en détailFlex. Lire les données de manière contrôlée. Programmation Flex 4 Aurélien VANNIEUWENHUYZE
Flex Lire les données de manière contrôlée 1 Plan Lier les données Stocker les données Valider les données 2 Gérer des données Lier des données La notion de DataBinding est l une des plus importantes du
Plus en détailObjets et Programmation. origine des langages orientés-objet
Objets et Programmation origine des langages orientés-objet modularité, encapsulation objets, classes, messages exemples en Java héritage, liaison dynamique G. Falquet, Th. Estier CUI Université de Genève
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étailPackage Java.util Classe générique
Package Java.util Classe générique 1 Classe Vector La taille est dynamique: dès qu un tableau vectoriel est plein, sa taille est doublée, triplée, etc. automatiquement Les cases sont de type Object add(object
Plus en détailProgrammation Par Objets
Programmation Par Objets Structures de données package java.util B. Carré Polytech Lille 1 Tableaux et structures de données Tableaux «Objets» taille fixe type des éléments : primitif (homogène) ou objets
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étailChapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
Plus en détailPROJET DE MODELISATION CASERNE SERGEANT BLANDAN
Boris BRUGEVIN Sylvain GIORIA PROJET DE MODELISATION CASERNE SERGEANT BLANDAN Master 2 Programmation et Développement Université Lumière LYON 2 - GAMAGORA 2007-2008 II.. PRESENTATIION DU PROJET Ce projet
Plus en détailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Plus en détailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 Année 2004-2005 Auteur : Frédéric Vernier Semaine : 11-16 octobre 2004 Conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
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étailLMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour
LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections
Plus en détail.NET - Classe de Log
.NET - Classe de Log Classe permettant de Logger des données Text Dans tous les projets, il est indispensable de pouvoir stocker de l'information textuelle : Pour le suivi des erreurs Pour le suivi de
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é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étailConnexion à une base de données. Connexion à une base de données. Connexion à une base de données Développement d'une application
On souhaite réaliser la connexion d'un programme avec des sources de données Ici, des bases de données relationnelles Deux approches sont possibles qui mettent en œuvre chacune son propre jeu de classes
Plus en détailTP Blender n 2 : Importation d un modèle SketchUp et animation
TP Blender n 2 : Importation d un modèle SketchUp et animation Service de Conception Géométrique Université de Liège Aérospatiale et Mécanique Conçu avec Blender 2.66 et SketchUp 8 De SketchUp à Blender
Plus en détailRapport de Mini-Projet en ArcGIS Engine
Rapport de Mini-Projet en ArcGIS Engine Réalisée par : Asmae BENMESSAOUD 3ème Année Cycle d Ingénieur Géoinformation Année Universitaire 2010- Sommaire 1 Introduction L analyse géographique et la visualisation
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étailProgrammation en Java IUT GEII (MC-II1) 1
Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)
Plus en détailLe programme détaillé. Salle A07 Salle A06 Salle A04. Initiation à DirectX. Création de Mods Minecraft
Le programme détaillé 14h30 Salle A07 Salle A06 Salle A04 D-Wod : Simulation de cheveux Initiation à DirectX Bruno Gaumétou Malek Bengougam http://www.d-wod.com/ 16h00 Wassa : Reconnaissance Faciale Création
Plus en détailReconstruction de bâtiments en 3D à partir de nuages de points LIDAR
Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR Mickaël Bergem 25 juin 2014 Maillages et applications 1 Table des matières Introduction 3 1 La modélisation numérique de milieux urbains
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étailClasses et Objets en Ocaml.
Classes et Objets en Ocaml. Didier Rémy 2001-2002 http://cristal.inria.fr/ remy/mot/2/ http://www.enseignement.polytechnique.fr/profs/informatique/didier.remy/mot/2/ Cours Exercices Slide 1 1. Objets 2.
Plus en détailServeur d'application Client HTML/JS. Apache Thrift Bootcamp
Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/
Plus en détailCette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :
Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens
Plus en détailVirtual Universe aperçu numéro 1
Virtual Universe aperçu numéro 1 Cet aperçu va vous permettre d observer quelques aspects et fonctionnalités du futur produit Virtual Universe. Cet aperçu est encapsulé dans un exécutable généré par AUTOMGEN8.
Plus en détailEncapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets.
Encapsulation L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets. La visibilité dépend des membres : certains membres peuvent être visibles et d'autres
Plus en détailCréation d objet imbriqué sous PowerShell.
Création d objet imbriqué sous PowerShell. Par Laurent Dardenne, le 13/01/2014. Niveau Ce tutoriel aborde la création d objet composé, c est-à-dire que certains de ses membres seront eux-mêmes des PSObjects.
Plus en détailJava Licence Professionnelle CISII, 2009-2010. Cours 2 : Classes et Objets
Licence Professionnelle CISII, 2009-2010 Cours 2 : Classes et Objets 1 Classes et Objets Objectifs des LOO : - Manipuler des objets - Découper les programmes suivant les types des objets manipulés - Regrouper
Plus en détailSYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8
SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8 INTRODUCTION Bonjour à tous; Aujourd hui je publie une nouvelle version de l adaptation de la Sync Framework Toolkit,
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étailLes structures. Chapitre 3
Chapitre 3 Les structures Nous continuons notre étude des structures de données qui sont prédéfinies dans la plupart des langages informatiques. La structure de tableau permet de regrouper un certain nombre
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détail1. Installation d'un serveur d'application JBoss:
EPITA Ala Eddine BEN SALEM App-Ing2 J2EE T.P. 4 EJB3, Serveur d'application JBoss 1. Installation d'un serveur d'application JBoss: télécharger l'archive du serveur JBoss à l'adresse: http://sourceforge.net/projects/jboss/files/jboss/jboss-5.0.0.ga/jboss-5.0.0.ga.zip/download
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é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étailWebParts. Version 1.0
WebParts Version 1.0 Z 2 WebPart 06/05/09 Sommaire 1 Introduction... 3 2 Le développement d une WebPart... 4 2.1 Les outils de développement... 4 2.2 WebPart Page... 4 2.3 Création d une WebPart... 4 3
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en détailConstruire une application marketing Facebook sur la plateforme Windows Azure
Construire une application marketing Facebook sur la plateforme Windows Azure Lorsque le «Social Effect» est au rendez-vous, comment s assurer que votre application va supporter la montée en charge? Nous
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étailbasée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML
basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes
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étailOnce the installation is complete, you can delete the temporary Zip files..
Sommaire Installation... 2 After the download... 2 From a CD... 2 Access codes... 2 DirectX Compatibility... 2 Using the program... 2 Structure... 4 Lier une structure à une autre... 4 Personnaliser une
Plus en détailMEGA ITSM Accelerator. Guide de démarrage
MEGA ITSM Accelerator Guide de démarrage MEGA 2013 1ère édition (janvier 2013) Les informations contenues dans ce document pourront faire l objet de modifications sans préavis et ne sauraient en aucune
Plus en détailApplet pour visualiser les variables «automate» notifiées
Applet pour visualiser les variables «automate» notifiées Sommaire 1. Introduction...2 2. Lecture de variables «automate» notifiées...2 2.1. IHM servant au test :...2 2.2. Codage de l'applet :...2 3. Codage
Plus en détailImportation et exportation de contenu
Importation et exportation de contenu Bienvenue dans Corel DESIGNER, programme de dessin vectoriel complet destiné à la création de graphiques techniques. Dans ce didacticiel, vous allez importer un fichier
Plus en détailUne introduction à la technologie EJB (2/3)
Une introduction à la technologie EJB (2/3) 1 Les singletons des EJB 3.1 1.1 Synchronisation gérée manuellement Depuis la version 3.1, des EJB Statless à instance unique sont maintenant disponibles : ce
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étailimovie 11 Créer un projet Menu / Fichier / Nouveau projet... Choisir le format : Standard (16/9). Importer des «!plans!» 1.
imovie 11 Créer un projet Menu / Fichier / Nouveau projet... Choisir le format : Standard (16/9). Importer des «!plans!» 1. Depuis une caméra Caméscope à bande Mini DV Caméscope à carte mémoire 2. À partir
Plus en détailBIRT (Business Intelligence and Reporting Tools)
BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»
Plus en détailCorrigés des premiers exercices sur les classes
Corrigés des premiers exercices sur les classes Exercice 2.1.1 utilisation d une classe Voici le texte d une classe représentant de façon sommaire un compte bancaire et les opérations bancaires courantes.
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étailCOURS AUTOCAD. Création et utilisation des blocs. b leclerc. ERP Jean Moulin METZ
COURS AUTOCAD Création et utilisation des blocs QU EST-CE QU UN BLOC? C est un élément de dessin, auquel peut être associé du texte (des attributs ). Un bloc constitue un élément de bibliothèque. Il peut
Plus en détailMAÎTRISE DE L ENVIRONNEMENT WINDOWS VISTA
MAÎTRISE DE L ENVIRONNEMENT WINDOWS VISTA OBJECTIFS : manipuler les fenêtres et l environnement Windows, gérer ses fichiers et dossiers, lancer les applications bureautiques présentes sur son poste. PUBLIC
Plus en détailSHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5
SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N
Plus en détailPremiers Pas en Programmation Objet : les Classes et les Objets
Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.
Plus en détailGOL502 Industries de services
GOL502 Industries de services Conception d un service Partie IIb Version 2013 Introduction Conception d un service partie IIb Nous verrons dans ce chapitre Modélisation d un service; Langage de modélisation
Plus en détailNouveautés FDS 2015. Pour créer des équipements 2D et les publier à partir d'autocad
Nouveautés FDS 2015 Pour créer des équipements 2D et les publier à partir d'autocad Vous pouvez désormais réutiliser le contenu AutoCAD existant en tant qu'équipements d'usine. Cette fonction prend également
Plus en détailEducation Delivery Intelligent Tool
Education Delivery Intelligent Tool Projet AMO2 Maxence RAOUX Joachim SEGALA RICM 4 Avril 2012 Sommaire I. Presentation du projet... 2 1. Contexte... 2 2. Demande... 2 3. Spécifications... 2 II. Guide
Plus en détailGuide de l utilisateur. Faites connaissance avec la nouvelle plateforme interactive de
Guide de l utilisateur Faites connaissance avec la nouvelle plateforme interactive de Chenelière Éducation est fière de vous présenter sa nouvelle plateforme i+ Interactif. Conçue selon vos besoins, notre
Plus en détailDéveloppement d un logiciel de messagerie instantanée avec Dotnet (version simplifiée)
Développement d un logiciel de messagerie instantanée avec Dotnet (version simplifiée) Propriétés Description Intitulé long Formation concernée Matière Présentation Développement d un logiciel de messagerie
Plus en détailTP JAVASCRIPT OMI4 TP5 SRC1 2011-2012
TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE
Plus en détail1. Base de données SQLite
Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis
Plus en détail4. Groupement d objets
Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux
Plus en détailDurée estimée :1 journée Date de la réalisation : 2011. Description Fournisseur Référence Nombre PU HT LM35CZ, LM35AZ LM35DZ
001 Titre : Mesure de température interfacée par carte Arduino Type de réalisation : montage électronique, de surveillance de température Concepteur : C. Rouviere Coordonnées : Laboratoire lbv villefranche/mer
Plus en détailRafraichissement conditionné d'une page en.net
Rafraichissement conditionné d'une page en.net Test avec AJAX pour rafraichissement En utilisant AJAX, voici une possibilité de faire un rafraichissement conditionné. Nous verrons dans cet article une
Plus en détailProgramme Compte bancaire (code)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; Programme Compte bancaire (code) namespace compte_bancaire /// Classe Program public
Plus en détailCréation d un service web avec NetBeans 5.5 et SJAS 9
Sommaire Création d un service web avec NetBeans 5.5 et SJAS 9 1. Présentation... 2 2. Création d un service web avec NetBeans... 2 2.1. Création d une application Web... 2 2.2. Création du service web...
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étailSQL Data Export for PS/PSS
Version 2.3.5 MANUEL D INSTRUCTIONS (M98232701-02-13B) CIRCUTOR, SA SOMMAIRE 1.- INSTALLATION DU LOGICIEL SQL DATA EXPORT... 3 1.1.- ACTIVER CONNEXIONS A DISTANCE DU SERVEUR SQL SERVER... 14 1.2.- DESINSTALLER
Plus en détailPROPOSITION. One ID. Références développement. Version 1.0 Juillet 2009. One ID
développement One ID PROPOSITION Version 1.0 Juillet 2009 One ID 1155 avenue du Clapas 34980 Saint Gély du Fesc FRANCE Téléphone : 33 (0) 4 67 12 00 48 Fax : 33 (0) 9 55 82 99 73 Web : http://www.one-id.fr
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étailDesign patterns. Design patterns - définition. Design patterns - avantages
Design patterns Conception UML Implantation Java Anne Lapujade 1 Design patterns - définition 2 v Objectif : proposer des solutions standardisées à des problèmes de conception classiques v Design pattern
Plus en détailRAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)
CLASSE RACINE Object ancêtre de toutes les classes RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) définit donc des méthodes héritées par toutes
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étailKWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO
_TUTO_module_magento Table des matières -1) - :...2-1.1) Introduction :...2-1.2) Description :...3-1.2.1) Schéma :...3-1.3) Mise en place :...4-1.3.1) MAGENTO :...4-1.3.1.1) Les Web Services :...4-1.3.1.2)
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étail2. Comprendre les définitions de classes
Conception objet en Java avec BlueJ une approche interactive 2. Comprendre les définitions de classes Analyser le contenu des classes David J. Barnes, Michael Kölling version française: Patrice Moreaux
Plus en détailOUTIL DE TRAVAIL COLLABORATIF
B i b l i o t h è q u e OUTIL DE TRAVAIL COLLABORATIF Septembre 2012 TitanPad est un outil de travail collaboratif permettant de prendre des notes ou de rédiger à plusieurs un même texte à distance en
Plus en détailA.P.I. Kuka Manuel de l utilisateur Version 0.0.5
A.P.I. Kuka Manuel de l utilisateur Version 0.0.5 Paul Chavent Kubrick 8 septembre 2003 1 kuka api 0.0.5 : Manuel de l utilisateur Table des matières 1 Utilisation sur le robot (serveur) 3 1.1 Installation............................................
Plus en détailTUTORIAL Microsoft Project 2010 Fonctionalités de base
TUTORIAL Microsoft Project 2010 Fonctionalités de base Microsoft Project est un logiciel de la suite Microsoft Office. Il s agit d un logiciel de gestion de projet et plus précisement de gestion de planning
Plus en détailNotions fondamentales du langage C# Version 1.0
Notions fondamentales du langage C# Version 1.0 Z 2 [Notions fondamentales du langage Csharp] [Date : 25/03/09] Sommaire 1 Tout ce qu il faut savoir pour bien commencer... 3 1.1 Qu est ce qu un langage
Plus en détailETUDE DE CAS en UML : GESTION DES COMMANDES DE PIECES FABRIQUEES PAR LA SOCIETE C
ETUDE DE CAS en UML : GESTION DES COMMANDES DE PIECES FABRIQUEES PAR LA SOCIETE C La société C fabrique des pièces métalliques réalisées dans son atelier. La société C est en relation commerciale uniquement
Plus en détailChapitre 3 : Repères et positionnement 3D
Chapitre 3 : Repères et positionnement 3D Modélisation 3D et Synthèse Fabrice Aubert fabrice.aubert@lifl.fr Master Informatique 2014-2015 F. Aubert (MS2) M3DS/ 3 - Repères et positionnement 3D 2014-2015
Plus en détail1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions
Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 4 : Fonctions La construction de fonctions dans un langage de programmation permet aux
Plus en détailAPI04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture
API04 Contribution Apache Hadoop: Présentation et application dans le domaine des Data Warehouses Introduction Cette publication a pour but de présenter le framework Java libre Apache Hadoop, permettant
Plus en détail2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE
2 Grad Info Soir Langage C++ Juin 2007 Projet BANQUE 1. Explications L'examen comprend un projet à réaliser à domicile et à documenter : - structure des données, - objets utilisés, - relations de dépendance
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étailCompléments de documentation Scilab : affichage de texte et formatage de nombres
Université des Sciences et Technologies de Lille U.F.R. de Mathématiques Pures et Appliquées Agrégation externe Année 2002-2003 Compléments de documentation Scilab : affichage de texte et formatage de
Plus en détailCours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan
Cours de C++ François Laroussinie Dept. d Informatique, ENS de Cachan 2 novembre 2005 Première partie I Introduction Introduction Introduction Algorithme et programmation Algorithme: méthode pour résoudre
Plus en détail