Maquette IFC : 70 objets sur 229 ne sont rangés dans aucun niveau
Nous avons fait lire neuf maquettes IFC publiques à un outil libre qui compte les objets par niveau. Sur une maison de trois niveaux produite par un convertisseur, 70 objets sur 229, dont 42 murs sur 140, ne sont rangés dans aucun niveau tout en figurant dans le total du fichier, un écart qu'une simple addition permet de repérer avant de ventiler un métré.
Le 29 septembre 2026, nous avons fait lire neuf maquettes numériques publiques à ifc-mcp, un outil libre qui permet d’interroger une maquette, et notamment d’en sortir les quantités niveau par niveau. Sur la neuvième, une maison de trois niveaux, la somme des trois niveaux donne 159 objets alors que le fichier en contient 229 : il manque 70 objets au compte par niveau, dont 42 murs sur 140. Ces objets ne sont pas perdus, ils restent dans le total du fichier, mais aucun niveau ne les contient. L’outil ne lisant aucune surface dans ce fichier, l’écart se mesure en nombre d’objets et non en mètres carrés. Sur les huit autres maquettes, il ne manque aucun mur, aucune dalle ni aucun autre élément construit.
Pour mémoire, l’IFC est le format ouvert dans lequel les logiciels de maquette numérique, comme Revit ou ArchiCAD, échangent leurs fichiers entre architectes, bureaux d’études et économistes. Une maquette IFC range ses objets dans une arborescence : le terrain, que la norme appelle le site, puis le bâtiment, puis ses niveaux. Chaque mur, dalle ou porte est normalement placé dans un niveau, et c’est ce rangement que suit un logiciel pour sortir les quantités étage par étage, par exemple pour ventiler une décomposition du prix global et forfaitaire (DPGF) par bâtiment et par niveau. Un objet placé directement sous le site ou sous le bâtiment, au-dessus des niveaux, sort de cette ventilation sans sortir du total. Dans la maison de notre essai, l’écart vient du fichier : un logiciel de conversion, qui traduit une maquette d’un format dans un autre, l’a produit en 2020 en rangeant ces 70 objets sous le site.
Un outil libre et neuf maquettes publiques
ifc-mcp est un programme libre publié sur PyPI, le dépôt public des programmes écrits en Python ; nous avons essayé la version du 17 septembre 2026. Conçu pour qu’un assistant d’IA interroge une maquette par un protocole commun (MCP), il a un seul auteur déclaré et se présente comme une version alpha, encore en développement. Nous l’avons utilisé comme instrument de mesure, en appelant ses fonctions par un script.
Les neuf maquettes sont des fichiers publics réunis par des développeurs pour tester un logiciel de lecture d’IFC, issus pour la plupart de Revit et d’ArchiCAD. Pour rattacher un objet à un niveau, l’outil suit deux liens prévus par la norme : la contenance, et l’assemblage, quand un élément fait partie d’un ensemble plus grand, comme les volées d’un escalier. Nous avons écarté du compte les réservations, ces ouvertures prévues dans les murs, qui dépendent du mur qui les porte et non d’un niveau.
Six maquettes au compte juste
Sur six des neuf maquettes, la somme des niveaux est égale au total du fichier, famille par famille. La plus grosse, une clinique dentaire exportée de Revit, compte 2 620 éléments.
Sur quatre de ces six fichiers, l’outil signale tout de même de 5 à 20 objets sans niveau, mais ce sont des définitions de types de portes et de fenêtres, qui ne portent aucune quantité et ne faussent pas le compte. Une septième maquette contient trois éléments virtuels, des objets sans forme ni nom, qui manquent à la somme des niveaux : 96 objets sur 99. Avant de s’inquiéter d’un objet signalé, il faut donc regarder sa famille.
La huitième maquette donne un résultat nul : son unique niveau n’a pas de nom, et l’outil n’y trouve alors aucun objet quand on l’interroge niveau par niveau, tout en n’en signalant aucun comme sans niveau. L’anomalie semble tenir ici à la façon dont l’outil repère les niveaux plutôt qu’au rangement du fichier.
Sur la maison convertie, 70 objets hors des niveaux
Dans la neuvième maquette, les 70 objets placés sous le site se répartissent ainsi : 42 murs sur 140, 10 dalles sur 18, 6 poteaux sur 8, 6 escaliers sur 10, 4 portes sur 15, une fenêtre sur 22 et un objet générique. Les quantités demandées à l’outil niveau par niveau puis au total, famille par famille, redonnent cet écart : 159 objets dans les niveaux, 229 dans le fichier.
Sur les murs, l’outil en rattache 98 à un niveau et en laisse 42 dans le seul total du fichier. Graphique Bâtiment IA, d’après notre essai du 29 septembre 2026.
Un autre logiciel ne tomberait pas forcément sur le même chiffre. Parmi les 70 objets, 52 portent un troisième lien, une « référence » au rez-de-chaussée, que l’outil ne lit pas ; la norme le prévoit pour un ouvrage rangé à un endroit et qui en concerne d’autres, comme un mur-rideau qui traverse plusieurs étages. Un logiciel qui lit ces références pourrait compter ces 52 objets au rez-de-chaussée, ou les laisser hors des niveaux ; nous ne l’avons pas vérifié. Les 18 autres restent hors des niveaux dans tous les cas.
Ce jeu de test a été réuni pour ses difficultés de lecture : ses proportions ne disent rien des maquettes qu’un bureau d’études reçoit au quotidien. Le tableau reprend les résultats avec les noms que la norme IFC donne aux familles (IfcWall pour les murs, IfcSlab pour les dalles, IfcProxy pour un objet générique).
| Maquette | Produite par | Objets recensés | Somme des niveaux | Signalés par l’outil | Famille des objets signalés |
|---|---|---|---|---|---|
| AC20-FZK-Haus | ArchiCAD 20 | 99 | 96 | 3 | éléments virtuels (IfcVirtualElement) |
| duplex | Revit 2011 | 218 | 218 | 12 | types de portes et fenêtres (IfcDoorStyle, IfcWindowStyle), hors recensement |
| ISSUE_129 | Revit, génie civil | 969 | 969 | 0 | |
| ISSUE_044 | ArchiCAD 24 | 8 | 8 | 0 | |
| IfcOpenHouse_IFC4 | IfcOpenShell | 40 | 0 | 0 | niveau sans nom |
| Office_A_20110811 | Revit | 805 | 805 | 19 | types de portes et fenêtres, hors recensement |
| ISSUE_126_model | ArchiCAD 20 | 283 | 283 | 5 | types de portes et fenêtres, hors recensement |
| dental_clinic | Revit | 2 620 | 2 620 | 20 | types de portes et fenêtres, hors recensement |
| ISSUE_034_HouseZ | convertisseur ASIFC 2.15 | 229 | 159 | 70 | IfcWall 42, IfcSlab 10, IfcColumn 6, IfcStair 6, IfcDoor 4, IfcWindow 1, IfcProxy 1 |
Objets recensés : les éléments de la maquette, sans les réservations, les types et les espaces. Essai du 29 septembre 2026, ifc-mcp 0.2.11, réservations exclues (IfcOpeningElement).
Une addition avant de ventiler
Le contrôle ne demande pas d’outil particulier : la visionneuse ou le logiciel de métré habituel suffit, s’il donne les quantités par niveau et pour tout le fichier. Avant de ventiler un métré, l’économiste additionne les quantités de chaque niveau, famille par famille, et compare le résultat au total du fichier ; sur la maison de l’essai, cela fait 27 sous-totaux et neuf comparaisons. En cas d’écart, la liste des objets rangés hors des niveaux est à demander à l’expéditeur de la maquette.
En amont, le coordinateur BIM, qui vérifie les maquettes avant de les diffuser, peut s’assurer à chaque étape du projet que chaque objet est rangé dans un niveau, sauf les ouvrages extérieurs au bâtiment. La convention BIM du projet peut en faire une exigence écrite pour les producteurs de fichiers.
Lire aussi
Sources
- ifc-mcp 0.2.11, paquet source publié sur PyPI le 17 septembre 2026, empreinte SHA-256 4cc44f75c058f11cf5c2b3c0a6998c739e974c138343f06b390c6a63ebb77a12 ; README et code (find_orphans, _iter_ifc_elements, resolve_storey_for_element, get_quantities) figés le 29 septembre 2026
- API JSON de PyPI pour ifc-mcp : versions, dates de dépôt, licence MIT, statut 3 - Alpha, auteur déclaré Imants (relevée et figée le 29 septembre 2026)
- Jeu de fichiers IFC publics du moteur web-ifc, dépôt ThatOpen/engine_web-ifc, dossier tests/ifcfiles/public, permalien de commit (fichiers téléchargés le 29 septembre 2026)
- buildingSMART International, schéma IFC2x3 TC1, relation IfcRelReferencedInSpatialStructure (consultée le 29 septembre 2026)
Voyez ce que ça donne sur vos cas.
L’outil qui traite cette tâche est sur le site. Regardez ce qu’il donne sur vos propres documents.
Tester le comparateur d’indices de plansOu parlons de votre cas : 30 minutes, gratuites →
À lire ensuite