FR3087025A1 - Procede pour transformer un modele tridimensionnel (3d) en un modele 3d embarquable dans une interface humain-machine d’un equipement mobile - Google Patents

Procede pour transformer un modele tridimensionnel (3d) en un modele 3d embarquable dans une interface humain-machine d’un equipement mobile Download PDF

Info

Publication number
FR3087025A1
FR3087025A1 FR1859225A FR1859225A FR3087025A1 FR 3087025 A1 FR3087025 A1 FR 3087025A1 FR 1859225 A FR1859225 A FR 1859225A FR 1859225 A FR1859225 A FR 1859225A FR 3087025 A1 FR3087025 A1 FR 3087025A1
Authority
FR
France
Prior art keywords
model
mobile equipment
human
module
rules
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR1859225A
Other languages
English (en)
Inventor
Emmanuel Julien
Francois Gutherz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Movida Production
Original Assignee
Movida Production
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Movida Production filed Critical Movida Production
Priority to FR1859225A priority Critical patent/FR3087025A1/fr
Priority to PCT/FR2019/052363 priority patent/WO2020070459A1/fr
Publication of FR3087025A1 publication Critical patent/FR3087025A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/12Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Analysis (AREA)
  • Architecture (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Processing Or Creating Images (AREA)

Abstract

Procédé pour transformer un modèle tridimensionnel (3D) issu d'un outil de conception assisté par ordinateur (CAD) en un modèle 3D embarquable dans une interface humain-machine d'un équipement mobile, comprenant les étapes de : - recevoir un modèle 3D réalisé à partir dudit outil CAD, - convertir le modèle 3D reçu et en extraire ses caractéristiques, - conformer le modèle 3D converti en appliquant des règles définies dans un script expert, - sauvegarder le modèle 3D ainsi conformé de façon à le rendre embarquable dans un équipement mobile. Utilisation pour la réalisation d'interfaces humain-machines pour des équipements mobiles terrestres, aériens ou maritimes.

Description

« Procédé pour transformer un modèle tridimensionnel (3D) en un modèle 3D embarquable dans une interface humain-machine d'un équipement mobile »
Domaine de l'invention
La présente invention concerne un procédé pour transformer un modèle tridimensionnel (3D) en un modèle 3D embarquable dans une interface humain-machine d'un équipement mobile.
Le domaine de l'invention est celui des interfaces humain-machine, et plus particulièrement des interfaces humain-machine embarqués dans des systèmes de mobilité, terrestres, aériens ou maritimes.
Etat de la technique
Il existe actuellement une forte demande, exprimée notamment par les constructeurs automobiles, pour des interfaces humain-machine (IHM) ergonomiques, efficaces et hautement dynamiques.
Le développement actuel des nouvelles formes de mobilité, notamment le transport autonome ou semi-autonome, suscite des besoins importants en termes d'interfaces humain-machine équipant les systèmes de mobilité. On attend de ces interfaces humain-machine qu'elles soient ergonomiques, intuitives et performantes. Pour cela, il est fait de plus en plus appel à des représentations graphiques tridimensionnelles dynamiques.
S'il est déjà très courant d'utiliser des modèles tridimensionnels temps-réel et à haute résolution dans le domaine des jeux vidéo et de l'animation, ce n'est pas encore le cas pour les équipementiers du domaine automobile des véhicules légers ou industriels qui sont pourtant actuellement très demandeurs d'animations 3D temps-réel embarquées tandis qu'ils font face à une somme de contraintes technologiques bien supérieures à celles adressées dans le secteur du jeu vidéo.
En effet, il existe un réel décalage culturel et expérientiel entre les designers graphiques 3D et les développeurs logiciel chargés de concevoir les IHM tournant sur des systèmes électroniques embarqués. Ce décalage se matérialise par l'utilisation de logiciels de développement informatique fondamentalement différents et de prime abord incompatibles, ce qui a pour conséquence de nécessiter un pont entre deux univers « métier » distincts.
Les procédés existants tels que ceux utilisés par les logiciels Unreal Engine, Unity3D ou encore 3DVia, qui remplissent ce rôle, opèrent d'ordinaire une conversion a minima qui nécessite systématiquement une intervention manuelle afin de conformer l'apparence d'un modèle 3D avant qu'il soit exploitable par des développeurs. Cette conformation doit être répétée à chaque modification du modèle 3D entraînant nécessairement une perte de productivité, un plus grand risque d'erreur induit
-2par la multiplication d'interventions humaines, l'allongement des échéances au détriment de l'accomplissement des projets, qu'ils soient portés par des cellules innovation ou production.
L'amélioration de ce processus de conformation réclame une forme d'automatisation de cette étape de conformation qui peut nécessiter l'écriture d'un script expert. En l'état de l'art, il n'est pas possible d'intervenir de façon automatique sur les étapes de conversion. En effet, on constate que les solutions technologiques disponibles implémentent un procédé rigide, lequel interdit toute forme d'automatisation et donc de conformation des modèles 3D.
Afin d'intervenir sur le modèle 3D converti pour le conformer, il est nécessaire de procéder à une réécriture du code 3D. Cette possibilité technologique n'est pas disponible dans les logiciels de référence comme Unreal Engine, Unity3D ou 3DVia.
En outre, la réécriture automatisée du code 3D, qui s'appréhende de la façon la plus pertinente dans un mode orienté-projet, nécessite à la fois des compétences expertes en imagerie et l'accès à des fonctions 3D bas-niveau. Cette approche « par projet » justifie la mise en place d'un binding, qui réalise la jonction entre l'accessibilité d'un langage haut-niveau tel qu'utilisé par les experts métiers en interface humain-machine et imagerie 3D d'un part et les fonctionnalités bas-niveau d'une bibliothèque graphique 3D d'autre part.
En l'état de l'art, SWIG est un programme permettant de générer de tels bindings. Il est opensource, libre d'accès et permet de relier des programmes écrits en C/C++ à une variété de langages de programmation de « haut niveau ». Parmi les langages cibles, on trouve des langages de script courants tels que Javascript, Péri, PHP, Python, Tel et Ruby. SWIG souffre d'une dette technique trop importante et d'un traitement inégal des langages cibles supportés. Ainsi, il est fréquent qu'une fonctionnalité désirable ne soit supportée que dans quelques langages cibles et parfois dans aucun, ce qui constitue un handicap important pour l'intégration de scripts experts dans un processus de conformation de modèles 3D automatisé.
Le document US5083262A décrit un procédé de liaison de langage (« langage binding ») destiné à des fonctions graphiques, avec pour objectif de permettre à un programme d'application d'être utilisé dans différents environnements de traitement.
Par ailleurs, le document US20110047217A1 décrit un procédé de gestion des données 3D collaboratif agissant par centralisation des données 3D via une base de données, et garantissant l'intégrité des données dans un contexte de modifications temps-réel et d'accès concurrents. Ce procédé, toutefois, ne propose pas de solution spécifique pour la conformation de modèles 3D dans un contexte industriel où le niveau d'attente est de plus en plus élevé face à des cycles de développements de plus en plus courts.
Un autre aspect de la conformation 3D peut trouver une solution dans l'utilisation de normes 3D existantes. Ainsi, la norme de format 3D développée par un conglomérat industriel sous le nom de
-3COLLADA offre une grande souplesse d'utilisation mais ne propose pas de solution au problème de performance posé par le XML (cf. Références Bibliographique n°14 - www.ibm.com/developerworks).
L'établissement d'une liaison spécifique à un langage entre des programmes d'application graphique de haut niveau écrits dans un langage de programmation spécifique permet de transporter un programme d'application graphique entre et utilisé dans différents systèmes de traitement graphique. Un seul programme d'application graphique portable peut être utilisé avec n'importe lequel des processeurs graphiques avec lesquels une liaison de langage d'application a été établie pour produire des graphiques sur un périphérique de sortie.
Le document CN101814024A divulgue un outil de conception d'une interface 3D multiplateforme, principalement utilisé pour développer des interfaces interactives homme-machine 3D grand écran. L'outil comprend un noyau système capable d'invoquer des fonctions systémiques de manière multi-plateformes, dans lequel le noyau prend en charge les fonctions principales d'une plateforme grand public actuelle et peut effectuer une auto-vérification pour trouver la différence entre les fonctions système de différents systèmes d'exploitation.
La combinaison de l'héritage technologique de SWIG et de son support fragmenté des fonctionnalités du C++ fait qu'il est extrêmement compliqué et coûteux d'assurer son évolution et sa maintenance. Les alternatives logicielles, peu nombreuses, à SWIG ne s'intéressent en général qu'à un seul langage cible tout en étant beaucoup plus limitées que ce dernier en termes de fonctionnalités C++ supportées.
De plus, avec l'arrivée du nouveau standard C++ (C++11), les nouvelles constructions du langage sont peu ou pas supportées et de nombreuses configurations d'utilisation des nouvelles fonctionnalités C++ ne sont pas correctement supportées par SWIG.
Par ailleurs, un inconvénient des procédés de traitement de modèles 3D pour des applications embarquables selon l'état de l'art est qu'ils sont généralement dépendants de plateformes logicielles opérant en mode collaboratif ou ouvert, ce qui ne permet pas d'assurer une stricte confidentialité des données de conception des modèles 3D mis en œuvre et peut constituer un handicap pour certains marchés, notamment dans le domaine des équipements de défense et de sécurité.
Ainsi, pour atteindre l'objectif attendu d'embarquer des modèles 3D en affichant un niveau de qualité visuelle répondant aux exigences du PBR (Rendu Physique Réaliste), se pose le problème de l'interprétation des descriptions de matériaux issus des outils CAD (pour « Computer Aided Design »). En effet, si des propositions de norme de description des matériaux physiques ont bien été réalisées, il n'existe pas de spécifications communes aux matériaux exportés depuis la majorité des logiciels de CAD faisant référence dans l'industrie. Dans l'état de l'art, cette nécessité n'a pas de réponse technique.
Dans bon nombre de centres de conception et de développement d'interfaces humain-machine, on réécrit le code d'un modèle 3D généré par un outil CAD pour pouvoir l'embarquer sur une plateforme
-4mobile. L'utilisation d'un format spécifique hérité de l'environnement de la CAD pour le stockage de données 3D adaptées aux contraintes de l'embarqué pose le problème de la versatilité et de la souplesse pour faire face aux contraintes d'un environnement embarqué.
Par ailleurs, le stockage de métadonnées spécifiques à la 3D temps-réel au sein de modèle CAD (dont le format est propriétaire) pour obtenir le résultat attendu dans l'affichage d'interfaces humainmachine a été abordé dans l'industrie de l'image de synthèse conduisant à une impasse technique récurrente. L'utilisation d'un tel format, optimisé et parfaitement adapté aux contraintes de l'embarqué, conduit généralement à la perte des métadonnées qui sont pourtant l'enjeu même des projets au sein desquels elles interviennent.
Ainsi, les contraintes s'appliquant au modèle de stockage sont doubles : niveau d'attente des filières industrielles dans la qualité visuelle des interfaces humain-machine, contraintes de bande passante des GPU et plateformes matérielles et performance de la 3D « temps-réel » embarquée.
Par ailleurs, un verrou technologique majeur à lever est celui de la difficulté d'établir des règles de traduction et d'encodage qui soient suffisamment ouvertes et flexibles pour être adaptées à une diversité existante dans les codes pouvant être acceptés sur les systèmes embarqués des équipements mobiles, tout en étant suffisamment précises et stables pour garantir une haute qualité de rendu après transformation de modèle.
Un objectif principal de la présente invention est de proposer une conformation automatisée d'un modèle 3D qui doit permettre d'exploiter directement les conceptions I.H.M. réalisées par des designers spécialisés, pour les rendre automatiquement prêtes à être embarquées dans un équipement mobile après chaque modification sans requérir d'intervention humaine. Cette conformation doit pouvoir atteindre des performances en termes d'efficacité, de fiabilité et d'ergonomie largement supérieures à celles observées avec les procédés existants.
Un autre but de l'invention est de proposer un procédé nouveau d'affichage de modèle 3D qui procure un rendu physique réaliste et qui soit stable et performant.
Résumé de l'invention
Cet objectif est atteint avec un procédé pour transformer un modèle tridimensionnel (3D) issu d'un outil de conception assisté par ordinateur (CAD) en un modèle 3D embarquable dans une interface humain-machine d'un équipement mobile, comprenant les étapes de :
- recevoir un modèle 3D réalisé à partir de l'outil CAD,
- convertir le modèle 3D reçu et en extraire ses caractéristiques,
- conformer le modèle 3D converti en appliquant des règles définies dans un script expert,
- sauvegarder le modèle 3D ainsi conformé de façon à le rendre embarquable dans un équipement mobile.
L'étape de conversion peut avantageusement comprendre:
- une traduction du modèle 3D,
- un appel d'un jeu de fonctions correspondant à des transformations à apporter sur des modèles 3D envoyés par l'équipement mobile.
Le procédé de transformation selon l'invention peut en outre comprendre une modification de la topologie et/ou de la densité et/ou de l'orientation d'un modèle 3D en transformation, et une intervention sur des matériaux de façon à les redéfinir et/ou de leur assigner des algorithmes de traitement de la lumière et des matières.
Le procédé de transformation selon l'invention peut en outre comprendre, au moment du stockage du modèle 3D, un choix d'un format le plus adapté à l'équipement mobile.
L'étape de conversion peut avantageusement comprendre es étapes de :
- décoder le modèle 3D reçu et en extraire des caractéristiques du modèle 3D,
- traduire le modèle ainsi décodé, en appliquant des règles de traduction,
- encoder le modèle 3D ainsi traduit, en appliquant des règles d'encodage, de façon à générer un modèle 3D prêt à être embarqué dans un équipement mobile, dans lequel les caractéristiques extraites lors de ladite étape de décodage du modèle 3D sont analysées par un interpréteur appliquant sur ledit modèle 3D respectivement lesdites règles de traduction lors de ladite étape de traduction et lesdites règles d'encodage lors de ladite étape d'encodage.
Les règles de traduction et les règles d'encodage ont par exemple été préalablement conçues dans un mode orienté-projet à partir d'informations spécifiques sur l'équipement mobile destiné à recevoir le modèle 3D.
L'interpréteur peut fonctionner sensiblement en parallèle des étapes de décodage, de traduction et d'encodage.
Dans une forme particulière de mise en œuvre du procédé de transformation selon l'invention, celui-ci est en outre adapté pour transformer un modèle numérique d'un matériau initialement mis en œuvre dans un outil CAD en un modèle numérique dudit matériau qui adapté pour être mis en œuvre dans une interface humain-machine d'un équipement mobile.
La transformation du modèle numérique du matériau peut comprendre une étape d'assignation audit modèle numérique d'un ou plusieurs algorithmes de traitement de la lumière et/ou de matières.
La transformation du modèle numérique du matériau peut aussi comprendre une étape de conversion de flux d'images de façon à rendre lesdites images compatibles et optimisées pour l'équipement mobile.
-6Suivant un autre aspect de l'invention, il est proposé un module informatique implémentant le procédé de transformation selon l'invention, comprenant :
- un module pour décoder un modèle tridimensionnel (3D) initialement réalisé à partir d'un outil de conception assistées par ordinateur (CAD) et extraire des caractéristiques inhérentes audit modèle 3D,
- un module pour traduire ledit modèle 3D ainsi décodé en appliquant des règles de traduction,
- un module pour encoder le modèle 3D ainsi traduit, en appliquant des règles d'encodage, de façon à générer un modèle 3D prêt à être embarqué dans un équipement mobile,
- un module interpréteur prévu pour analyser les caractéristiques extraites par ledit module décodeur, et pour appliquer sur ledit modèle 3D respectivement lesdites règles de traduction et lesdites règles d'encodage lors de ladite étape d'encodage.
Ce module informatique peut en outre être configuré pour transformer un modèle numérique d'un matériau initialement mis en œuvre dans un outil CAD en un modèle numérique dudit matériau qui adapté pour être mis en œuvre dans une interface humain-machine d'un équipement mobile.
Suivant encore un autre aspect de l'invention, il est proposé une application du procédé de transformation selon l'invention à la réalisation d'interfaces humain-machine pour des équipements de mobilité, notamment des véhicules terrestres, aériens ou maritimes
Selon un mode particulier d'implémentation du procédé de transformation selon l'invention, en cas de modification des propriétés du modèle 3D source, on repart de la première étape, en particulier dans le traitement des matériaux et textures.
II devient possible d'automatiser la phase de conformation nécessaire après chaque conversion depuis un logiciel de CAD. Cette automatisation se traduit (i) par un gain de productivité qui a un impact direct sur les cycles de développement et sur le « time to market » (pour «temps de mise sur le marché ») des projets d'interface humain-machine, et (ii) l'assurance d'éviter les erreurs de manipulation humaine, pour une augmentation significative de la qualité des données produites.
Ainsi, le procédé de transformation selon l'invention met en œuvre un procédé de conformation automatisée à l'aide d'un script expert de modèles 3D après conversion depuis un outil CAD en vue de les rendre embarquables dans l'interface humain-machine d'un équipement mobile.
L'un des principaux avantages de la solution a été de permettre aux équipes de développement de se détacher du problème de conformation manuelle lors des étapes d'intégration et de mise à jour des contenus 3D issus des équipes de production graphique.
Avec le procédé selon l'invention, il devient possible d'augmenter la qualité du rendu proposé tout en réduisant significativement le temps de mise en œuvre et en assurant un niveau de performances élevé par rapport aux solutions disponibles sur le marché.
-7 Description détaillée de l'invention
D'autres avantages et particularités de l'invention apparaîtront à la lecture de la description détaillée de mises en œuvre et de modes de réalisation nullement limitatifs, et des dessins annexés suivants :
- la figure 1 illustre le procédé de conversion avec une conformation automatisée à l'aide de scripts experts ;
- la figure 2 est un schéma fonctionnel du procédé de conversion, augmenté d'étapes de conformation automatisées ; et
- la figure 3 est un schéma synoptique illustrant les interactions entre différents modules d'un système mettant en œuvre le procédé selon l'invention.
Définitions
On entend par Bibliothèque est une bibliothèque d'affichage et de manipulation de modèles 3D.
On entend par Convertisseur un logiciel qui permet de convertir les modèles 3D issus de logiciels de CAD (« Computer Aided Design ») en modèles 3D temps-réel exploitables par la Bibliothèque.
On entend par Outil de développement 3D un environnement de développement 3D visuel destiné à des utilisateurs finaux, designers et non-développeurs basé sur la Bibliothèque. II permet d'agencer et programmer des modèles 3D en vue de la production d'interfaces humain-machine.
On entend par Générateur de binding, un logiciel et procédé de réalisation d'interface de liaisons logicielles (binding). Le Générateur de binding permet de relier une Bibliothèque C++ à un langage hautniveau.
On entend par Finaliseur un module logiciel intervenant en aval du procédé de conversion, qui est chargée d'interroger les scripts de conformation.
Exemple de réalisation
Ces modes de réalisation étant nullement limitatifs, on pourra notamment considérer des variantes de l'invention ne comprenant qu'une sélection de caractéristiques décrites ou illustrées par la suite isolées des autres caractéristiques décrites ou illustrées (même si cette sélection est isolée au sein d'une phase comprenant ces autres caractéristiques), si cette sélection de caractéristiques est suffisante pour conférer un avantage technique ou pour différencier l'invention par rapport à l'état de la technique antérieure. Cette sélection comprend au moins une caractéristique de préférence fonctionnelle sans détails structurels, et/ou avec seulement une partie des détails structurels si cette partie uniquement est suffisante pour conférer un avantage technique ou à différencier l'invention par rapport à l'état de la technique antérieure.
-8On va maintenant décrire, en référence aux figures précitées, un mode particulier de réalisation et de mise en œuvre du procédé de transformation selon l'invention. Dans cet exemple de réalisation, le procédé de transformation selon l'invention est réalisé sous la forme d'un module informatique outil de développement 3D (désigné en figure 1 sous le terme de ASSEMBLE) et qui inclut un module Finaliseur désigné en figure 1 sous le terme de module Finaliseur.
L'outil de développement 3D (ASSEMBLE) inclut, outre le sous-module Finaliseur, un module de décodage de modèle 3D, un module de traduction de modèle 3D et un module d'encodage de modèle 3D. Ces trois modules respectivement de décodage, de traduction et d'encodage sont reliés séquentiellement.
Le module de décodage reçoit en entrée un modèle 3D réalisé initialement à partir d'un outil CAD et délivre en sortie au modèle de traduction un modèle 3D décodé et à l'interpréteur des caractéristiques spécifiques du modèle 3D. Le module de traduction délivre au module d'encodage une traduction du modèle 3D selon les règles de traduction opérées par l'interpréteur tandis que le module d'encodage délivre un modèle 3D prêt pour être embarqué après encodage selon les règles d'encodage opérées par l'interpréteur.
Le module Finaliseur inclut un interpréteur qui reçoit en entrée des règles de conversion centrées-projet préalablement établies par un ou plusieurs experts et des données caractéristiques issues du module de décodage. L'interpréteur est aussi relié fonctionnellement respectivement aux modules de traduction et d'encodage.
On va maintenant décrire, toujours en référence à la figure 1, un exemple de déroulement du procédé de transformation selon l'invention :
(1) Un modèle 3D issu d'un outil CAD est envoyé au module l'un outil de développement 3D, (2) Des règles de traduction du modèle 3D conformes aux spécifications techniques d'un équipement embarquée ont été préalablement écrites sous forme de langage interprété par un spécialiste en 3D temps réel, (3) Le module décodeur de modèle 3D informe l'interpréteur des caractéristiques du modèles 3D CAD (forme, couleur, matières, nomenclature...), (4) L'interpréteur analyse le modèle 3D pendant son décodage (3), (5) Le modèle 3D décodé est ensuite traduit selon les règles de traduction, (5a) L'interpréteur applique des opérations spécifiques, selon les règles de traduction, sur les données du modèle 3D pendant la traduction, (6) Le modèle 3D est ensuite encodé (6a) L'interpréteur applique des conversions de format spécifiques, selon les règles d'encodage, du modèle 3D pendant l'encodage (7) Le module l'un outil de développement 3D produit un modèle 3D conforme aux spécifications techniques de l'équipement embarqué et aux attentes de design et d'esthétique spécifiques au projet.
En référence à la figure 2, le script de conformation est libre d'intervenir à chaque étape du processus de conversion afin d'effectuer des ajustements, des plus fins aux plus généraux.
Le procédé de conversion selon comprend une succession d'étapes :
- La traduction d'un modèle 3D par le CONVERTISSEUR invoque le Finaliseur automatiquement.
C'est le démarrage du procédé. Par un système de rappels (ou callbacks), l'interpréteur, qui fonctionne en parallèle de la conversion, appelle un jeu de fonctions préalablement implémentées par un expert ou un homme de l'art, projet par projet, qui détaillent les transformations à apporter pour que les modèles 3D envoyés par l'équipement embarqué soient conformes aux attendus des designers.
- Si le Finaliseur a reçu comme instruction d'intervenir sur la transformation du modèle 3D, il a la possibilité de modifier sa topologie, sa densité, son orientation, etc. Toutes ces transformations doivent avoir pour but principal de rendre le modèle 3D compatible et optimisé pour l'équipement embarqué.
- Si le Finaliseur a reçu comme instruction d'intervenir sur la transformation des matériaux, il a la possibilité de les redéfinir entièrement, de les factoriser, de leur assigner des algorithmes de traitement de la lumière et des matières (ou shaders), de convertir les flux d'images avec pour but de rendre les données compatibles et optimisées pour l'équipement embarqué.
- Au moment du stockage du modèle 3D, le Finaliseur peut choisir le format le plus adapté à l'équipement embarqué (binaire, XML, Json, etc...).
Le Finaliseur est appelé autant de fois qu'un modèle 3D ou des matériaux sont traités par le Convertisseur.
Un module expérimental a été réalisé sur la base de modèles 3D complexes répondant aux critères visuels du rendu physiquement réaliste avec comme objectifs, d'une part l'affichage dans un contexte embarqué et d'autre part des contraintes de performances élevées. Ces modèles 3D ont été sélectionnés avec une densité d'information variable.
Par modèles 3D complexes, on entend une représentation graphique 3D réaliste, reconnaissable tant par un expert que par un non-expert. La base de données de modèles 3D, fournie par l'université de Stanford, propose de mettre à disposition différents modèles 3D constitués de polygones (ou triangles).
Ce module expérimental a aussi été configuré pour assurer la transformation d'un modèle numérique d'un matériau initialement mis en œuvre dans un outil CAD. A l'issue de cette étape de
-10transformation, le modèle numérique produit automatiquement est adapté et donc conforme aux contraintes d'une interface humain-machine d'un équipement mobile.
Ce modèle CAD 3D doit répondre aux critères suivants :
référence visuelle commune permettant à un expert autant qu'un non expert de juger du niveau de réalisme atteint.
densité de maillage variable afin de s'adapter aux différentes capacités des plateformes matérielles ciblées par l'expérimentation.
format FBX.
L'objectif visé est de produire un visuel 3D temps-réel interactif en multiple points de vue, simulant les contraintes compatibles avec les futures interfaces humain machine :
display (« visualisation ») holographique écran stéréoscopique ou multi-view réalité virtuelle
Le résultat à atteindre étant la portabilité et la mobilité, plusieurs plateformes matérielles ont été choisies pour leurs spécifications qualifiées par le secteur industriel.
Le tableau de résultats ci-dessous est construit à partir des hypothèses de travail suivantes:
Le « Polygon budget » (pour « budget Polygone ») détaille la densité d'informations, qui est variable afin de s'adapter aux capacités de bande passante de la plateforme matérielle ciblée.
La « shading complexity » (pour « complexité d'ombrage ») représente une mesure quantifiable de complexité de traitement des algorithmes de rendu de la lumière (shader), adapté à la plateforme matérielle. On sait en effet que la notion de mobilité des plateformes embarquées est liée au nombre d'unités de traitement et à la capacité de traitement des algorithmes de rendu de la lumière.
La notion de « Multiple rendering » (pour « rendu multiple ») présente le degré d'effort demandé à la plateforme matérielle dans le traitement des modèles 3D afin d'en obtenir des représentations projetées sous des angles de vues différentes et complémentaires.
Le « GPU type » indique le type d'architecture matérielle qui exécute le module d'expérimentation. Plusieurs architectures ont été sélectionnées, toutes répondant aux contraintes et spécifications industrielles embarquées. Une plateforme de référence a également été ajoutée au module d'expérimentation.
La « plateform » (pour « plateforme ») fait référence au système d'exploitation ciblé, afin de valider les résultats en répondant à la contrainte énoncée de portabilité.
-11Le résultat du module d'expérimentation est détaillé dans la dernière ligne du tableau cidessous, par la valeur de « display rate » (pour « taux de visualisation ») qui détermine, à partir du seuil de 30 Hz, la qualité perceptible de l'interface humain-machine.
Les objectifs de performance sont atteints, en termes de qualité visuelle (30Hz voire 60Hz dans la majorité des cas de figure), de portabilité (compatibilité Unix/Windows à partir des mêmes données en entrée) et de mobilité (sur les plateformes Tegra et Mali).
Polygon budget 10.000 triangles 10.000 triangles 100.000 triangles 1.000.000 triangles
Shading complexity* 150 GLSL lines 150 GLSL lines 250 GLSL lines 380 GLSL lines
Multiple rendering 8 distincts viewpoints 8 distincts viewpoints 16 distincts viewpoints 64 distincts viewpoints
GPU Type Nvidia Tegra KI MaliT880 Nvidia Tegra XI Nvidia GTX 1070
Platform Arm32 Linux Arm64 Linux Arm64 Linux 1 ntel64 Windows
Display rate 30Hz 60Hz 60Hz 120Hz
* Average number of lines ofGLSL code executed perfragment/per light (pour « Nombre moyens de lignes de code GLSL exécutées parfragment/par lumière »)
Le résultat de l'expérimentation de validation permet de montrer que la conformation modèle 3D issu de CAD peut être automatisée pour être ensuite traitée par une plateforme embarquée dans des conditions satisfaisantes, voire optimales.
Ainsi, le prototype d'expérimentation fonctionne à une fréquence de traitement de 30Hz sur la plateforme Nvidia Tegra Kl embarquée, considérée comme le scénario du cas le pire. En regard, le même prototype affiche une fréquence de 60hz sur la plateforme Mali qualifiée pour l'industrie automobile, soit les conditions idéales d'ergonomie et de performance. La variété des plateformes démontre en outre que les objectifs de portabilité sont atteints.
Il est à noter que l'étape de conformation automatisée a les caractéristiques d'un script. Afin de fournir au script les moyens de conformer les modèles 3D après conversion, il est nécessaire de donner accès aux fonctionnalités d'une Bibliothèque C++ depuis le langage de script sélectionné, en l'occurrence le langage bien connu Lua.
Le procédé consistant à interfacer un langage de programmation avec un autre est désigné sous le terme de Binding. Ce procédé peut être réalisé manuellement et représente un investissement de temps conséquent où chaque fonctionnalité du langage source doit être manuellement interfacée avec
-12le langage cible. Compte tenu de l'importance de la tâche et de la complexité de la bibliothèque C++, l'étape de création du Binding a été automatisée. Le Générateur de binding est capable de lier automatiquement l'intégralité de la Bibliothèque vers les langages de script Lua et Python.
On dispose d'un langage de script à part entière pour l'écriture des scripts expert de conformation afin de concevoir des règles suffisamment souples pour supporter d'importants changements de topologie ou de nomenclature sur le modèle CAD source. De plus, avoir accès à la totalité des fonctionnalités de la Bibliothèque pour intervenir sur le modèle après conversion offre une liberté totale quant aux modifications apportées. Des modifications en masse sont ainsi très simplement accomplies alors qu'elles représentaient une tâche considérable lorsqu'elles étaient effectuées manuellement.
En combinant l'expressivité d'un langage de script de haut niveau et la possibilité d'accéder à l'ensemble des fonctionnalités de bas niveau de la Bibliothèque, on supprime toute intervention manuelle des étapes de conversion d'un modèle 3D depuis un logiciel de CAD vers un format exploitable sur équipement mobile embarqué. Le résultat de cette conversion est directement exploitable par une équipe de développement tout en respectant la vision graphique et fonctionnelle des designers dans le cadre, entre autres, d'un projet de conception d'une IHM.
Dans les secteurs où les contraintes économiques constituent un enjeu stratégique (comme dans l'industrie du jeu vidéo), on constate pourtant, à ce jour, que la question de la conformation automatique des modèles 3D n'est ni adressée, ni résolue. Paradoxalement, cette automatisation est au mieux contournée, le plus souvent remplacée par une intervention manuelle in fine coûteuse et présentant des risques d'erreurs de manipulation générateurs de nuisances sur les standards qualité.
Des bibliothèques de règles spécifiques aux différents types de matériels embarqués supportés ont ainsi pu être établies, accélérant encore davantage le processus de conversion/conformation de modèles 3D vers la Bibliothèque.
Avec le procédé de conversion selon l'invention, il est désormais possible de séparer la conversion de modèles 3D issus d'outils CAD de leur conformation en vue de les rendre embarquables dans des conditions réalistes de capacité de traitement et de temps réel. En opérant l'étape de conformation de manière automatisée à l'aide d'un script expert, il est maintenant possible de répéter l'étape de conversion sans requérir d'intervention humaine dont il est avéré qu'elle constitue un obstacle aux objectifs de maîtrise des coûts de développement d'un projet industriel et génératrice d'un risque d'erreur.
Bibliothèque logicielle
Le module Générateur de binding/Finaliseur est intégré dans une Bibliothèque logicielle dénommée ici la Bibliothèque -, conçue et développée en C++, qui offre un ensemble de fonctionnalités
-13pour l'affichage de données 3D de tout type, jusqu'à pouvoir être intégrée dans des équipements embarqués.
Cette Bibliothèque se compose d'un ensemble de sous-systèmes qui adressent les besoins spécifiques à la réalisation d'interface humain-machine sur écran, dont l'affichage de modèles 3D, la gestion du rendu réaliste, de la lumière, des interactions physiques...
La Bibliothèque permet de réécrire un code 3D depuis un script expert. Cette jonction est rendue possible par le binding (en français, liaison) de la libraire BIBLIOTHÈQUE avec le langage du script expert.
Bien sûr, l'invention n'est pas limitée aux exemples qui viennent d'être décrits et de nombreux aménagements peuvent être apportés à ces exemples sans sortir du cadre de l'invention. Bien entendu, les différentes caractéristiques, formes, variantes et modes de réalisation de l'invention peuvent être associées les unes avec les autres selon diverses combinaisons dans la mesure où elles ne sont pas incompatibles ou exclusives les unes des autres. En particulier toutes les variantes et modes de réalisation décrits précédemment sont combinables entre eux.
Références bibliographiques
Kochhar, K., Hall, J. (1996) A Unified, Object-Oriented Graphies System and Software Architecture for Visualising CAD/CAM Presentations. Computer Graphies Forum, 15, pp.229-248.
Li, Y., Hedlind, M., T Kjellberg, T. and Sivard, G. (2014). System integration for kinematic data exchange. International Journal of Computer Integrated Manufacturing, 28(1), pp.87-97.
Arnaud, R. and Mammou, K. (2009). Real Time Collaborative Three Dimensional Asset Management System. U.S Patent 20110047217A1.
WEB3D CONSORTIUM (2008). X3D specification, http://www.web3d.org/standards/current
Barnes, M. and Levy Finch, E. (2008). COLLADA - Digital Asset Schema Release 1.5.0. https://www.khronos.orq/files/collada spec 1 5.pdf
Smigel, B., and Melding, D. (2002) Best Practices in CAD Conversion. Solid Solution.
Bouville Berthelot, R., Royan, J., Duval, T. and Amaldi, B. (2012) 3DFC: a new containerfor3Dfile formats compositing. Web3D'12 Proceedings of the 17th International Conference on 3D Web technology, pp.27-36.
Bouville Berthelot, R., Royan, J., Duval, T. and Amaldi, B. (2011) Scene Graph Adapter: An efficient Architecture to Improve Interoperability between 3D Formats and 3D Applications Engines. WebBD'll Proceedings of the 16th International Conference on 3D Web Technology, pp. 21-29.
-14Dobos, J. and Steed, A. (2012) 3D Diff: an interactive approach to mesh differencing and conflict resolution. SIGGRAPH Asia 2012 Technical Briefs, p.20.
Remi S. Arnaud, Khaled Mammou (2009 Real Time Collaborative Three Dimensional Asset Management System) US20110047217A1
- The Standford 3D Scanning Repository, http://graphics.stanford.edu/data/3Dscanrep/
Peter Seebach, IBM (2006) The Interchange File Format(IFF) - Simple, portable, and extensible data storage.

Claims (14)

  1. Revendications
    1. Procédé pour transformer un modèle tridimensionnel (3D) issu d'un outil de conception assisté par ordinateur (CAD) en un modèle 3D embarquable dans une interface humain-machine d'un équipement mobile, comprenant les étapes de :
    - recevoir un modèle 3D réalisé à partir dudit outil CAD,
    - convertir le modèle 3D reçu et en extraire des caractéristiques, dans lequel les caractéristiques extraites sont analysées par un interpréteur appliquant sur ledit modèle 3D des règles de traduction et des règles d'encodage, de façon à générer un modèle 3D prêt à être embarqué dans un équipement mobile.
  2. 2. Procédé de transformation selon la revendication 1, caractérisé en ce que l'étape de conversion comprend:
    - une traduction du modèle 3D,
    - un appel d'un jeu de fonctions correspondant à des transformations à apporter sur des modèles 3D envoyés par l'équipement mobile.
  3. 3. Procédé selon la revendication 2, caractérisé en ce qu'il comprend en outre une modification de la topologie et/ou de la densité et/ou de l'orientation d'un modèle 3D en transformation.
  4. 4. Procédé selon l'une des revendications 2 ou 3, caractérisé en ce qu'il comprend en outre une intervention sur des matériaux de façon à les redéfinir et/ou de leur assigner des algorithmes de traitement de la lumière et des matières.
  5. 5. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il comprend en outre une étape de stockage du modèle 3D prêt à être embarqué dans un équipement mobile, dans un format le plus adapté audit équipement mobile.
  6. 6. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que l'étape de conversion comprendre les étapes de :
    - décoder ledit modèle 3D reçu et en extraire des caractéristiques dudit modèle 3D,
    - traduire ledit modèle ainsi décodé, en appliquant des règles de traduction,
    - encoder le modèle 3D ainsi traduit, en appliquant des règles d'encodage, de façon à générer un modèle 3D prêt à être embarqué dans un équipement mobile.
  7. 7. Procédé de transformation selon la revendication 6, caractérisé en ce que les règles de traduction et les règles d'encodage ont été préalablement conçues dans un mode orienté-projet à partir d'informations spécifiques sur l'équipement mobile destiné à recevoir le modèle 3D.
  8. 8. Procédé de transformation selon l'une quelconque des revendications 6 ou 7, caractérisé en ce que l'interpréteur fonctionne sensiblement en parallèle des étapes de décodage, de traduction et d'encodage.
  9. 9. Procédé de transformation selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il est en outre adapté pour transformer un modèle numérique d'un matériau initialement mis en œuvre dans un outil CAD en un modèle numérique dudit matériau qui adapté pour être mis en œuvre dans une interface humain-machine d'un équipement mobile.
  10. 10. Procédé de transformation selon la revendication 9, caractérisé en ce que la transformation du modèle numérique du matériau comprend une étape d'assignation audit modèle numérique d'un ou plusieurs algorithmes de traitement de la lumière et/ou de matières.
  11. 11. Procédé de transformation selon l'une des revendications 9 ou 10, caractérisé en ce que la transformation du modèle numérique du matériau comprend une étape de conversion de flux d'images de façon à rendre lesdites images compatibles et optimisées pour l'équipement mobile.
  12. 12. Module informatique implémentant le procédé de transformation selon l'une quelconque des revendications précédentes, comprenant :
    - un module pour décoder un modèle tridimensionnel (3D) initialement réalisé à partir d'un outil de conception assistées par ordinateur (CAD) et extraire des caractéristiques inhérentes audit modèle 3D,
    - un module pour traduire ledit modèle 3D ainsi décodé en appliquant des règles de traduction,
    - un module pour encoder le modèle 3D ainsi traduit, en appliquant des règles d'encodage, de façon à générer un modèle 3D prêt à être embarqué dans un équipement mobile,
    - un module interpréteur prévu pour analyser les caractéristiques extraites par ledit module décodeur, et pour appliquer sur ledit modèle 3D respectivement lesdites règles de traduction et lesdites règles d'encodage lors de ladite étape d'encodage.
  13. 13. Module informatique selon la revendication 12, caractérisé en ce qu'il est en outre configuré pour transformer un modèle numérique d'un matériau initialement mis en œuvre dans un outil CAD en un modèle numérique dudit matériau qui adapté pour être mis en œuvre dans une interface humain-machine d'un équipement mobile.
  14. 14. Application du procédé de transformation selon l'une quelconque des revendications 1 à 11 à la réalisation d'interfaces humain-machine pour des équipements de mobilité, notamment des véhicules terrestres, aériens ou maritimes.
FR1859225A 2018-10-04 2018-10-04 Procede pour transformer un modele tridimensionnel (3d) en un modele 3d embarquable dans une interface humain-machine d’un equipement mobile Pending FR3087025A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR1859225A FR3087025A1 (fr) 2018-10-04 2018-10-04 Procede pour transformer un modele tridimensionnel (3d) en un modele 3d embarquable dans une interface humain-machine d’un equipement mobile
PCT/FR2019/052363 WO2020070459A1 (fr) 2018-10-04 2019-10-04 Procédé pour transformer un modèle tridimensionnel (3d) en un modèle 3d embarquable dans une interface humain-machine d'un équipement embarque

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1859225A FR3087025A1 (fr) 2018-10-04 2018-10-04 Procede pour transformer un modele tridimensionnel (3d) en un modele 3d embarquable dans une interface humain-machine d’un equipement mobile

Publications (1)

Publication Number Publication Date
FR3087025A1 true FR3087025A1 (fr) 2020-04-10

Family

ID=65951636

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1859225A Pending FR3087025A1 (fr) 2018-10-04 2018-10-04 Procede pour transformer un modele tridimensionnel (3d) en un modele 3d embarquable dans une interface humain-machine d’un equipement mobile

Country Status (2)

Country Link
FR (1) FR3087025A1 (fr)
WO (1) WO2020070459A1 (fr)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5083262A (en) 1986-04-28 1992-01-21 International Business Machines Corporation Language bindings for graphics functions to enable one application program to be used in different processing environments
WO2002037406A1 (fr) * 2000-10-30 2002-05-10 Translation Technologies, Inc. Systeme de geometrie computationnel, interface d'interruption, comparateur de modele geometrique et procede correspondant
US6614430B1 (en) * 1998-09-08 2003-09-02 Proficiency Ltd. System and method for the exchange of CAD data
CN101814024A (zh) 2009-10-23 2010-08-25 深圳创维-Rgb电子有限公司 一种跨平台3d界面设计架构和工具
US20110047217A1 (en) 2009-08-18 2011-02-24 Arnaud Remi S Real Time Collaborative Three Dimensional Asset Management System

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5083262A (en) 1986-04-28 1992-01-21 International Business Machines Corporation Language bindings for graphics functions to enable one application program to be used in different processing environments
US6614430B1 (en) * 1998-09-08 2003-09-02 Proficiency Ltd. System and method for the exchange of CAD data
WO2002037406A1 (fr) * 2000-10-30 2002-05-10 Translation Technologies, Inc. Systeme de geometrie computationnel, interface d'interruption, comparateur de modele geometrique et procede correspondant
US20110047217A1 (en) 2009-08-18 2011-02-24 Arnaud Remi S Real Time Collaborative Three Dimensional Asset Management System
CN101814024A (zh) 2009-10-23 2010-08-25 深圳创维-Rgb电子有限公司 一种跨平台3d界面设计架构和工具

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
BARNES, M.; LEVY FINCH, E., COLLADA - DIGITAL ASSET SCHÉMA RELEASE 1.5.0., 2008, Retrieved from the Internet <URL:htt s://www.khronos.ora/files/collada soec 1 5.pdf>
BOUVILLE BERTHELOT, R.; ROYAN, J.; DUVAL, T.; ARNALDI, B.: "3DFC: a new container for 3D file formats compositing", WEB3D'12 PROCEEDINGS OF THE 17TH INTERNATIONAL CONFÉRENCE ON 3D WEB TECHNOLOGY, 2012, pages 27 - 36
BOUVILLE BERTHELOT, R.; ROYAN, J.; DUVAL, T.; ARNALDI, B.: "Scene Graph Adapter: An efficient Architecture to Improve Interoperability between 3D Formats and 3D Applications Engines", WEB3D'11 PROCEEDINGS OF THE 16TH INTERNATIONAL CONFÉRENCE ON 3D WEB TECHNOLOGY,, 2011, pages 21 - 29
DOBOS, J.; STEED, A.: "3D Diff: an interactive approach to mesh differencing and conflict resolution", SIGGRAPH ASIA 2012 TECHNICAL BRIEFS,, 2012, pages 20
KOCHHAR, K.,; HALL, J.: "A Unified, Object-Oriented Graphics System and Software Architecture for Visualising CAD/CAM Presentations", COMPUTER GRAPHICS FORUM,, vol. 15, 1996, pages 229 - 248, XP001057314, DOI: doi:10.1111/1467-8659.1540229
LI, Y.; HEDLIND, M.; T KJELLBERG, T.; SIVARD, G.: "System intégration for kinematic data exchange", INTERNATIONAL JOURNAL OF COMPUTER INTEGRATED MANUFACTURING, vol. 28, no. 1, 2014, pages 87 - 97
PETER SEEBACH: "The Interchange File Format(IFF) - Simple, portable, and extensible data storage", 2006, IBM
SMIGEL, B.; MEIDING, D.: "Best Practices in CAD Conversion", SOLID SOLUTION., 2002
THE STANDFORD 3D SCANNING REPOSITORY, Retrieved from the Internet <URL:http://graphics.stanford.edu/data/3Dscanrep/>
WEB3D CONSORTIUM, 2008, Retrieved from the Internet <URL:httfJ:/ /www.web3d.orQ standards/current>

Also Published As

Publication number Publication date
WO2020070459A9 (fr) 2020-06-18
WO2020070459A1 (fr) 2020-04-09

Similar Documents

Publication Publication Date Title
CA2795739C (fr) Format de fichier pour representer une scene
Parisi Programming 3D Applications with HTML5 and WebGL: 3D Animation and Visualization for Web Pages
US11087430B2 (en) Customizable render pipelines using render graphs
US7836086B2 (en) Layering and referencing of scene description
Cozzi et al. OpenGL insights
WO2020070458A1 (fr) Procédé pour générer une liaison (binding) entre une bibliothèque c/c++ et un langage interprété, et mise en oeuvre de ce procédé pour la transformation d&#39;un modèle tridimensionnel (3d)
WO2008118065A1 (fr) Système de rendu d&#39;éléments graphiques
US11423617B2 (en) Subdividing a three-dimensional mesh utilizing a neural network
US8902234B1 (en) Simulation primitives
JP7457211B2 (ja) サードパーティ資産を用いて拡張現実体験を促進するためのコンピューティングプラットフォーム
US7836087B1 (en) Graphs of components for digital productions
FR3087025A1 (fr) Procede pour transformer un modele tridimensionnel (3d) en un modele 3d embarquable dans une interface humain-machine d’un equipement mobile
Dirksen Three. js Cookbook
Klein et al. Declarative AR and image processing on the web with Xflow
Chen et al. Cloud computing platform for an online model library system
Ardolino et al. Geometry and models: 3D format conversion (FBX, COLLADA)
US8253753B1 (en) Dual-type component connections
Lentz et al. X3D and glTF Model Differencing for Conversions, Comparison and Conformance Testing.
Berinstein et al. Game development tool essentials
Снігур et al. Creating a virtual gallery for the presentation of artworks
Austin et al. OpenSimulator and Unity as a Shared Development Environment
Arnfield How Game Development Technology Can Assist in Visualization Challenges
Norbye et al. CT Scanning as a Tool for Quality Assurance and Additive Manufacturing
Goren et al. The virtual archaeology project-towards an interactive multi-scalar 3D visualisation in computer game engines
Audu et al. Non-Photorealistic Image Rendering Using Cylindrical Projection

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20200410

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6