Geometry processingGeometry processing, or mesh processing, is an area of research that uses concepts from applied mathematics, computer science and engineering to design efficient algorithms for the acquisition, reconstruction, analysis, manipulation, simulation and transmission of complex 3D models. As the name implies, many of the concepts, data structures, and algorithms are directly analogous to signal processing and .
Modélisation tridimensionnelleLa modélisation tridimensionnelle est l'étape en infographie tridimensionnelle qui consiste à créer, dans un logiciel de modélisation 3D, un objet en trois dimensions, par ajout, soustraction et modifications de ses constituants. La révolution consiste à faire tourner un profil 2D autour d'un axe 3D : on obtient ainsi un volume de révolution. C'est la technique majoritairement utilisée dans le jeu vidéo, et le cinéma d'animation. La modélisation polygonale induit une marge d'erreur de proportions et de dimensions le plus souvent invisible à l'œil nu.
Parametric polymorphismIn programming languages and type theory, parametric polymorphism allows a single piece of code to be given a "generic" type, using variables in place of actual types, and then instantiated with particular types as needed. Parametrically polymorphic functions and data types are sometimes called generic functions and generic datatypes, respectively, and they form the basis of generic programming. Parametric polymorphism may be contrasted with ad hoc polymorphism.
Mesh (objet)Un en ou maillage est un objet tridimensionnel constitué de sommets, d'arêtes et de faces organisés en polygones sous forme de fil de fer dans une infographie tridimensionnelle. Les faces se composent généralement de triangles, de quadrilatères ou d'autres polygones convexes simples, car cela simplifie le rendu. Les faces peuvent être combinées pour former des polygones concaves plus complexes, ou des polygones avec des trous. L'étude des en fait partie importante de l'infographie tridimensionnelle.
Template processorA template processor (also known as a template engine or template parser) is software designed to combine templates with a data model to produce result documents. The language that the templates are written in is known as a template language or templating language. For purposes of this article, a result document is any kind of formatted output, including documents, web pages, or source code (in source code generation), either in whole or in fragments.
Générateur de site statiqueUn générateur de site statique, souvent abrégé SSG (Static Site Generator) est un programme informatique permettant de réaliser des sites web statiques. Les premiers sites web sont statiques avant que ne se popularisent les sites web dynamiques, générés par des CMS. Ces générateurs de sites dynamiques sont plus simples à utiliser que les éditeurs de texte avec lesquels les sites web statiques étaient générés et par conséquent beaucoup de sites sont dynamiques en raison de la facilité à les produire et non en raison d'un réel besoin de fonctions dynamiques.
Polymorphisme (informatique)En informatique et en théorie des types, le polymorphisme, du grec ancien polús (plusieurs) et morphê (forme), est le concept consistant à fournir une interface unique à des entités pouvant avoir différents types. Par exemple, des opérations telles que la multiplication peuvent ainsi être étendues à des scalaires aux vecteurs ou aux matrices, l'addition, des scalaires aux fonctions ou aux chaînes de caractères, etc.
Infographie tridimensionnelleLa synthèse d'images tridimensionnelles, souvent appelée infographie tridimensionnelle ou infographie 3D (3D pour trois dimensions : x, y, z, les trois axes qui constituent le repère orthonormé de la géométrie dans l'espace), est un ensemble de techniques notamment issues de la CAO qui permet la représentation d'objets en perspective sur un moniteur d'ordinateur. Elle est actuellement très utilisée en art numérique dans l'industrie du film, initiée par les studios Pixar, Disney, DreamWorks, Blue Sky, Illumination et ILM et, .
Type classIn computer science, a type class is a type system construct that supports ad hoc polymorphism. This is achieved by adding constraints to type variables in parametrically polymorphic types. Such a constraint typically involves a type class T and a type variable a, and means that a can only be instantiated to a type whose members support the overloaded operations associated with T.
Métaprogrammation avec des patronsLa métaprogrammation avec des patrons est une technique de programmation dans laquelle les patrons sont utilisés de sorte que le compilateur, lors de la compilation du code, exécute un programme. Ces programmes peuvent générer des constantes ou des structures de données. Cette technique est utilisée principalement dans le langage de programmation C++. L'exemple simple de calcul de factorielle avec récursion illustre bien ce qu'est la « programmation lors de la compilation ».
Primitive (modélisation)vignette|Primitives communes en 2D (triangle, rectangle, ellipse, droite, polygone) Dans le vocabulaire de la 3D, les primitives sont des formes géométriques de base, pouvant être créées sur demande par le logiciel, mathématiquement parfaites car régies par des formules mathématiques (par opposition aux objets dits « maillés »). Les formes pouvant être générées sont les suivantes (liste non exhaustive, différente selon les logiciels) : Sphère Cube Cylindre Plan Pyramide Cône Tore Théière de l'Utah Les primitives existent également en 2D.
MeshLabMeshLab est un logiciel libre de traitement de maillages 3D. Ce programme est développé depuis 2005 par l' et le CNR, dans le but de fournir un outil généraliste pour la manipulation et l'édition de modèles 3D importants, provenant notamment de scans 3D. Il propose différents filtres de nettoyage du maillage (suppression des vertex non référencés par exemple), des outils de re-maillage (simplification, subdivision, reconstruction de surfaces...) et des fonctions de suppression de bruit (adoucissement, etc.).
Méthode des éléments finisEn analyse numérique, la méthode des éléments finis (MEF, ou FEM pour finite element method en anglais) est utilisée pour résoudre numériquement des équations aux dérivées partielles. Celles-ci peuvent par exemple représenter analytiquement le comportement dynamique de certains systèmes physiques (mécaniques, thermodynamiques, acoustiques).
Méthode sans maillageIn the field of numerical analysis, meshfree methods are those that do not require connection between nodes of the simulation domain, i.e. a mesh, but are rather based on interaction of each node with all its neighbors. As a consequence, original extensive properties such as mass or kinetic energy are no longer assigned to mesh elements but rather to the single nodes. Meshfree methods enable the simulation of some otherwise difficult types of problems, at the cost of extra computing time and programming effort.
C++C++ est un langage de programmation compilé permettant la programmation sous de multiples paradigmes, dont la programmation procédurale, la programmation orientée objet et la programmation générique. Ses bonnes performances, et sa compatibilité avec le C en font un des langages de programmation les plus utilisés dans les applications où la performance est critique. Créé initialement par Bjarne Stroustrup dans les années 1980, le langage C++ est aujourd'hui normalisé par l'ISO.
GénéricitéEn programmation, la généricité (ou programmation générique), consiste à définir des algorithmes identiques opérant sur des données de types différents. On définit de cette façon des procédures ou des types entiers génériques. On pourrait ainsi programmer une pile, ou une procédure qui prend l'élément supérieur de la pile, indépendamment du type de données contenues. C'est donc une forme de polymorphisme, le « polymorphisme de type » dit aussi « paramétrage de type » : en effet, le type de donnée général (abstrait) apparaît comme un paramètre des algorithmes définis, avec la particularité que ce paramètre-là est un type.
Mesh generationMesh generation is the practice of creating a mesh, a subdivision of a continuous geometric space into discrete geometric and topological cells. Often these cells form a simplicial complex. Usually the cells partition the geometric input domain. Mesh cells are used as discrete local approximations of the larger domain. Meshes are created by computer algorithms, often with human guidance through a GUI , depending on the complexity of the domain and the type of mesh desired.
3D scanning3D scanner is the process of analyzing a real-world object or environment to collect three dimensional data of its shape and possibly its appearance (e.g. color). The collected data can then be used to construct digital 3D models. A 3D scanner can be based on many different technologies, each with its own limitations, advantages and costs. Many limitations in the kind of objects that can be digitised are still present. For example, optical technology may encounter many difficulties with dark, shiny, reflective or transparent objects.
Graphisme 2DLe graphisme 2D, ou graphisme en deux dimensions, est la génération par le biais d'un ordinateur, d' principalement issues de modèles en deux dimensions (tels que des modèles géométriques en 2D, des textes et des images numériques) et des techniques spécifiques qui leur sont affiliées. Le mot peut aussi bien se référer à la branche de l'informatique qui comprend ces techniques que pour les modèles eux-mêmes.
ShaderUn shader ou nuanceur (le mot est issu du verbe anglais to shade pris dans le sens de « nuancer ») est un programme informatique, utilisé en , pour paramétrer une partie du processus de rendu réalisé par une carte graphique ou un moteur de rendu logiciel. Il sert à décrire l'absorption et la diffusion de la lumière, la à utiliser, les réflexions et réfractions, l'ombrage, le déplacement de primitives et des effets post-traitement.