Brevet FR2822274A1 — publié le 20020920

Procédé d'affichage et de manipulation d'un objet en trois dimensions et applications correspondantes 1 Domaine de l'invention et applications 1.1 Domaine de l'invention Le domaine de l'invention est celui de l'affichage et la manipulation d'une géométrie sur des dispositifs d'affichages. Plus précisément, l'invention concerne une technique d'affichage et de manipulation d'une géométrie d'un espace en trois dimensions sur un support plan affiché à l'aide d'un système d'affichage interactif commandé par ordinateur. Plus précisément encore, l'invention concerne une technique de projection d'un objet géométrique en trois dimensions sur une fenêtre d'affichage et une technique de manipulation résultante. On entend ici par objet géométrique en trois dimensions ou par objet en trois dimensions , une géométrie définie dans un espace en trois dimensions pouvant être indifféremment une ligne dudit espace, un rectangle dudit espace et plus généralement une courbe dudit espace, une surface dudit espace ou un volume dudit espace. Par ailleurs, pour ne pas surcharger la présente discussion, ces objets géométriques en trois dimensions peuvent être aussi bien statiques qu'animés dans le temps et l'espace. De plus on entend par affichage et manipulation d'un objet, aussi bien l'affichage et la manipulation d'un unique objet que l'affichage et la manipulation d'un groupe de plusieurs objets. 1. 2 Exemples d'applications L'invention trouve des applications dans tous les domaines où il est utile voire nécessaire de visualiser, manipuler simplement et intuitivement un objet géométrique en trois dimensions ou un ensemble d'objets dans un contexte graphique en deux dimensions. A titre indicatif, l'invention peut notamment s'appliquer aux domaines de : - l'édition et l'affichage de document multimédia tels que les CDroms multimédias ou les bornes interactives. L'insertion et la manipulation d'un objet graphique en trois dimensions dans une présentation multimédia à base de texte, d'images et de vidéo permet d'enrichir le contenu graphique. - l'édition et l'affichage de pages Web. A nouveau, l'insertion et la manipulation d'un objet graphique en trois dimensions dans une page Web permet de mettre en ligne un type de contenu plus évolué, par exemple offrir la possibilité à un client d'un site d'achat en ligne d'apprécier interactivement un article mis en vente. - la création graphique en deux dimensions tel que le dessin vectoriel assisté par ordinateur. L'insertion d'un objet graphique en trois dimensions dans un dessin vectoriel en deux dimensions permet d'obtenir des effets de rendu volumique et de perspective plus facilement qu'avec des outils d'édition dédiés au dessin en deux dimensions. - la modélisation en trois dimensions. Les logiciels de création graphique 3D ainsi que les logiciels de conception assisté par ordinateur (CAO) offrent des fonctionnalités dédiées à la création de modèles géométriques complexes en trois dimensions. L'affichage et la manipulation intuitive de ces modèles est un élément capital du processus de modélisation car il conditionne la qualité de la perception de l'espace par l'utilisateur et son confort. - la conception de jeux vidéos. Dans ce domaine d'application, les concepteurs de jeux vidéos emploient nombre d'artifices visuels aussi bien en deux dimensions qu'en trois dimensions afin d'illustrer les environnements graphiques variés avec lesquels interagissent les utilisateurs. La manipulation intuitive d'objets graphiques en trois dimensions sur une présentation en deux dimensions représente à la fois une solution ergonomique et un effet visuel spectaculaire. 2 Art antérieur 2.1 Généralités De nombreuses techniques de l'art antérieur proposent des solutions répondant au problème classique de la manipulation d'un objet en trois dimensions sur un support plan tel qu'un écran d'ordinateur à l'aide d'un système de pointage bidimensionnel tel qu'une souris. Les systèmes informatiques conçus pour manipuler des objets en trois dimensions dans l'espace à l'aide de tels dispositifs présentent deux principaux inconvénients : - ils sont complexes, car ils font intervenir un grand nombre de paramètres que l'utilisateur doit assimiler simultanément s'il souhaite précisément manipuler de tels objets. - ils ne sont pas intrinsèquement adaptés aux contraintes planes qu'imposent les dispositifs d'affichage et d'interaction en deux dimensions les plus répandus, comme par exemple un écran d'ordinateur couplé à un pointeur de souris. En d'autres termes, interagir sur un volume dans un environnement plan n'est pas une opération intuitive. Par ailleurs, les techniques classiques d'affichage et de manipulation d'un objet en trois dimensions mises en oeuvre dans ces systèmes reproduisent un effet de perspective destiné à permettre de percevoir l'espace sur un dispositif d'affichage en deux dimensions. Dès lors, tout déplacement ou orientation d'un objet dans l'espace a pour conséquence de modifier la représentation spatiale dudit objet sur le dispositif d'affichage. Ceci peut présenter un avantage dans certains types d'applications telles que l'immersion et la navigation dans une maquette digitale. Cependant, ceci présente un inconvénient dans les applications où il est préférable de manipuler l'image d'un objet géométrique en trois dimensions c'est-à-dire de manipuler ledit objet en conservant son effet de perspective intact. Parmi ces applications citons les systèmes de montage vidéo numérique dont la finalité est de permettre l'assemblage et la composition d'éléments graphiques animés et les systèmes informatiques de dessin vectoriel en deux dimensions. Dans toute la suite de la présente discussion, on nommera cette propriété : propriété de conservation de la perspective apparente d'un objet. Plusieurs techniques d'affichage et de manipulation d'objets géométriques en trois dimensions sont déjà connues. Les plus répandues sont principalement mises oeuvre dans deux familles de systèmes informatiques : - les systèmes et outils informatiques de graphisme en trois dimensions - les systèmes et outils informatiques de graphisme en deux dimensions 2.2 Les systèmes et outils de graphisme en trois dimensions Parmi ceux-ci, les outils de modélisation d'objets en trois dimensions emploient une technique classique d'affichage et de manipulation reposant sur une approche dite multi-vues . Afin de rendre compte à l'utilisateur de l'espace dans lequel se situe l'objet modélisé, ces systèmes affichent simultanément le même objet sous plusieurs angles de vue remarquables, par exemple une vue de haut, une vue de droite, une vue gauche et une vue en perspective dudit objet. Une manipulation par l'utilisateur de l'objet modélisé sur la vue de haut aura pour effet de contraindre les interactions possibles dans le plan horizontal de l'objet. En outre, une manipulation par l'utilisateur de l'objet modélisé sur la vue de gauche aura pour effet de contraindre les interactions possibles dans le plan vertical de l'objet. Cette technique présente typiquement l'ensemble des inconvénients déjà cités : - elle est complexe et non intuitive. L'utilisateur est contraint d'opérer une conversion mentale des actions qu'il réalise dans un espace en deux dimensions (l'écran et la souris) vers un espace en trois dimensions (l'objet manipulé dans l'espace). Un utilisateur peut trouver difficile de manipuler un objet géométrique en trois dimensions s'il doit en permanence surveiller simultanément quatre vues différentes de ce dernier, - elle ne permet pas de conserver la perspective apparente d'un objet manipulé. D'autres approches de l'art antérieur requièrent l'emploi de dispositifs de pointage particuliers tels que les joysticks ou souris tridimensionnelles qui offrent des degrés de liberté supplémentaires adaptés à la manipulation d'objets en trois dimensions. Cependant, ces dispositifs de pointage particuliers n'équipent généralement pas les dispositifs d'affichages interactifs classiques tels que les microordinateurs multimédia et ne sont destinés qu'à un usage très spécifique. Le brevet US 5,124, 693 de International Business Machines de Armonk, New York, du 23 juin 1992 décrit un procédé permettant à l'utilisateur de spécifier de manière interactive la position sur le dispositif d'affichage d'un point de fuite d'une projection de type perspective. Ce point de fuite n'est pas attaché à l'objet en tant que tel et sa position reste constante sur le dispositif d'affichage lors d'une manipulation de l'objet par l'utilisateur. Le brevet US 5,268, 677 de The Grass Valley Group Inc. de Nevada City, Californie, du 7 décembre 1993 décrit un procédé permettant à l'utilisateur de manipuler la surface de projection d'une scène graphique. L'utilisateur peut appliquer un dimensionnement, une rotation ou une translation à ladite surface, lui permettant de visualiser sur le dispositif d'affichage des régions initialement invisibles. Ce procédé s'applique à la surface de projection et non aux objets pris séparément. D'autre part le dimensionnement n'est effectué que par rapport au centre du dispositif d'affichage. 2. 3 Les systèmes et outils de graphisme en deux dimensions Ces systèmes informatiques, tels que les outils de retouche d'images ou de dessin vectoriel sont, dans la plupart des cas, plus simples et plus intuitifs que ceux précédemment mentionnés. Par ailleurs, ces systèmes informatiques le sont d'autant plus lorsqu'ils sont couplés à des dispositifs d'affichage et d'interaction en deux dimensions tels qu'un écran d'ordinateur et une souris. Ces outils mettent en oeuvre des éléments graphiques plan tels que les images, les courbes ou les surfaces planes. Un tel élément graphique est classiquement identifié et manipulé à l'aide d'un guide graphique rectangulaire affiché en surimpression délimitant la frontière dudit élément et respectant l'orientation dudit élément. Ces outils présentent habituellement trois modes de manipulation de tels éléments graphiques : un mode de positionnement en translation, un mode de dimensionnement et un mode d'orientation. Par exemple, dans un mode de dimensionnement d'un élément graphique, les arêtes et sommets du guide graphique rectangulaire englobant constituent les points de repères fournis à l'utilisateur pour ajuster interactivement la taille dudit élément à l'aide d'un dispositif de pointage tel qu'une souris. Parmi ces outils, certains d'entre eux offrent également la possibilité d'émuler sur de tels éléments graphiques un effet de perspective apparente constante quelque soit la translation ou l'orientation appliquée et qui peut s'apparenter à une technique d'affichage et de manipulation simplifiée d'objets géométriques en trois dimensions. L'inconvénient majeur de ces techniques de l'art antérieur est qu'elles reposent sur un traitement des données en deux dimensions et ne sont pas adaptées à la gestion d'agencements complexes d'objets géométriques en trois dimensions. Notamment, elles ne permettent pas de manipuler de tels objets affichés à l'aide du même tampon de profondeur (nommé depth buffer ou z-buffer selon la terminologie anglo-saxonne). 2.4 Exemples de techniques connues L'affichage d'un objet géométrique en trois dimensions sur une surface d'affichage tel qu'un écran d'ordinateur requiert l'emploi d'une technique de projection dudit objet sur ladite surface. Plusieurs techniques de projection sont déjà connues. La plus répandue fonctionne à l'aide de la définition d'une caméra virtuelle matérialisant la surface d'affichage ou plan de vue dans l'espace de la scène. Les paramètres suivants définissent complètement cette caméra virtuelle : - un point de l'espace appelé oeil ou point de vue, - un point de l'espace appelé cible, - dans le plan passant par l'oeil et orthogonal à la direction oeil-cible, on définit une base orthonormée du plan par deux vecteurs identifiant deux directions bas-haut et gauche-droite. On introduit alors deux repères de l'espace et deux repères du plan : - le repère tridimensionnel absolu dans lequel sont exprimées les coordonnées des objets de la scène, - le repère tridimensionnel de la caméra définie précédemment, - le repère tridimensionnel du plan de vue associé à la caméra, - le repère de la surface d'affichage homogène avec le procédé de génération de l'image finale. Dans la plupart des cas il s'agit d'un système de coordonnées exprimées en pixels. La technique de projection d'un objet géométrique en trois dimensions consiste alors à exprimer les coordonnées dudit objet dans le repère de la surface d'affichage en effectuant successivement les trois opérations de changement de repère obtenues à l'aide des quatre repères énumérés précédemment. Classiquement, ces trois opérations se font en coordonnées homogènes (x, y, z, w) et font intervenir les matrices M et P et une transformation affine définies comme suit : - M est généralement une matrice carrée de dimension 4 de transformation de l'espace ayant pour but d'exprimer les coordonnées dudit objet dans le repère de la caméra virtuelle. - P est généralement une matrice carrée de dimension 4 de perspective conique ou orthogonale. - la transformation affine de dimension 3 est destinée à exprimer les coordonnées dudit objet dans le système de coordonnées du dispositif d'affichage après que celles-ci ont été converties en coordonnées x, y, z par division par le facteur de perspective. Cette technique classique de projection, comme la plupart des autres connues, présente l'inconvénient de ne pas conserver la perspective apparente dudit objet au cours d'une manipulation sur la surface d'affichage. 3 Les objectifs de l'invention L'invention a notamment pour objectif de pallier les différents inconvénients de la technique antérieure. Plus précisément, un objectif de l'invention est de fournir un procédé de projection d'un objet géométrique en trois dimensions sur une surface de projection d'affichage d'un dispositif d'affichage, permettant de manipuler ledit objet sur ladite surface à l'aide d'une vue unique et au moyen d'un dispositif de pointage en deux dimensions. Notamment, l'invention a pour objectif de fournir un tel procédé, conservant la perspective apparente dudit objet quelque soit la manipulation qui lui est appliquée sur ladite surface. Un autre objectif de l'invention est de fournir un tel procédé permettant d'agencer dans une scène graphique un ensemble ordonné d'objets en trois dimensions, pouvant être affichés à l'aide d'un même tampon de profondeur. L'invention a encore pour objectif de fournir un tel procédé, permettant le calcul et l'affichage d'un rectangle englobant la projection d'un objet en trois dimensions sur la surface de projection d'affichage possédant la position, la taille et l'orientation dudit objet manipulé. 4 Caractéristiques principales de l'invention Ces objectifs, ainsi que d'autres qui apparaîtront plus clairement par la suite, sont atteints selon l'invention à l'aide d'un procédé de projection et de manipulation d'un objet géométrique en trois dimensions d'une scène graphique, mis en oeuvre sur un dispositif d'affichage interactif commandé par ordinateur et couplé à un dispositif de pointage. Selon un premier aspect de l'invention, le procédé de projection mis en oeuvre est avantageusement organisé en trois étapes successives : - une étape constistant à appliquer une information de projection locale propre audit objet et indépendante des caractéristiques de la fenêtre d'affichage en deux dimensions, - une étape consistant à appliquer une information de de transformation de ladite projection locale sur la surface d'affichage en deux dimensions, - suivie d'une étape consistant à appliquer une information de projection globale faisant intervenir les caractéristiques et contraintes de ladite fenêtre d'affichage, ladite étape étant commune à l'ensemble des objets géométriques en trois dimensions constituant la scène graphique. De façon avantageuse, ladite étape de projection locale d'un objet géométrique assure naturellement la conservation de la perspective apparente au cours de toute manipulation dudit objet sur la surface de projection dudit dispositif d'affichage. Avantageusement, ledit objet géométrique est paramétré par le temps, ladite information de projection locale est paramétrée par le temps et ladite information de transformation de ladite projection locale est paramétrée par le temps. Selon un mode de réalisation avantageux, ladite étape de projection locale met en oeuvre trois matrices carrées de dimensions 4 associées audit objet parmi lesquelles une matrice de transformation Mxo caractérisant la manipulation de la projection dudit objet sur la surface d'affichage. Ladite transformation Mxo peut être avantageusement décrite à l'aide d'un triplet de matrices S, R, T où S est une matrice de dimensionnement, R est une matrice de rotation et T est une matrice de translation. Avantageusement, ladite étape de projection globale met en oeuvre une matrice carrée de dimension 4 et deux transformations affines, destinées à convertir l'ensemble des objets résultants de l'étape précédente en objets de la surface d'affichage en deux dimensions, pouvant être affichés à l'aide d'un tampon de profondeur commun'. Ainsi l'invention concerne une technique de projection propre à chaque objet constituant la scène et non comme cela est classiquement le cas, une projection basée sur la définition d'une caméra commune (de multiples définitions de caméras virtuelles sont d'ailleurs connues). Selon un deuxième aspect de l'invention, le procédé de manipulation mis en oeuvre repose avantageusement sur une technique de génération et de mise à jour interactive des éléments de ladite matrice de transformation Mxo. Ledit procédé de manipulation est organisé en deux étapes successives : - une étape génération d'une information de translation et/ou de rotation et/ou de dimensionnement résultant d'un déplacement dudit dispositif de pointage, - une étape de mise à jour du triplet de matrices S, R, T décrivant ladite matrice de transformation Mxo où S est une matrice de dimensionnement, R est une matrice de rotation et T est une matrice de translation. 5 Liste des Figures D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel de l'invention, donnée à titre de simple exemple illustratif et non limitatif, et des dessins annexés parmi lesquels : - La Figure 1 présente un schéma d'une architecture typique de système d'ordinateurs sur laquelle la présente invention peut être mise en oeuvre. - La Figure 2 illustre la propriété de conservation de la perspective apparente d'un objet géométrique en trois dimensions au cours d'une translation. - La Figure 3 illustre l'effet visuel que génère la translation d'un objet géométrique en trois dimensions dans son repère absolu, suivant les techniques de l'art antérieur. - Les Figures 4 et 5 illustrent les différents repères intervenants dans le procédé de projection mis en oeuvre dans la présente invention. - La Figure 6 illustre les six étapes succéssive du procédé de projection. - Les Figure 7, 8 et 9 présentent un guide graphique rectangulaire délimitant un groupe d'objets géométriques en trois dimensions et respectant le positionnement, l'orientation et le dimensionnement dudit groupe d'objets sur la surface d'affichage. 6 Description d'un mode de réalisation détaillé L'architecture du système d'ordinateur du mode de réalisation préféré de la présente invention est représentée à la figure 1. Ce mode de réalisation préféré est mis en oeuvre sur un système classique d'ordinateur. Il est clair pour l'homme de l'art que des variantes de systèmes classiques d'ordinateurs peuvent être employées. En général, de tels systèmes illustrés par la Figure 1 comprennent un bus (100) pour la communication des informations, un processeur (101) couplé au bus (100) pour traiter l'information, une mémoire vive (102) couplée au bus (100) pour mémoriser des informations et des instructions pour le processeur (101), une mémoire morte facultative (103) couplée au bus (100) pour mémoriser des informations et instructions statiques pour le processeur (101), un dispositif de mémorisation (104) de données, par exemple un disque magnétique et une unité de disque, couplé au bus (100) pour mémoriser des informations et des instructions, un dispositif d'affichage (105) couplé au bus (100) pour afficher une information pour l'utilisateur de l'ordinateur, un dispositif d'entrée alphanumérique (106) qui inclut des touches alphanumériques et des touches de fonction et est couplé au bus (100) pour communiquer une information et ordonner des sélections au processeur (101), un dispositif de commande (107) de curseur couplé au bus (100) pour communiquer une information et ordonner des sélections au processeur (101), et un dispositif de génération (108) de signaux couplé au bus (100) pour communiquer des sélections d'ordres au processeur (101). Le dispositif d'affichage (105) peut être un dispositif à cristaux liquides ou LCD, un tube à rayons cathodiques ou CRT, ou au autre dispositif d'affichage approprié. Le dispositif de pointage (107) permet à l'utilisateur de l'ordinateur de signaler dynamiquement le déplacement bidimensionnel d'un symbole visible sur l'écran d'affichage du dispositif d'affichage (105). De nombreuses mises en oeuvre du dispositif de pointage sont connues dans l'art, par exemple : un souris, un joystick, un jeu de touches spéciales du dispositif d'entrée alphanumérique (106) susceptibles de signaler un déplacement dans une direction donnée. En plus des ressources d'ordinateur décrites ci-dessus, la présente invention fonctionne en conjonction avec un système d'exploitation et des fonctions de système susceptibles d'afficher sur le dispositif d'affichage des fenêtres, une information graphique et textuelle à l'intérieur des fenêtres, et d'autres images. Des fonctions de systèmes destinées à réaliser l'interface avec le dispositif de commande d'affichage et des dispositifs d'entrée utilisateur sont également nécessaires. Ces ressources sont des composants classiques de traitement connus dans l'art des ordinateurs. 6.1 Définitions On introduit ci-après les définitions des notions nécessaires à la compréhension claire des différents procédés qui seront décrit par la suite. Dans tout ce qui suit et afin de clarifier la présentation, les noms de variables associées individuellement à un objet donné contiennent l'indice o. Par ailleurs, le terme objet désigne un objet géométrique en trois dimensions appartenant à une scène graphique plus succinctement nommée scène . On rappelle qu'on entend ici par objet géométrique en trois dimensions ou par objet en trois dimensions , toute géométrie définie dans un espace en trois dimensions pouvant être indifféremment un segment dudit espace, un rectangle dudit espace et plus généralement une courbe dudit espace, une surface dudit espace ou un volume dudit espace. On rappelle également qu'un tel objet peut être statique ou animé dans l'espace et le temps. On rappelle enfin qu'un tel objet peut être aussi bien un objet unique qu'un groupe de plusieurs objets. Classiquement, un tel objet représentatif d'une surface ou d'un volume est modélisé par un ensemble de surfaces courbes ou planes de l'espace. Ces surfaces peuvent être approximées par des facettes élémentaires constituant un maillage complexe. Un tel maillage est défini par un réseau de sommets reliés entre eux par des arêtes constituant les côtés de facettes planes. Dans un premier aspect, la présente invention fournit un procédé de projection d'un objet géométrique en trois dimensions sur la surface d'affichage en deux dimensions d'un dispositif d'affichage. Ce procédé fait intervenir un ensemble de repères remarquables de l'espace que l'on peut diviser en deux catégories : - les repères individuellement liés à l'obj et (Rao, Rco, Rvo), illustrés par la Figure 4. - les repères communs à l'ensemble des objets de la scène (Rv, Rf), illustrés par la Figure 5. Ces repères ainsi énumérés permettront de définir ultérieurement un ensemble de transformations de l'espace défini par une séquence de matrices constituant le procédé de projection de la présente invention. C'est une particularité additionnelle du présent procédé de projection que de faire intervenir un ensemble de repères individuellement liés à l'objet projeté. Classiquement, dans les techniques de l'art antérieur, ces repères sont communs à l'ensemble des objets de la scène. Le repère absolu de l'objet Rao (401) Il s'agit du repère tridimensionnel de l'espace de la scène dans lequel sont exprimées les coordonnées des sommets constituant la représentation dudit objet. Les coordonnées exprimées dans ce repère sont appelées coordonnées objet . Le repère de caméra de l'objet Rco (402) Il s'agit du repère tridimensionnel de l'espace de la scène matérialisant le plan sur lequel est projeté l'objet. Ce plan est défini par : - un point Eo de l'espace appelé oeil ou point de vue de l'objet. Eo a pour coordonnées (êxo/eyo. ezo) dans le dans le repère absolu de l'objet Rao. - deux vecteurs ro et Uo de l'espace constituant un repère orthonormée (Eo, ro, Uo) du plan. ro coïncide avec la direction de l'axe horizontal de la vue de l'objet et Uo coïncide avec la direction de l'axe vertical de la vue de l'objet. On introduit enfin le vecteur So normal au plan de projection défini précédemment. Ce vecteur coïncide avec la direction de l'axe de profondeur de la vue de l'objet. Le repère de caméra de l'objet Rco est alors défini par la base orthonormée (pro, Uo. So) et a pour origine Eo. Les coordonnées exprimées dans ce repère sont appelées coordonnées caméra . Ce repère, bien que facultatif dans le procédé de projection décrit ici, est classiquement employé dans les techniques de l'art antérieur connues et permet de définir simplement un angle de vue spécifique de la scène. Le repère de vue locale de l'objet Rvo (403) et (501) Il s'agit du repère tridimensionnel orthonormé de l'espace de projection dans lequel est projeté l'objet. Il est composé du repère bidimensionnel du plan de vue locale (404) et (504) dudit objet et d'un axe de profondeur normal à celui-ci. Les coordonnées exprimées dans ce repère sont appelées coordonnées vue locale . Par ailleurs, on introduit deux plans de profondeur limites au-delà desquels les sommets dudit objet projetés sont ignorés : - le plan local de profondeur minimale d'équation z= Zmin, o (near clipping plane selon la terminologie anglo-saxonne). - le plan local de profondeur maximale d'équation z= Zmax, o (far clipping plane selon la terminologie anglo-saxonne). Ce repère mis en oeuvre dans le présent procédé de projection constitue une particularité additionnelle de l'invention en ce qu'il permet de définir pour chaque objet de la scène un nouvel espace intermédiaire, corrélé à la surface d'affichage (505) et dans lequel l'objet qui lui est attaché, est converti. Dès lors, toute manipulation dudit repère induit une manipulation de la projection de l'objet qui lui est attaché. En se référant à la Figure 2, tout objet (201) de la scène peut alors être directement manipulé sur la surface de projection tout en conservant sa perspective apparente. Ceci n'est pas le cas des techniques de l'art antérieur où chaque objet (301) de la scène est défini et manipulé dans son repère absolu, comme l'illustre la Figure 3. On introduit les deux repères suivants communs à tous les objets de la scène. Le repère de vue globale Rv (502) Il s'agit du repère tridimensionnel orthonormé de l'espace de projection dans lequel sont positionnés chacun des repères de vue locaux des objets de la scène. Il est composé du repère bidimensionnel du plan de vue global de la scène et d'un axe de profondeur normal à celui-ci. Les coordonnées exprimées dans ce repère sont appelées coordonnées vue globale . Par ailleurs, on introduit deux plans de profondeur limites au delà desquels tout sommet projeté d'un objet de la scène est ignoré : - le plan global de profondeur minimale d'équation z= Zmin (near clipping plane selon la terminologie anglo- saxonne). - le plan global de profondeur maximale d'équation z= Zmax (far clipping plane selon la terminologie anglo- saxonne). Le repère fenêtre d'affichage Rf (503) Il s'agit du repère tridimensionnel orthonormé sur lequel les objets de la scène sont projetés. Il est composé du repère bidimensionnel du plan d'affichage et d'un axe de profondeur normal à celui-ci. La fenêtre d'affichage représente un rectangle du plan d'affichage qui délimite le champ de visualisation des objets de la scène ainsi projetés. Ce champ de visualisation est complètement défini à l'aide des trois paramètres suivants : - le centre 0 (box, Oy) de la fenêtre d'affichage exprimé en unités d'affichage, - la largeur 1 de ladite fenêtre d'affichage exprimée en unités d'affichage, - la hauteur h de ladite fenêtre d'affichage exprimée en unités d'affichage. Dans le mode de réalisation préféré de la présente invention, le dispositif d'affichage peut être un écran d'ordinateur, ladite fenêtre d'affichage correspondant alors à une zone rectangulaire dudit écran, le système de coordonnées s'exprimant en unité pixel. 6.2 Les étapes de la projection Le procédé de projection que fournit la présente invention consiste à transformer chaque objet de la scène par une séquence ordonnée de 4 matrices (ou moins si certaines d'entre elles sont égales à la matrice identité, pouvant dès lors être ignorées) suivie de deux transformations affines. Ces matrices font intervenir les repères précédemment définis. La Figure 6 présente le diagramme de cette séquence de transformations appliquées à un objet dans le processus de projection conduisant à l'affichage dudit objet sur le dispositif d'affichage. Les coordonnées objet, les coordonnées caméra, les coordonnées vue locale et globale sont des coordonnées dites homogènes c'est-à-dire en quatre dimensions x, y, z, et w. En conséquence, les matrices associées aux opérations de transformations énumérées plus bas sont également carrées de dimension 4. De plus, il convient de préciser que l'opération d'affichage proprement dite requiert d'exprimer les sommets de coordonnées (x, y, z, w) de chaque objet de la scène dans le repère tridimensionnel de la fenêtre d'affichage Rf. Les coordonnées (xftyf Zf) ainsi obtenues incluent deux composantes Xf et yf liées à la surface d'affichage combinées avec une troisième composante Zf destinée à quantifier la profondeur, cette dernière étant classiquement stockée au sein d'un tampon dit de profondeur ou depth buffer selon la terminologie anglo-saxonne. Il s'agit là d'une technique classique couramment employée dans les procédés d'affichage de l'art antérieur d'un objet en trois dimensions sur une surface de projection en deux dimensions. Le procédé de projection mis en oeuvre par la présente invention se divise en 6 étapes successives (601), (602), (603), (604), (605) et (606) référencées par la Figure 6. Dans une première étape (601), on applique à l'objet, dont les sommets sont exprimés en coordonnées objet, une matrice de transformation Mo de telle sorte que les sommets résultant soient exprimés en coordonnées caméra. Soit S l'un des sommets dudit objet de coordonnées (x, y, z, w), l'expression matricielle de cette première étape (601) est : (Xe, yc, Ze, Wc) = Mo (x, y, z, w) Dans une seconde étape (602), on applique aux sommets de l'objet ainsi convertis en coordonnées caméra une matrice de proj ection Po de telle sorte que les sommets résultants soient exprimés en coordonnées vue locale. L'expression matricielle de cette deuxième étape (602) est : (xv, Yv, Zv, wv) = Po (xc,yc,zc,wc) Dans une troisième étape (603), on applique aux sommets de l'objet à présent exprimés en coordonnées vue locale, une matrice de transformation Mzo de telle sorte que les sommets résultants soient exprimés en coordonnées vue globale. L'expression matricielle de cette troisième étape (603) est : (Xg, Yg, Zg, Wg) = Mxo (xv, Yv, zv, Wv) Dans une quatrième étape (604), on applique aux sommets de l'objet une matrice de correction Mr, ayant pour but d'introduire le rapport 1/h, c'est-à-dire le rapport entre la largeur et la hauteur de la fenêtre d'affichage finale, de manière à tenir compte des contraintes imposées par la fenêtre d'affichage. L'expression matricielle de cette quatrième étape (604) est : (xr,yr,zr,wr)=Mr(xg,yg,zg,wg) Dans une cinquième étape (605), on normalise les coordonnées des sommets de l'objet en les divisant par le facteur de perspective. L'opération de normalisation a pour but de passer d'un espace de coordonnées de dimension 4 à un espace de coordonnées de dimension 3. (x'r,y'r,z'r)=(xr/wr,yr/wr,zr/wr) Dans une sixième étape (606), on applique aux sommets de l'objet une transformation affine de dimension 3, destinée à exprimer les coordonnées des sommets ainsi projeté dans le repère de la fenêtre d'affichage : Xf = X'r (1/2) + ox Yf = y'r (h/2) + Oy Zf = Z r (Zmax-Zmin)/2 + (Zmax+Zmin)/2 Où l, h, ox, et Oy sont les paramètres caractérisant le repère Rf et Zmin et Zmax sont les plans globaux de profondeur limites dans le repère Rv. Un objectif du procédé de projection de la présente invention est de permettre de manipuler avantageusement un objet en trois dimensions tout en conservant sa perspective apparente. Pour ce faire, on impose aux matrices Mot Po et Mxo les deux conditions suivantes : - Mo, Pô et Mxo sont définies indépendamment pour chaque objet de la scène. - Mo, Pô et Mxo sont indépendantes de la fenêtre d'affichage. En particulier, ces matrices sont indépendantes des paramètres l, h et 0 respectivement la largeur, la hauteur et le centre de la fenêtre d'affichage. Ces deux conditions combinées permettent de garantir naturellement la conservation de la perspective apparente de chaque objet de la scène quelque soit la manipulation effectuée sur la surface de projection. Ceci diffère des techniques de l'art antérieur, où la matrice P est commune à l'ensemble des objets de la scène et dépend classiquement des caractéristiques de la fenêtre d'affichage et plus spécifiquement du ratio 1/h. Par ailleurs, le présent procédé fait intervenir avantageusement la matrice de transformation Mxo postérieurement à la matrice de perspective Po, ce qui constitue une particularité additionnelle de la présente invention. Cette matrice permet de définir une transformation supplémentaire spécifiquement appliquée à la projection dudit objet sur la surface d'affichage et non comme c'est classiquement le cas, uniquement dans l'espace en trois dimensions de la scène globale. Enfin, une dernière particularité de la présente invention est de permettre au dispositif d'affichage de partager le même tampon de profondeur lors de l'affichage des objets de la scène. Dans un mode de réalisation préféré, Mo peut être la composée d'un nombre quelconque de matrices de translation, de rotation, ou de dimensionnement, carrées de dimension 4. L'homme de l'art notera qu'aucune condition particulière autre que celles précisées n'est imposée à la matrice Mo. Par exemple Mo peut représenter l'orientation et le positionnement de la camera dudit objet en ayant la forme d'un produit matriciel défini à l'aide des paramètres du repère Rco. Cette matrice est traditionnellement appelée matrice de look-at suivant la terminologie anglo-saxonne. rXO ryO rzO 1 0 0-exO = Uxo uyo Uzo 0 0 1 0-eyo Sxo Syo Szo 0 0 0 1-eo 0001 0001 Dans un mode de réalisation préféré, Po peut être indifféremment : - une matrice de perspective conique. Dans ce cas l'oeil Eo de la caméra associé à l'objet est situé à une distance finie dudit objet. - une matrice de perspective orthogonale ou cavalière. Dans ce cas Eo est situé à l'infini. Par exemple, Po peut être une matrice classique de perspective conique d'angle a : fe 0 0 0 Po 0 fe 0 0 0 0- (Zmax, o+ Zmin, o)-2. Zmax, o-Zmin, o (Zmax, o-Zmin, o) (Zmax, o**Zmin, o) 000 1 Où fe = 1/tan (cm/2) et Zmax, o et Zmin, o sont les plans locaux de profondeur limites dudit objet dans le repère Rvo. Dans un mode de réalisation préféré, la matrice Mxo est obtenue par la composition d'un ensemble de matrices de dimensionnement, de rotation et de translation. La matrice Mrpeut avoir la forme suivante : h/1 0 0 0 Mr = 0 1 0 0 0010 0001 O O 0 On notera à nouveau que les matrices Mo, Po et Mxo ne font pas intervenir les paramètres de la fenêtre d'affichage conformément à l'une des particularités additionnelles de la présente invention. 6.3 Manipulation Dans un deuxième aspect, illustré par les Figures 7,8 et 9, la présente invention fournit un procédé de manipulation interactive d'un objet en trois dimensions projeté sur une surface d'affichage à-l'aide de la technique de projection décrite plus haut. La manipulation interactive d'un objet de la scène ainsi projeté fait intervenir un dispositif de pointage dont les déplacements sont interprétés et convertis par le présent procédé en mouvements de translation, d'orientation et de dimensionnement dudit objet. Dans un mode de réalisation préféré de la présente invention, ce dispositif de pointage peut être une souris couplée à un écran d'ordinateur. Ainsi qu'il a été décrit plus haut, un avantage additionnel de la présente invention est de maintenir pour chaque objet de la scène les données définissant la transformation Mxo dudit objet dans le repère de la vue globale Rv. Dans un mode de réalisation préféré, ces données sont stockées classiquement sous la forme d'un triplet de matrices S, R, T décrivant complètement une transformation de l'espace, où S représente une matrice de dimensionnement, R une matrice de rotation et T une matrice de translation. Soit dPf= Pf2-Pfl le vecteur représentant le déplacement élémentaire du pointeur sur la surface de projection d'affichage d'un point d'origine Pfi de coordonnées (Xfl Yfi, (Zmax+Zmin)/2) vers un point destination Pf2 de coordonnées (Xf2, yf2, (Zmax+Zmin)/2). Préalablement à l'évaluation de tout type de mouvement dudit objet, il s'agit de convertir ledit déplacement élémentaire dPf dans le repère de la fenêtre d'affichage Rf en déplacement élémentaire dP = P2-Pl dans le repère de vue globale Rv. Pour cela il suffit d'exprimer P1 de coordonnées (Xl, yl, 0, 1) et P2 de coordonnées (x2,y2,0,1) dans le repère Rv. Ceci peut se faire en deux opérations : - en inversant la transformation affine de la sixième étape (406) de la projection dudit objet définie plus haut : xi= (2/1) (Xfl-Ox) et X2= (2/1) (Xf2-o) yi= (2/h) (Yfl-Oy) et Y2= (2/h) (Yfz-Oy) - puis en appliquant l'inverse de la matrice de correction Mr-l de la cinquième étape (405) de ladite projection : Pl= Mir 1 ? 2= M/ ? 2 Manipulation de l'objet en translation (Figure 7) Un déplacement interactif (701) dudit objet (702) en translation sur la surface de projection du dispositif d'affichage peut s'obtenir en appliquant à la composante de translation T de la matrice Mxo dudit objet une translation additionnelle de vecteur P1P2. Il est avantageux de tenir compte des dimensions de la fenêtre d'affichage (703), pour cette raison on multiplie la première composante du vecteur P1P2 par l/h où 1 et h représentent respectivement la largeur et la hauteur de ladite fenêtre d'affichage. Dans un mode de réalisation préféré, 1 et h sont en pixels. On met à jour la composante de translation T de la matrice Mxo dudit objet de telle sorte que : 1 0 0 tx + (PiP2) x T = 0 1 0 ty + (PIP2) y 0 0 1 tz 000 1 Manipulation de l'objet en rotation (Figure 8) Une rotation interactive (801) dudit objet (802) sur la surface de projection (803) du dispositif d'affichage peut s'obtenir en appliquant à la composante de rotation R de la matrice Mxo dudit objet une rotation additionnelle R' déterminée par deux vecteurs VI et Vz tels que : VI= C - Pl V2= C-P2 où C est le centre de rotation exprimé en coordonnées vue globale. On met à jour la composante de rotation R de la matrice Mxo dudit objet de telle sorte que : R = R. R' Manipulation de l'objet en dimensionnement (Figure 9) Un dimensionnement interactif (901) dudit objet (902) sur la surface de projection (903) du dispositif d'affichage peut s'obtenir en appliquant à la composante de dimensionnement S de la matrice Mxo dudit objet un facteur d'échelle multiplicatif s'x, suivant la direction x et s'y, suivant la direction y, défini comme suit : S'x= X'2/X'1 s'y= y'2/y'l OÙ X'2y X'l, y'2 et Y'l sont les coordonnées des points Pol'set P2'tels que : 1 Pi'= Mxo'. Pi 1 - xo. 1 Pl'= Mxo. P2 En cas de dimensionnement uniforme, il est nécessaire d'ajuster s'x et s'y de telle sorte que le rapport s'x/s'y soit égal au rapport sx/sy où Sx et Sy sont les facteurs d'échelle en x et y respectivement de la composante S de la matrice Mxo. On met à jour la composante de dimensionnement S de la matrice Mxo dudit objet de telle sorte que : sx. s'x 0 0 0 s = 0 Sy. svy o o 0 0 Sz 0 0 0 0 1 6.4 Calcul et affichage du guide graphique rectangulaire englobant dudit objet Dans un troisième aspect, illustré par les Figures 7, 8 et 9, la présente invention fournit un procédé de calcul du plus petit rectangle sur la surface de projection associé à un objet de la scène ayant les caractéristiques suivantes : - ledit rectangle respecte la translation, l'orientation et le dimensionnement dudit objet, - ledit rectangle englobe la projection dudit objet sur la surface de projection, ladite projection étant obtenue à l'aide du procédé décrit précédemment. Dans un souci de clarté de la présentation, on désignera par la suite le rectangle ainsi défini par rectangle englobant . Ledit rectangle englobant a pour but de permettre l'affichage dynamique sur le dispositif d'affichage d'un guide graphique rectangulaire (704), (804) et (904) délimitant ledit objet. Un tel guide offre un support de manipulation dudit objet sur la surface de projection avec lequel l'utilisateur pourra éventuellement interagir par le biais d'un dispositif de pointage en deux dimensions. L'opération de détermination du rectangle englobant d'un objet sur la surface de projection du dispositif d'affichage peut être réalisée au moyen d'une méthode de minimisation itérative d'une zone rectangulaire sur les sommets dudit objet. Pour se faire, on introduit au préalable le quadruplet (xmin, ymin, xman, ymax), définissant la zone rectangulaire recherchée dans le repère de la vue locale dudit objet. Pour chaque sommet Si dudit objet, on évalue dans un premier temps la projection S'i de Si, de coordonnées (x'i, y'i, z'i, w'i), dans le repère de vue locale Rvo. S'i s'obtient à l'aide de l'expression matricielle suivante : S'i = Po. Mo. Si où Po et Mo désignent respectivement deux matrices 4 x 4 définies dans le paragraphe 6. 1. Dans un second temps, on met à jour le quadruplet (Xmin, ymin, Xmaxs Ymax) de telle sorte que le critère de minimisation suivant soit respecté : Xmin # x' i # xmax Ymin # y' i # ymax A l'issue de cette opération itérative, le quadruplet (Xmin, Yminf Xmaxr Ymax) identifie le rectangle englobant dudit objet dans le repère de vue locale Rvo. On obtient alors le rectangle englobant recherché de la surface de projection du dispositif d'affichage en exprimant les deux points Smin de coordonnées (Xmin, Ymin, 0, 1) et Smax de coordonnées (XmaxrYmaxfO. l) dans le repère de la fenêtre d'affichage Rf. Dans le mode de réalisation préféré, ces coordonnées sont en pixels. Cette transformation s'opère de la manière décrite dans le paragraphe 6.2, en appliquant successivement les deux matrices M, matrices Mxo (603) et Mr (604), la division par le facteur de perspective (605) et la transformation affine (606). Le rectangle (704), (804) et (904) de la fenêtre d'affichage (703), (803) et (903) ainsi évalué englobe sur la surface de projection l'ensemble des sommets dudit objet (702), (802) et (902) et prend en compte naturellement sa translation (701), son orientation (801) et son dimensionnement (901), caractérisés par la matrice Mxo. Bien que la présente invention ait été représentée en relation avec un mode de réalisation préféré, elle ne doit pas être considérée comme limitée à celui-ci. Bien plutôt, elle n'est limitée que par les revendications annexées. Revendications 1. Procédé de projection d'un objet géométrique d'une scène graphique d'un espace en trois dimensions sur une fenêtre d'affichage d'un dispositif d'affichage interactif commandé par ordinateur, caractérisé par les étapes consistant à : - appliquer une information de projection locale propre audit objet et indépendante de toute caractéristique de ladite fenêtre d'affichage. - appliquer une information de transformation de ladite projection locale propre audit objet et indépendante de toute caractéristique de ladite fenêtre d'affichage. - appliquer une information de projection globale commune à l'ensemble des objets constituant ladite scène graphique et dépendante des caractéristiques de ladite fenêtre d'affichage. - afficher sur la fenêtre d'affichage ledit objet ainsi projeté, résultant de la composée des trois applications successives de ladite projection locale, ladite transformation puis ladite projection globale. 2. Procédé de projection d'un objet géométrique selon la revendication 1, caractérisé en ce que ladite information de projection locale est paramétrée par le temps. 3. Procédé de projection d'un objet géométrique selon l'une quelconque des revendications 1 et 2, caractérisé en ce que ladite information de transformation est paramétrée par le temps. 4. Procédé de projection d'un objet géométrique selon l'une quelconque des revendications 1 à 3, caractérisé en ce que ladite projection locale est définie par le produit matriciel P. M où M est une matrice carrée de dimension 4 représentant une transformation dudit espace et P est une matrice carrée de dimension 4 représentant indifféremment une perspective conique ou orthogonale dudit espace. 5. Procédé de projection d'un objet géométrique selon l'une quelconque des revendications 1 à 4, caractérisé en ce que ladite transformation de ladite projection locale est définie par la composée d'un nombre quelconque de transformations élémentaires S, R ou T dudit espace : où S est un dimensionnement, R une rotation et T une translation. 6. Procédé de projection d'un objet géométrique selon l'une quelconque des revendications 1 à 5, caractérisé en ce que ladite projection globale est définie successivement par : - une matrice carrée de dimension 4 corrective dépendante des caractéristiques de la fenêtre d'affichage, une opération de division par un facteur de perspective - une transformation affine de dimension 3. 7. Procédé de projection d'un objet géométrique selon l'une quelconque des revendications 1 à 6, caractérisé en ce que ledit objet est une ligne dudit espace en trois dimensions. 8. Procédé de projection d'un objet géométrique selon l'une quelconque des revendications 1 à 6, caractérisé en ce que ledit objet est une surface rectangulaire dudit espace en trois dimensions. 9. Procédé de projection d'un objet géométrique selon l'une quelconque des revendications 1 à 6, caractérisé en ce que ledit objet est une géométrie bidimensionnelle dudit espace en trois dimensions. 10. Procédé de projection d'un objet géométrique selon l'une quelconque des revendications 1 à 6, caractérisé en ce que ledit objet est une géométrie tridimensionnelle dudit espace en trois dimensions. 11. Procédé de projection d'un objet géométrique selon l'une quelconque des revendications 1 à 10, caractérisé en ce que ledit objet géométrique est paramétré par le temps. 12. Procédé de projection selon l'une quelconque des revendications 1 à 11, caractérisé en ce que ledit objet géométrique est un groupe de plusieurs objets géométriques dudit espace en trois dimensions. 13. Procédé de manipulation d'un objet géométrique d'une scène graphique d'un espace en trois dimensions projeté sur une fenêtre d'affichage d'un dispositif d'affichage interactif commandé par ordinateur, selon l'une quelconque des revendications 1 à 10, caractérisé par les étapes consistant à : engendrer une transformation additionnelle de la projection locale en réponse à une commande de déplacement produite par le dispositif d'interaction dudit dispositif d'affichage interactif. - mettre à jour la transformation de la projection locale dudit objet comme la composée de ladite transformation originelle et de ladite transformation additionnelle. - projeter ledit objet sur la fenêtre d'affichage en appliquant successivement ladite projection locale, ladite transformation mise à jour puis ladite projection globale. 14. Procédé de manipulation d'un objet géométrique selon la revendication 13, caractérisé en ce que ladite transformation additionnelle est une translation. 15. Procédé de manipulation d'un objet géométrique selon la revendication 13, caractérisé en ce que ladite transformation additionnelle est une rotation. 16. Procédé de manipulation d'un objet géométrique selon la revendication 13, caractérisé en ce que ladite transformation additionnelle est un dimensionnement. 17. Procédé d'affichage d'un guide graphique associé à un objet géométrique d'une scène graphique d'un espace en trois dimensions, projeté sur une fenêtre d'affichage d'un dispositif d'affichage interactif commandé par ordinateur, selon l'une quelconque des revendications 1 à 10, caractérisé par les étapes consistant à : - évaluer les coordonnées du rectangle englobant de la projection dudit objet dans son repère de vue locale, - appliquer successivement audit rectangle la transformation de ladite projection locale propre audit objet, puis la projection globale de ladite scène.