Quand on sort de 17 ans de promotion immobilière — Nexity, Cardinal, CMI, 500+ logements livrés — on a une vision assez précise de ce que coûtent vraiment les outils BIM. Pas seulement en licences. En temps de formation, en dépendance vis-à-vis d'un éditeur, en frais de migration forcée quand Autodesk décide de changer ses formats ou ses tarifs. FreeCAD 1.0, sorti en novembre 2024, et son API Python mature, proposent une alternative sérieuse. Pas pour tout le monde. Mais pour le bon profil — développeur qui connaît le métier — c'est une combinaison qui ouvre des perspectives concrètes.

Le problème des outils BIM actuels

Les licences AutoCAD et Revit — ou la suite AEC Collection d'Autodesk — oscillent entre 3 000 et 5 000 € par poste et par an pour les offres complètes en abonnement. Pour une équipe de cinq personnes, on est déjà à 15 000–25 000 €/an. Auxquels il faut ajouter la formation initiale (plusieurs jours pour Revit, qui a une courbe d'apprentissage réelle), le temps d'adaptation à chaque mise à jour majeure, et la dépendance structurelle aux formats propriétaires.

Ce qui m'a toujours frappé, c'est le décalage entre la richesse fonctionnelle de ces outils et ce que la majorité des utilisateurs en font réellement. Un opérateur foncier qui monte un programme de 30 logements n'a pas besoin de la coordination multi-lot en BIM 360. Il a besoin de plans de niveaux justes, de surfaces SHAB et SDP calculées correctement, et d'une visualisation 3D convenable pour les présentations en conseil municipal. Pour ces usages, la suite Autodesk est un marteau-pilon pour enfoncer un clou.

Le vrai coût du vendor lock-in : Autodesk a modifié le format .rvt à plusieurs reprises de manière non rétrocompatible. Des projets archivés dans une ancienne version deviennent illisibles sans la licence correspondante. Pour une promotion dont la durée de vie réglementaire des documents est de 10 ans, c'est un risque concret — et souvent sous-estimé.

Le marché des petites structures — AMO indépendants, promoteurs régionaux, maîtres d'ouvrage publics de taille moyenne — n'a pas de réponse adaptée dans l'écosystème propriétaire. Soit on paie le prix fort, soit on reste sur AutoCAD 2D vieillissant, soit on bricole avec des outils de DAO grand public qui ne parlent pas IFC. FreeCAD change cette équation.

FreeCAD v1.0 — ce qui a changé en 2024

FreeCAD existe depuis 2002. Pendant longtemps, il a traîné une réputation justifiée de logiciel prometteur mais instable — le genre d'outil qu'on teste, qu'on trouve intéressant, et qu'on abandonne après le troisième crash inexpliqué. La raison principale : le problème de nommage topologique, connu dans la communauté sous le nom de topological naming problem.

En pratique, ce bug se manifestait ainsi : vous modélisiez une pièce en plusieurs étapes (une extrusion, puis un congé, puis une poche), et si vous reveniez modifier la première étape, les suivantes se référençaient sur de mauvaises faces et le modèle s'effondrait. Pour du dessin de conception architecturale où on itère constamment sur les dimensions, c'était rédhibitoire.

La version 1.0, publiée en novembre 2024 après plus de 20 ans de développement, résout ce problème à la racine. L'équipe a refondu le système de référencement topologique. Le résultat est un modélisateur paramétrique où les modifications en cascade fonctionnent comme attendu. Ce n'est pas un détail : c'est la condition sine qua non pour utiliser FreeCAD sur des projets réels, pas des démos.

Les autres améliorations notables de la v1.0 :

Une sortie à surveiller de près : FreeCAD 1.0 n'est pas parfait. Certains workbenches secondaires (MEP, structure avancée) restent inégaux. Mais pour la modélisation architecturale de base — volumes, plans, surfaces, export — c'est la première version sur laquelle je recommanderais de construire quelque chose de sérieux.

Python comme langage de modélisation BIM

Ce qui distingue FreeCAD de tous les autres outils BIM open-source, c'est son API Python. Pas un langage de script limité, pas une macro enregistrée — une API complète et documentée qui expose l'intégralité du moteur de modélisation. Tout ce que vous pouvez faire dans l'interface graphique, vous pouvez le faire en Python. Et surtout, vous pouvez faire des choses que l'interface graphique ne permet pas facilement : la génération paramétrique en masse.

Concrètement, ça signifie qu'un plan de logement peut devenir un fichier de configuration JSON et un script Python. Le modèle n'est plus un fichier figé — c'est du code versionnable, reproductible, modifiable en batch. Pour un promoteur qui fait varier les surfaces de ses typologies selon les contraintes PLU parcelle par parcelle, c'est une rupture de paradigme.

Voici un exemple minimal — la création d'un logement T3 avec calcul automatique de SHAB :

import FreeCAD, Part

doc = FreeCAD.newDocument("T3_Logement")
# Dalle de sol 65m²
longueur = 9500  # mm
largeur = 6800   # mm
hauteur = 100    # épaisseur dalle

dalle = doc.addObject("Part::Box", "Dalle")
dalle.Length = longueur
dalle.Width = largeur
dalle.Height = hauteur

# Calcul SHAB automatique
shab_m2 = (longueur / 1000) * (largeur / 1000)
print(f"SHAB calculée : {shab_m2:.1f} m²")

doc.recompute()
FreeCAD.Console.PrintMessage(f"Logement créé : {shab_m2:.1f} m²\n")

Ce script est trivial — mais il illustre l'essentiel. La dalle est paramétrée en millimètres (convention FreeCAD), le calcul SHAB est immédiat, et doc.recompute() déclenche le moteur de résolution des dépendances. En partant de là, on peut aller très loin : ajouter des murs, des ouvertures, des pièces imbriquées, des propriétés IFC personnalisées — le tout piloté par des variables issues d'un JSON externe.

La vraie puissance apparaît quand on exécute ce script en dehors de l'interface graphique, en ligne de commande, sur un serveur. FreeCAD supporte un mode headless — sans fenêtre, sans GPU, en pur process Python. C'est ce qui rend l'intégration dans un backend web théoriquement faisable.

Use cases concrets pour l'immobilier

Génération paramétrique de variantes de typologies

Le cas le plus direct : un promoteur a une contrainte de programme — 30 % de T3, 40 % de T2, 30 % de T4 — et une enveloppe de surface de plancher fixée par le PLU. Aujourd'hui, un architecte refait les plans manuellement pour chaque variante. Avec un script Python + FreeCAD, on peut décrire les contraintes dans un JSON, lancer le script, et obtenir 10 variantes de plans exportées en DXF en quelques minutes. Chaque variante est cohérente, les surfaces sont calculées, et le fichier source est versionnable sous Git.

Ce n'est pas de la génération architecturale au sens artistique. C'est de la génération d'enveloppes fonctionnelles — des boîtes aux bonnes dimensions qui respectent les ratios surface habitable / surface totale, les dégagements de circulation minimaux, les accès PMR. Le travail d'architecture reste humain ; l'itération de contraintes devient automatisable.

Calcul automatisé SHAB / SDP

En promotion immobilière française, le calcul de la Surface Habitable (SHAB) et de la Surface de Plancher (SDP) est critique à deux titres. D'abord pour la commercialisation — la loi Carrez impose une précision au centième sur la surface privative dans les actes de vente. Ensuite pour le permis de construire — la SDP conditionne les droits à construire, les taxes (taxe d'aménagement calculée au m²), et les obligations de stationnement.

Calculer ces surfaces manuellement à partir de plans 2D, c'est une source d'erreurs régulière — notamment quand les plans évoluent en cours de conception et que les tableaux de surfaces ne sont pas mis à jour. Un modèle FreeCAD piloté par Python calcule ces surfaces en temps réel à chaque modification, directement depuis la géométrie 3D. Zéro dérive, zéro resaisie.

Export IFC pour la coordination avec les bureaux d'études

L'IFC (Industry Foundation Classes) est le format ouvert standard de l'industrie BIM. Un modèle exporté en IFC depuis FreeCAD peut être importé dans n'importe quel logiciel de coordination — Solibri, BIMcollab, Tekla, ou les outils d'un bureau d'études structure. En pratique, la qualité de l'export IFC de FreeCAD est correcte pour des modèles architecturaux simples. Elle n'atteint pas le niveau d'un export Revit sur des projets complexes — mais pour des programmes résidentiels courants, elle est suffisante pour les échanges en phase APS/APD.

Visualisation 3D pour les présentations clients

Le quatrième cas d'usage est souvent sous-estimé : la présentation en conseil municipal ou en réunion de copropriété. Un volume 3D simple, correctement texturé, communique infiniment mieux qu'un plan 2D pour des non-techniciens. FreeCAD peut exporter vers des formats lisibles par Blender pour un rendu plus soigné, ou vers des viewers 3D web légers pour une intégration dans une présentation HTML. Pas besoin de payer une licence Lumion à 2 000 €/an pour une présentation d'esquisse.

La règle des 80/20 appliquée au BIM : 80 % des besoins d'un promoteur résidentiel — plans, surfaces, volumétrie, échanges bureau d'études — peuvent être couverts par FreeCAD + Python à coût quasi nul. Les 20 % restants (coordination multi-corps d'état en temps réel, clash detection sur grands projets, planning 4D) nécessitent effectivement des outils professionnels dédiés. La question est de ne pas payer pour les 20 % quand on n'en a pas besoin.

Le workflow Python + FreeCAD + automatisation

Ce qui m'intéresse dans FreeCAD, ce n'est pas de remplacer Revit pour les architectes. C'est d'intégrer la modélisation BIM dans une chaîne de traitement automatisée — le genre de pipeline qu'un développeur peut construire et maintenir.

Le workflow tel que je le conçois ressemble à ceci :

  1. Source de données — un JSON décrivant le programme : typologies, surfaces cibles, contraintes de hauteur, orientation.
  2. Script Python — exécuté en mode headless sur un serveur, il appelle l'API FreeCAD, génère le modèle 3D, calcule les surfaces.
  3. Export — le script exporte en SVG (plans 2D), DXF (pour l'architecte), IFC (pour les bureaux d'études), et éventuellement un format 3D léger pour le web.
  4. Affichage web — les fichiers exportés sont servis depuis un stockage objet (R2, S3) et affichés dans une interface React.

L'intégration avec une application web comme BeForBuild est théoriquement faisable via un backend worker. FreeCAD headless peut tourner dans un container Docker. La question n'est pas technique — c'est une question de temps d'exécution. Générer un modèle FreeCAD prend quelques secondes à quelques dizaines de secondes selon la complexité. Ce n'est pas du temps réel, mais c'est acceptable pour un workflow de génération à la demande.

Côté infrastructure, Cloudflare Workers peut servir de couche d'orchestration — recevoir la requête de génération, déclencher le container de calcul, attendre le résultat, servir les fichiers exportés. Le pattern est celui d'une tâche asynchrone classique, pas d'une réponse synchrone à moins de 50ms. C'est parfaitement compatible avec un produit web à destination de professionnels de l'immobilier.

Les limites actuelles — honnêtement

Je ne suis pas vendeur de rêves. FreeCAD + Python, c'est puissant pour le bon profil, et inutilisable pour les autres. Voici les limites réelles, sans les minimiser.

La courbe d'apprentissage Python. L'API FreeCAD suppose que vous savez déjà programmer en Python. Ce n'est pas une critique — c'est un prérequis. Pour un architecte sans background dev, c'est une barrière infranchissable sans accompagnement. Cet outil s'adresse à des développeurs qui connaissent l'immobilier, ou à des professionnels de l'immobilier qui ont appris à coder. Ce profil hybride est rare — c'est précisément pourquoi il y a une opportunité.

Pas de collaboration en temps réel. BIM 360 et Autodesk Construction Cloud permettent à dix intervenants de travailler simultanément sur le même modèle, avec gestion des conflits, historique des modifications, et notifications. FreeCAD n'a pas d'équivalent. On peut versionner les fichiers sous Git, mais la collaboration multi-utilisateur en temps réel n'existe pas. Pour des projets impliquant plusieurs corps d'état en phase d'exécution, c'est un manque réel.

L'écosystème de plugins reste jeune. Revit dispose d'un marketplace riche — des milliers de plugins pour la planification, l'estimation, la gestion des équipements techniques. FreeCAD a un catalogue de workbenches en croissance, mais la couverture fonctionnelle reste inégale. Les workbenches MEP (plomberie, électricité, CVC) sont encore en développement actif et ne sont pas utilisables en production sur des projets complexes.

La documentation est hétérogène. La documentation officielle de l'API Python est correcte, mais certaines parties sont incomplètes ou en retard par rapport au code. Il faut souvent aller lire les sources directement — ce qui suppose un certain niveau de confort avec Python et les conventions de FreeCAD.

En résumé : FreeCAD est un outil pour des développeurs qui veulent générer des modèles, pas pour des architectes qui veulent collaborer dessus. Ces deux besoins sont distincts.

La vision — où ça va dans 3 à 5 ans

Ce qui m'occupe depuis quelques mois, c'est l'image du produit qui existe au bout de cette trajectoire. Voilà ce que j'entrevois pour 2028-2030.

Un promoteur — ou un AMO, ou un investisseur institutionnel — arrive sur une interface web. Il entre les paramètres de son programme : "T3, 65 m², orientation sud, hauteur maximale 9 m, parcelle 450 m²". Il sélectionne sa commune. En quelques secondes, un backend Python + FreeCAD génère un ou plusieurs plans de masse, calcule automatiquement la SHAB et la SDP, vérifie les règles du PLU importées via l'API Géoportail Urbanisme (qui expose déjà les documents d'urbanisme en WFS/WMS), et exporte un PDF récapitulatif + un fichier IFC.

La couche d'intelligence artificielle ne fait pas la conception architecturale — elle connaît les règles. Elle sait que dans telle commune, le coefficient d'emprise au sol est de 40 %, que les reculs sont de 4 m en limite séparative, que la hauteur plafond en zone UB est limitée à R+3. Elle injecte ces contraintes dans le script de génération et filtre les variantes non conformes avant même de les afficher.

Ce n'est pas de la science-fiction. Les briques existent : FreeCAD headless, l'API PLU de l'État, les modèles de langage capables de raisonner sur des règles métier, Cloudflare Workers pour l'orchestration. Ce qui manque, c'est l'intégration — et quelqu'un qui connaît suffisamment bien les deux mondes pour faire les bons choix d'architecture logicielle.

C'est précisément ce que je construis, brique par brique, entre les missions freelance.

Vous voulez explorer la génération automatique de plans ?
Je suis disponible pour des missions de conseil ou de développement sur des sujets à l'intersection de l'immobilier et du code — outillage BIM, automatisation de calculs réglementaires, interfaces métier PropTech. TJM 380 € HT/j.
Voir buildoto.com →