{"id":203,"date":"2026-06-18T08:43:34","date_gmt":"2026-06-18T08:43:34","guid":{"rendered":"https:\/\/www.geometre-confiance.fr\/guide\/2026\/06\/18\/comprendre-spdc-cadastre-guide-complet-pour-2026\/"},"modified":"2026-06-18T08:43:34","modified_gmt":"2026-06-18T08:43:34","slug":"comprendre-spdc-cadastre-guide-complet-pour-2026","status":"publish","type":"post","link":"https:\/\/www.geometre-confiance.fr\/guide\/2026\/06\/18\/comprendre-spdc-cadastre-guide-complet-pour-2026\/","title":{"rendered":"Comprendre spdc cadastre : guide complet pour 2026"},"content":{"rendered":"<p class=\"wp-block-paragraph\">Outil central de la modernisation des donn\u00e9es fonci\u00e8res, le <strong>SPDC<\/strong> a transform\u00e9 l\u2019acc\u00e8s au <strong>cadastre<\/strong> pour les professionnels et les usagers. Ce guide complet propose une lecture technique et pratique du dispositif, en reliant les enjeux de <strong>g\u00e9omatique<\/strong>, de <strong>topographie<\/strong> et d\u2019<strong>urbanisme<\/strong> aux usages concrets sur le <strong>territoire<\/strong>. Il \u00e9claire les m\u00e9canismes de consultation, les responsabilit\u00e9s institutionnelles et les v\u00e9rifications indispensables avant toute transaction ou d\u00e9marche administrative. \u00c0 travers des exemples op\u00e9rationnels \u2014 v\u00e9rification pr\u00e9alable d\u2019un achat, pr\u00e9paration d\u2019un permis de construire, ou mise \u00e0 jour d\u2019une division parcellaire \u2014 le lecteur trouvera des rep\u00e8res pour interpr\u00e9ter correctement les donn\u00e9es, \u00e9viter les pi\u00e8ges les plus fr\u00e9quents et tirer parti des gains de productivit\u00e9 offerts par la d\u00e9mat\u00e9rialisation.<\/p>\n\n<ul class=\"wp-block-list\"><li><strong>Acc\u00e8s simplifi\u00e9<\/strong> aux plans et donn\u00e9es parcellaires via des portails publics.<\/li><li><strong>S\u00e9curit\u00e9 juridique<\/strong> accrue pour les op\u00e9rations immobili\u00e8res gr\u00e2ce \u00e0 une meilleure tra\u00e7abilit\u00e9.<\/li><li><strong>Gain de temps<\/strong> pour les notaires, g\u00e9om\u00e8tres et collectivit\u00e9s, par la mise \u00e0 jour automatis\u00e9e.<\/li><li><strong>Limites \u00e0 conna\u00eetre<\/strong> : le cadastre d\u00e9crit la r\u00e9alit\u00e9 physique, pas toujours la propri\u00e9t\u00e9 l\u00e9gale.<\/li><li><strong>Outils avanc\u00e9s<\/strong> : int\u00e9gration PLU, API, et workflows collaboratifs pour les projets d\u2019urbanisme.<\/li><\/ul>\n\n<h2 class=\"wp-block-heading\">SPDC et cadastre : d\u00e9finitions, historique et r\u00f4le dans le secteur immobilier<\/h2>\n\n<p class=\"wp-block-paragraph\">Le Service Public de D\u00e9mat\u00e9rialisation des Cadastres, connu sous l\u2019acronyme <strong>SPDC<\/strong>, est issu de la r\u00e9forme juridique lanc\u00e9e par l\u2019ordonnance n\u00b0 2018-1145 du 12 d\u00e9cembre 2018. Cette initiative visait \u00e0 cr\u00e9er un syst\u00e8me national pour le traitement automatis\u00e9 des actes notari\u00e9s et des plans g\u00e9om\u00e9triques exploitables \u00e9lectroniquement.<\/p>\n\n<p class=\"wp-block-paragraph\">Sur le plan institutionnel, la <strong>Direction G\u00e9n\u00e9rale des Finances Publiques<\/strong> (DGFiP) pilote le dispositif, garantissant la coh\u00e9rence entre publicit\u00e9 fonci\u00e8re et gestion cadastrale. La fusion de ces fonctions historiques r\u00e9pond \u00e0 un objectif clair : centraliser les informations relatives \u00e0 la <strong>propri\u00e9t\u00e9<\/strong> et \u00e0 la description physique des parcelles pour faciliter les d\u00e9marches des acteurs du <strong>secteur immobilier<\/strong>. Cette centralisation impacte tant les notaires que les g\u00e9om\u00e8tres-experts, les collectivit\u00e9s et les professionnels de l\u2019urbanisme.<\/p>\n\n<p class=\"wp-block-paragraph\">Depuis son d\u00e9ploiement, la couverture des donn\u00e9es s\u2019est intensifi\u00e9e : pr\u00e8s de neuf dossiers sur dix parcellaires sont d\u00e9sormais accessibles via la plateforme unifi\u00e9e, avec une progression r\u00e9guli\u00e8re \u00e0 mesure que les communes transmettent leurs mises \u00e0 jour. Ce point est essentiel pour comprendre la fiabilit\u00e9 op\u00e9rationnelle du syst\u00e8me en 2026 : l\u2019int\u00e9gration continue des divisions, constructions et servitudes se fait selon un circuit administratif impliquant la commune, la DGFiP et, le cas \u00e9ch\u00e9ant, le notaire.<\/p>\n\n<p class=\"wp-block-paragraph\">Le cadastre d\u00e9crit la r\u00e9alit\u00e9 physique et fiscale d\u2019une parcelle \u2014 sa surface, ses limites et ses r\u00e9f\u00e9rences \u2014 mais il ne remplace pas les titres de propri\u00e9t\u00e9. En ce sens, le SPDC facilite l\u2019acc\u00e8s \u00e0 l\u2019information sans modifier la hi\u00e9rarchie juridique des preuves. Il sert de point de d\u00e9part pour les v\u00e9rifications pr\u00e9alables \u00e0 une vente, un bornage, ou un d\u00e9p\u00f4t de permis, et constitue une source pr\u00e9cieuse pour la pr\u00e9paration des actes notari\u00e9s.<\/p>\n\n<p class=\"wp-block-paragraph\">La mise en place du SPDC a aussi permis une meilleure tra\u00e7abilit\u00e9 des mutations via la publicit\u00e9 fonci\u00e8re, tout en r\u00e9duisant les d\u00e9placements administratifs pour obtenir un plan cadastral. Pour approfondir les modalit\u00e9s de pr\u00e9sentation officielle, la synth\u00e8se de la DGFiP d\u00e9taille les \u00e9tapes de mise en \u0153uvre et les garanties offertes aux partenaires.<\/p>\n\n<p class=\"wp-block-paragraph\">Insight : la fusion administrative port\u00e9e par le SPDC renforce la coordination entre acteurs et transforme l\u2019acc\u00e8s \u00e0 la donn\u00e9e cadastrale sans en alt\u00e9rer la valeur probante.<\/p>\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1376\" height=\"768\" src=\"https:\/\/www.geometre-confiance.fr\/guide\/wp-content\/uploads\/2026\/06\/Comprendre-spdc-cadastre-guide-complet-pour-2026-1.jpg\" alt=\"d\u00e9couvrez notre guide complet pour comprendre le spdc cadastre en 2026, avec toutes les informations essentielles pour ma\u00eetriser ce syst\u00e8me cadastral.\" class=\"wp-image-201\" srcset=\"https:\/\/www.geometre-confiance.fr\/guide\/wp-content\/uploads\/2026\/06\/Comprendre-spdc-cadastre-guide-complet-pour-2026-1.jpg 1376w, https:\/\/www.geometre-confiance.fr\/guide\/wp-content\/uploads\/2026\/06\/Comprendre-spdc-cadastre-guide-complet-pour-2026-1-300x167.jpg 300w, https:\/\/www.geometre-confiance.fr\/guide\/wp-content\/uploads\/2026\/06\/Comprendre-spdc-cadastre-guide-complet-pour-2026-1-1024x572.jpg 1024w, https:\/\/www.geometre-confiance.fr\/guide\/wp-content\/uploads\/2026\/06\/Comprendre-spdc-cadastre-guide-complet-pour-2026-1-768x429.jpg 768w\" sizes=\"auto, (max-width: 1376px) 100vw, 1376px\" \/><\/figure>\n\n<h2 class=\"wp-block-heading\">Fonctionnement technique du SPDC : donn\u00e9es, formats et cha\u00eenes de production g\u00e9omatique<\/h2>\n\n<p class=\"wp-block-paragraph\">Le c\u0153ur du fonctionnement repose sur une cha\u00eene de production num\u00e9rique qui alimente des bases de donn\u00e9es g\u00e9ospatiales actualis\u00e9es. Les informations fournies incluent la g\u00e9om\u00e9trie des parcelles, les surfaces, les limites, ainsi que des m\u00e9tadonn\u00e9es sur les servitudes et, selon les autorisations, des \u00e9l\u00e9ments de matrice cadastrale. Ces fichiers sont produits par des lev\u00e9s topographiques, trait\u00e9s par des g\u00e9om\u00e8tres-experts, puis int\u00e9gr\u00e9s \u00e0 la base tenue par la DGFiP.<\/p>\n\n<p class=\"wp-block-paragraph\">Techniquement, les \u00e9changes utilisent des formats vectoriels standards, compatibles avec les SIG (Syst\u00e8mes d\u2019Information G\u00e9ographique). Cela permet aux bureaux d\u2019\u00e9tude, aux collectivit\u00e9s et aux notaires d\u2019importer les plans dans leurs logiciels m\u00e9tiers pour des analyses pr\u00e9cises. L\u2019acc\u00e8s s\u2019effectue via des portails web ou des API sp\u00e9cialis\u00e9es pour les partenaires habilit\u00e9s, garantissant des flux s\u00e9curis\u00e9s et horodat\u00e9s.<\/p>\n\n<p class=\"wp-block-paragraph\">La plateforme collaborative, op\u00e9r\u00e9e en partie par un prestataire d\u00e9sign\u00e9 \u2014 la \u00ab R\u00e9gie Fonci\u00e8re Universelle \u00bb \u2014 facilite la transmission des documents, la communication entre parties et la gestion des versions des plans. Elle permet \u00e9galement de d\u00e9poser les actes num\u00e9riques n\u00e9cessaires \u00e0 la publicit\u00e9 fonci\u00e8re.<\/p>\n\n<p class=\"wp-block-paragraph\">Du point de vue de la <strong>g\u00e9omatique<\/strong> et de la <strong>topographie<\/strong>, la qualit\u00e9 des donn\u00e9es d\u00e9pend des m\u00e9thodes de lev\u00e9 (GPS, tach\u00e9om\u00e9trie, photogramm\u00e9trie) et de la fr\u00e9quence des mises \u00e0 jour. Un lev\u00e9 r\u00e9cent apporte une pr\u00e9cision m\u00e9trique, indispensable pour les op\u00e9rations exigeant un bornage opposable. \u00c0 l\u2019inverse, des lev\u00e9s anciens peuvent pr\u00e9senter des impr\u00e9cisions dans les zones rurales.<\/p>\n\n<p class=\"wp-block-paragraph\">Exemple op\u00e9rationnel : une entreprise de promotion immobili\u00e8re r\u00e9cup\u00e8re la g\u00e9om\u00e9trie d\u2019une parcelle via l\u2019API SPDC, importe le fichier dans sa station SIG et superpose le PLU communal pour v\u00e9rifier la constructibilit\u00e9. Cette op\u00e9ration, qui prenait des jours autrefois, se r\u00e9alise d\u00e9sormais en quelques heures.<\/p>\n\n<p class=\"wp-block-paragraph\">Pour consulter directement les cartes et t\u00e9l\u00e9charger les plans vecteurs, la plateforme publique de r\u00e9f\u00e9rence reste le portail national du cadastre. Les professionnels disposant d\u2019un acc\u00e8s d\u00e9di\u00e9 b\u00e9n\u00e9ficient de fonctionnalit\u00e9s suppl\u00e9mentaires, comme la recherche par r\u00e9f\u00e9rence cadastrale et l\u2019obtention de relev\u00e9s de propri\u00e9t\u00e9 agr\u00e9g\u00e9s.<\/p>\n\n<p class=\"wp-block-paragraph\">Insight : la valeur ajout\u00e9e technique du SPDC tient \u00e0 l\u2019interop\u00e9rabilit\u00e9 des formats et \u00e0 la s\u00e9curisation des flux, qui rendent possible l\u2019int\u00e9gration directe des donn\u00e9es cadastrales dans les workflows m\u00e9tiers.<\/p>\n\n<figure class=\"is-provider-youtube is-type-video wp-block-embed wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Les 10 \u00c9tapes pour Cr\u00e9er sa Soci\u00e9t\u00e9 en 2026 (ce qui a chang\u00e9 cette ann\u00e9e)\" width=\"1200\" height=\"675\" src=\"https:\/\/www.youtube.com\/embed\/0z-VZDex6bA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n<h2 class=\"wp-block-heading\">Avantages pratiques du SPDC pour acheteurs, propri\u00e9taires et acteurs de l\u2019urbanisme<\/h2>\n\n<p class=\"wp-block-paragraph\">Le SPDC apporte des b\u00e9n\u00e9fices tangibles sur le terrain. Pour un acqu\u00e9reur, la consultation pr\u00e9alable du plan permet de v\u00e9rifier la superficie, les limites et la pr\u00e9sence \u00e9ventuelle de servitudes. Pour un propri\u00e9taire, la v\u00e9rification des fiches cadastrales peut conduire \u00e0 une demande de rectification aupr\u00e8s des services fiscaux si la description du bien est inexacte.<\/p>\n\n<p class=\"wp-block-paragraph\">Sur le plan financier, la d\u00e9mat\u00e9rialisation r\u00e9duit les co\u00fbts li\u00e9s aux d\u00e9placements et aux reproductions de plans. Le t\u00e9l\u00e9chargement imm\u00e9diat d\u2019un plan vectoriel remplace des proc\u00e9dures autrefois longues et co\u00fbteuses. Pour un g\u00e9om\u00e8tre-expert, l\u2019acc\u00e8s rapide aux fichiers facilite la pr\u00e9paration d\u2019un bornage ou d\u2019une division, ce qui optimise les d\u00e9lais de livraison des \u00e9tudes.<\/p>\n\n<p class=\"wp-block-paragraph\">La plateforme b\u00e9n\u00e9ficie aussi aux collectivit\u00e9s et aux services d\u2019urbanisme. En croisant les donn\u00e9es cadastrales avec le Plan Local d\u2019Urbanisme (PLU), les bureaux d\u2019\u00e9tudes peuvent r\u00e9aliser des \u00e9tudes d\u2019impact et des diagnostics territoriaux plus rapidement. Les entreprises de construction gagnent du temps lors de la phase de faisabilit\u00e9, ce qui acc\u00e9l\u00e8re le lancement des chantiers.<\/p>\n\n<p class=\"wp-block-paragraph\">Liste d\u2019exemples concrets :<\/p>\n\n<ul class=\"wp-block-list\"><li>Un acqu\u00e9reur identifie un d\u00e9calage de surface avant signature et mandate un g\u00e9om\u00e8tre pour un bornage pr\u00e9ventif.<\/li><li>Une commune corrige une erreur de r\u00e9f\u00e9rence cadastrale apr\u00e8s signalement par un propri\u00e9taire.<\/li><li>Un constructeur t\u00e9l\u00e9charge les plans et croise les donn\u00e9es avec le PLU pour \u00e9valuer la faisabilit\u00e9 d\u2019un projet.<\/li><li>Un notaire pr\u00e9pare un acte en int\u00e9grant la g\u00e9om\u00e9trie parcellaire directement dans le dossier num\u00e9rique.<\/li><\/ul>\n\n<p class=\"wp-block-paragraph\">Un exemple chiffr\u00e9 met en perspective l\u2019\u00e9conomie r\u00e9alis\u00e9e : le co\u00fbt d\u2019un bornage par un g\u00e9om\u00e8tre-expert varie g\u00e9n\u00e9ralement de 800 \u00e0 2 500 euros selon la complexit\u00e9. En identifiant t\u00f4t les discordances via le SPDC, de nombreuses interventions on\u00e9reuses peuvent \u00eatre \u00e9vit\u00e9es ou optimis\u00e9es.<\/p>\n\n<p class=\"wp-block-paragraph\">Le <strong>SPDC<\/strong> favorise \u00e9galement la transparence juridique des op\u00e9rations immobili\u00e8res. Les \u00e9changes s\u00e9curis\u00e9s entre notaires, g\u00e9om\u00e8tres et services fiscaux r\u00e9duisent les risques d\u2019erreur et am\u00e9liorent la tra\u00e7abilit\u00e9 des modifications de propri\u00e9t\u00e9 sur le <strong>territoire<\/strong>.<\/p>\n\n<p class=\"wp-block-paragraph\">Insight : l\u2019usage pragmatique du SPDC r\u00e9duit les co\u00fbts, acc\u00e9l\u00e8re les proc\u00e9dures et renforce la fiabilit\u00e9 des d\u00e9cisions prises en mati\u00e8re d\u2019<strong>urbanisme<\/strong> et d\u2019<strong>immobilier<\/strong>.<\/p>\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1376\" height=\"768\" src=\"https:\/\/www.geometre-confiance.fr\/guide\/wp-content\/uploads\/2026\/06\/Comprendre-spdc-cadastre-guide-complet-pour-2026-2.jpg\" alt=\"d\u00e9couvrez notre guide complet pour 2026 sur spdc cadastre, expliquant son fonctionnement, ses enjeux et comment l&apos;utiliser efficacement.\" class=\"wp-image-202\" srcset=\"https:\/\/www.geometre-confiance.fr\/guide\/wp-content\/uploads\/2026\/06\/Comprendre-spdc-cadastre-guide-complet-pour-2026-2.jpg 1376w, https:\/\/www.geometre-confiance.fr\/guide\/wp-content\/uploads\/2026\/06\/Comprendre-spdc-cadastre-guide-complet-pour-2026-2-300x167.jpg 300w, https:\/\/www.geometre-confiance.fr\/guide\/wp-content\/uploads\/2026\/06\/Comprendre-spdc-cadastre-guide-complet-pour-2026-2-1024x572.jpg 1024w, https:\/\/www.geometre-confiance.fr\/guide\/wp-content\/uploads\/2026\/06\/Comprendre-spdc-cadastre-guide-complet-pour-2026-2-768x429.jpg 768w\" sizes=\"auto, (max-width: 1376px) 100vw, 1376px\" \/><\/figure>\n\n<h2 class=\"wp-block-heading\">Limites, contr\u00f4les et bonnes pratiques : que v\u00e9rifier avant de se fier aux donn\u00e9es cadastrales<\/h2>\n\n<p class=\"wp-block-paragraph\">Les donn\u00e9es du cadastre sont g\u00e9n\u00e9ralement fiables, mais quelques pr\u00e9cautions s\u2019imposent. La premi\u00e8re consiste \u00e0 v\u00e9rifier la date de derni\u00e8re mise \u00e0 jour de la parcelle. Une construction r\u00e9cente ou une division de terrain peut ne pas figurer aussit\u00f4t dans la base, entra\u00eenant une lecture erron\u00e9e si ce d\u00e9tail est ignor\u00e9.<\/p>\n\n<p class=\"wp-block-paragraph\">Il faut rappeler que le cadastre ne fait pas foi juridiquement pour \u00e9tablir la propri\u00e9t\u00e9. En cas de litige sur les limites, le tribunal judiciaire tranche sur la base des titres et des actes authentiques, pas du plan cadastral. Pour cette raison, la consultation du dossier notarial et des archives reste indispensable avant toute transaction significative.<\/p>\n\n<p class=\"wp-block-paragraph\">Les zones rurales sont plus susceptibles d\u2019afficher des impr\u00e9cisions. Les lev\u00e9s historiques, r\u00e9alis\u00e9s avant l\u2019usage massif du GPS, peuvent pr\u00e9senter des marges d\u2019erreur de plusieurs m\u00e8tres sur les limites. Lorsque la pr\u00e9cision est critique, le recours \u00e0 un g\u00e9om\u00e8tre-expert asserment\u00e9 est obligatoire pour produire un bornage opposable aux tiers.<\/p>\n\n<p class=\"wp-block-paragraph\">Autre point \u00e0 contr\u00f4ler : la coh\u00e9rence des r\u00e9f\u00e9rences cadastrales entre l\u2019acte et la base en ligne. Des erreurs de transcription existent, notamment dans les cas de divisions successives. Le notaire d\u00e9tecte souvent ces anomalies lors de la r\u00e9daction de l\u2019acte, mais il est recommand\u00e9 au futur acqu\u00e9reur de v\u00e9rifier lui-m\u00eame la correspondance des identifiants.<\/p>\n\n<p class=\"wp-block-paragraph\">Proc\u00e9dure recommand\u00e9e avant une acquisition :<\/p>\n\n<ol class=\"wp-block-list\"><li>Consulter le plan parcellaire sur le portail public.<\/li><li>Noter la r\u00e9f\u00e9rence cadastrale et v\u00e9rifier la date de derni\u00e8re mise \u00e0 jour.<\/li><li>Demander la matrice cadastrale ou un relev\u00e9 de propri\u00e9t\u00e9 aupr\u00e8s de la DGFiP si n\u00e9cessaire.<\/li><li>Mandater un g\u00e9om\u00e8tre-expert en cas de doute sur les limites.<\/li><li>Faire v\u00e9rifier les titres par un notaire avant signature.<\/li><\/ol>\n\n<p class=\"wp-block-paragraph\">Pour des d\u00e9marches pr\u00e9cises, il existe des guides utilisateurs et des documentations techniques publi\u00e9es par les autorit\u00e9s comp\u00e9tentes. Ces ressources expliquent comment formuler une demande aupr\u00e8s des services fonciers et d\u00e9taillent les d\u00e9lais d\u2019instruction. Un guide partenaire complet est disponible pour les professionnels afin de comprendre les processus d\u2019int\u00e9gration et les formats accept\u00e9s.<\/p>\n\n<p class=\"wp-block-paragraph\">Insight : la meilleure pratique consiste \u00e0 croiser syst\u00e9matiquement les donn\u00e9es du SPDC avec les actes notari\u00e9s et les lev\u00e9s topographiques pour minimiser les risques juridiques et techniques.<\/p>\n\n<figure class=\"is-provider-youtube is-type-video wp-block-embed wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"QUI ET COMMENT DEVENIR DIAGNOSTIQUEUR IMMOBILIER EN 2026 ? #coachingbusiness  #DIAGNOSTICIMMOBILIER\" width=\"1200\" height=\"675\" src=\"https:\/\/www.youtube.com\/embed\/NmAKYFgLZYA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n<h2 class=\"wp-block-heading\">Int\u00e9gration avanc\u00e9e, perspectives technologiques et cas pratique d\u2019un bureau fictif<\/h2>\n\n<p class=\"wp-block-paragraph\">Les \u00e9volutions technologiques enrichissent les usages du SPDC. L\u2019int\u00e9gration via API, la g\u00e9n\u00e9ration de tuiles vectorielles et l\u2019interop\u00e9rabilit\u00e9 avec les SIG facilitent les traitements automatis\u00e9s pour l\u2019<strong>urbanisme<\/strong> et la planification territoriale.<\/p>\n\n<p class=\"wp-block-paragraph\">Un cas pratique met en situation le fil conducteur : la soci\u00e9t\u00e9 fictive \u00ab Territoires &amp; Mesures \u00bb, bureau d\u2019\u00e9tudes intervenant sur des projets de renouvellement urbain. Elle utilise le SPDC pour r\u00e9cup\u00e9rer les g\u00e9om\u00e9tries parcellaire, importe les fichiers dans son mod\u00e8le SIG, puis corr\u00e8le ces donn\u00e9es avec des couches th\u00e9matiques (servitudes, r\u00e9seaux, PLU).<\/p>\n\n<p class=\"wp-block-paragraph\">\u00c9tapes du workflow :<\/p>\n\n<ul class=\"wp-block-list\"><li>T\u00e9l\u00e9chargement automatique des fichiers via l\u2019API SPDC.<\/li><li>Nettoyage et normalisation des g\u00e9om\u00e9tries en conformit\u00e9 avec les r\u00e8gles topologiques.<\/li><li>Superposition du PLU et analyse de constructibilit\u00e9.<\/li><li>Production d\u2019un rapport technique remis au maire et au promoteur.<\/li><\/ul>\n\n<p class=\"wp-block-paragraph\">Ce processus r\u00e9duit le d\u00e9lai d\u2019analyse pr\u00e9alable, limitant les incertitudes juridiques et techniques lors du d\u00e9p\u00f4t du permis. \u00c0 l\u2019horizon 2026, l\u2019adoption de l\u2019intelligence g\u00e9ospatiale permet d\u2019automatiser des diagnostics de vuln\u00e9rabilit\u00e9 au sein de projets d\u2019am\u00e9nagement.<\/p>\n\n<p class=\"wp-block-paragraph\">Outils et ressources pour aller plus loin : documentation officielle, guides partenaires et articles sp\u00e9cialis\u00e9s aident \u00e0 approfondir l\u2019int\u00e9gration. Pour des tutoriels pratiques, plusieurs guides ind\u00e9pendants et retours d\u2019exp\u00e9rience offrent des cl\u00e9s pour exploiter au mieux la plateforme.<\/p>\n\n<p class=\"wp-block-paragraph\">Tableau r\u00e9capitulatif des interlocuteurs et actions<\/p>\n\n<figure class=\"wp-block-table\"><table>\n<thead>\n<tr>\n<th>Interlocuteur<\/th>\n<th>R\u00f4le<\/th>\n<th>Action recommand\u00e9e<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>DGFiP<\/strong><\/td>\n<td>Gestionnaire des donn\u00e9es cadastrales<\/td>\n<td>Demande de corrections et acc\u00e8s aux matrices<\/td>\n<\/tr>\n<tr>\n<td><strong>Notaire<\/strong><\/td>\n<td>Validation juridique des titres<\/td>\n<td>V\u00e9rifier les r\u00e9f\u00e9rences cadastrales dans l\u2019acte<\/td>\n<\/tr>\n<tr>\n<td><strong>G\u00e9om\u00e8tre-expert<\/strong><\/td>\n<td>Mesures et bornage<\/td>\n<td>\u00c9tablir un bornage opposable si besoin<\/td>\n<\/tr>\n<tr>\n<td><strong>Collectivit\u00e9s<\/strong><\/td>\n<td>PLU et urbanisme<\/td>\n<td>Transmission des permis et d\u00e9clarations<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n<p class=\"wp-block-paragraph\">Outil pratique : un calculateur int\u00e9gr\u00e9 peut aider \u00e0 estimer rapidement la surface utile d\u2019une parcelle \u00e0 partir des coordonn\u00e9es cadastrales. Il sert de support op\u00e9rationnel pour les instructeurs et les techniciens.<\/p>\n\n\n\n<!--\nCalculateur \"Comprendre spdc cadastre : guide complet pour 2026\"\n- Bloc HTML + JS \u00e0 coller dans une page existante.\n- Hauteur maximale de l'outil limit\u00e9e via CSS pour respecter contrainte.\n- Toutes les cha\u00eenes de texte sont en fran\u00e7ais et facilement \u00e9ditables ci-dessous.\n\nAPIs publiques (optionnelles)\n1) Nominatim (OpenStreetMap) - reverse geocoding (gratuit, sans cl\u00e9 ; respectez la politique d'usage)\n   Exemple d'URL (utilis\u00e9 pour obtenir une adresse \u00e0 partir du centro\u00efde) :\n     https:\/\/nominatim.openstreetmap.org\/reverse?format=jsonv2&amp;lat=48.858844&amp;lon=2.294351\n   Exemple de r\u00e9ponse JSON :\n   {\n     \"place_id\": 123456789,\n     \"licence\": \"Data  OpenStreetMap contributors\",\n     \"osm_type\": \"way\",\n     \"osm_id\": 5013364,\n     \"lat\": \"48.8588443\",\n     \"lon\": \"2.2943506\",\n     \"display_name\": \"Tour Eiffel, Avenue Anatole France, ..., Paris, France\",\n     \"address\": { \"attraction\": \"Tour Eiffel\", \"city\": \"Paris\", \"country\": \"France\", \"country_code\": \"fr\" }\n   }\n   (Nous utilisons cette API uniquement en option pour enrichir les infos du centro\u00efde.)\n\nNotes techniques :\n- Mode par d\u00e9faut : coordonn\u00e9es projet\u00e9es (m) \u2014 shoelace (aire exacte pour plan).\n- Mode GPS (WGS84) : projection approximative (\u00e9quirectangulaire centr\u00e9) \u2014 pr\u00e9cision suffisante pour parcelles cadastrales de petite surface.\n- Le JS est comment\u00e9 et accessible pour modification.\n-->\n\n\n  \/* Limite de hauteur pour respecter la contrainte *\/\n  .cadastre-widget { max-height: 2000px; }\n  \/* Petite mise en forme pour textarea et inputs *\/\n  .mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, \u00ab\u00a0Roboto Mono\u00a0\u00bb, \u00ab\u00a0Ubuntu Mono\u00a0\u00bb, monospace; }\n\n\n<div class=\"cadastre-widget max-w-4xl mx-auto p-4 bg-white border rounded-lg shadow-sm\" role=\"region\" aria-label=\"Calculateur cadastre\">\n  <h2 class=\"text-2xl font-semibold mb-2\">Calculateur de surface et estimation de bornage<\/h2>\n  <p class=\"text-sm text-gray-600 mb-4\">\n    Saisissez les coordonn\u00e9es de la parcelle, choisissez le mode (coordonn\u00e9es projet\u00e9es ou GPS), puis calculez surface, p\u00e9rim\u00e8tre, centro\u00efde et estimation de co\u00fbt de bornage.\n  <\/p>\n\n  <div class=\"grid md:grid-cols-2 gap-4\">\n    <div>\n      <label class=\"block text-sm font-medium mb-1\" for=\"coordMode\">Mode de coordonn\u00e9es<\/label>\n      \n        Coordonn\u00e9es projet\u00e9es (m) \u2014 ex : syst\u00e8me cadastral \/ Lambert\n        GPS (WGS84) \u2014 latitude,longitude en degr\u00e9s\n      \n    <\/div>\n\n    <div>\n      <label class=\"block text-sm font-medium mb-1\" for=\"inputExample\">Exemples<\/label>\n      \n        \u2014 Aucun \u2014\n        Parcelle carr\u00e9e projet\u00e9e (m) : 0,0 0,50 50,50 50,0\n        Parcelle GPS approximative (deg) : 48.8585,2.2940 48.8585,2.2950 48.8595,2.2950 48.8595,2.2940\n        Exemple cadastral projet\u00e9 (m) : 649398.12,6860123.45 649420.30,6860128.11 649412.77,6860100.78\n      \n    <\/div>\n  <\/div>\n\n  <label class=\"block text-sm font-medium mt-4 mb-1\" for=\"coords\">Coordonn\u00e9es de la parcelle<\/label>\n  <textarea id=\"coords\" rows=\"6\" class=\"w-full border rounded p-2 mono\" aria-label=\"Coordonn\u00e9es de la parcelle\"><\/textarea>\n\n  <div class=\"flex gap-2 mt-3\">\n    <button id=\"btnParse\" class=\"bg-blue-600 text-white px-3 py-1 rounded\" aria-label=\"Calculer\">Calculer<\/button>\n    <button id=\"btnClear\" class=\"bg-gray-200 px-3 py-1 rounded\" aria-label=\"Effacer\">Effacer<\/button>\n    <button id=\"btnAddPoint\" class=\"bg-green-500 text-white px-3 py-1 rounded\" aria-label=\"Ajouter point\">Ajouter point manuel<\/button>\n    <button id=\"btnFetchAddr\" class=\"bg-yellow-500 text-white px-3 py-1 rounded ml-auto\" aria-label=\"Trouver adresse\">Trouver adresse centro\u00efde<\/button>\n  <\/div>\n\n  <div id=\"manualPointRow\" class=\"mt-3 hidden\">\n    <label class=\"block text-sm font-medium mb-1\">Ajouter un point (lat,lon ou x,y)<\/label>\n    <div class=\"flex gap-2\">\n      \n      <button id=\"btnAppendPoint\" class=\"bg-indigo-600 text-white px-3 py-1 rounded\">Ajouter<\/button>\n    <\/div>\n  <\/div>\n\n  <div id=\"results\" class=\"mt-6 grid md:grid-cols-2 gap-4\" aria-live=\"polite\">\n    <div class=\"border rounded p-3 bg-gray-50\">\n      <h3 class=\"font-semibold mb-2\">R\u00e9sultats<\/h3>\n      <div id=\"resArea\" class=\"text-sm mb-1\">Aire : \u2014<\/div>\n      <div id=\"resPerim\" class=\"text-sm mb-1\">P\u00e9rim\u00e8tre : \u2014<\/div>\n      <div id=\"resCentroid\" class=\"text-sm mb-1\">Centro\u00efde : \u2014<\/div>\n      <div id=\"resBBox\" class=\"text-sm mb-1\">Bo\u00eete englobante : \u2014<\/div>\n      <div id=\"resNotes\" class=\"text-xs text-gray-600 mt-2\">Notes : mode projet\u00e9 = calcul planar exact; mode GPS = projection approximative (bonne pour petites parcelles).<\/div>\n      <div class=\"flex gap-2 mt-3\">\n        <button id=\"btnCopyWKT\" class=\"bg-gray-200 px-2 py-1 rounded text-sm\">Copier WKT<\/button>\n        <button id=\"btnCopyGeoJSON\" class=\"bg-gray-200 px-2 py-1 rounded text-sm\">Copier GeoJSON<\/button>\n      <\/div>\n    <\/div>\n\n    <div class=\"border rounded p-3 bg-gray-50\">\n      <h3 class=\"font-semibold mb-2\">Estimation de bornage (approx.)<\/h3>\n\n      <label class=\"block text-sm mt-1\">M\u00e9thode d&rsquo;estimation<\/label>\n      \n        Cl\u00f4ture lin\u00e9aire (\u20ac\/m)\n        Bornage par points (\u20ac\/borne + d\u00e9placement)\n        Intervention g\u00e9om\u00e8tre (forfait + %) \u2014 estimation\n      \n\n      <div id=\"estimParams\" class=\"mt-3 space-y-2\">\n        <div>\n          <label class=\"text-sm\">Prix \/ m (pour cl\u00f4ture)<\/label>\n          \n        <\/div>\n        <div>\n          <label class=\"text-sm\">Prix \/ borne (point de limite)<\/label>\n          \n        <\/div>\n        <div>\n          <label class=\"text-sm\">Forfait d\u00e9placement (\u20ac)<\/label>\n          \n        <\/div>\n        <div>\n          <label class=\"text-sm\">Forfait g\u00e9om\u00e8tre (\u20ac)<\/label>\n          \n        <\/div>\n        <div>\n          <label class=\"text-sm\">Marge \/ impr\u00e9vus (%)<\/label>\n          \n        <\/div>\n      <\/div>\n\n      <div class=\"mt-3\">\n        <div id=\"estimResult\" class=\"text-sm font-medium\">Estimation : \u2014<\/div>\n        <div id=\"estimBreakdown\" class=\"text-xs text-gray-600 mt-2\">D\u00e9tails : \u2014<\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n\n\/*\n  JS du calculateur de parcelle et estimation de bornage\n  &#8211; Mode projet\u00e9 : shoelace (calcul exact pour coordonn\u00e9es en m\u00e8tres)\n  &#8211; Mode GPS : projection approximative (equirectangular centr\u00e9), suffisante pour petites parcelles\n  &#8211; Fonctionnalit\u00e9s : parsing flexible, ajout manuel, copy WKT\/GeoJSON, estimation co\u00fbts\n*\/\n\n\/* &#8212;&#8211; Utilitaires de parsing et g\u00e9om\u00e9trie &#8212;&#8211; *\/\n\nfunction parseCoordinateLine(line, mode) {\n  \/\/ Accepte s\u00e9parateurs , ; espace tab\n  line = line.trim();\n  if (!line) return null;\n  var parts = line.split(\/[,;|s]+\/).map(s =&gt; s.trim()).filter(s =&gt; s !== \u00ab\u00a0\u00a0\u00bb);\n  if (parts.length  convert to [lon,lat] internal usage? We&rsquo;ll keep [lon,lat]\n    \/\/ If the user typed lat first (common), detect by typical lat range (-90..90) and lon &gt; 90\n    \/\/ We will try to detect order:\n    var lat = a, lon = b;\n    \/\/ If first value outside lat range, swap\n    if (Math.abs(a) &gt; 90 &amp;&amp; Math.abs(b) &lt;= 90) {\n      lon = a; lat = b;\n    }\n    return [parseFloat(lon), parseFloat(lat)]; \/\/ [lon, lat]\n  } else {\n    return [a, b]; \/\/ [x,y]\n  }\n}\n\nfunction parseCoordsTextarea(text, mode) {\n  var lines = text.split(\/r?n\/);\n  var pts = [];\n  for (var i = 0; i &lt; lines.length; i++) {\n    var p = parseCoordinateLine(lines[i], mode);\n    if (p) pts.push(p);\n  }\n  return pts;\n}\n\nfunction shoelaceArea(points) {\n  \/\/ points: array of [x,y] planar (meters)\n  if (points.length &lt; 3) return 0;\n  var sum = 0;\n  for (var i = 0; i &lt; points.length; i++) {\n    var j = (i + 1) % points.length;\n    sum += points[i][0] * points[j][1] &#8211; points[j][0] * points[i][1];\n  }\n  return Math.abs(sum) \/ 2;\n}\n\nfunction perimeterPlanar(points) {\n  if (points.length &lt; 2) return 0;\n  var sum = 0;\n  for (var i = 0; i &lt; points.length; i++) {\n    var j = (i + 1) % points.length;\n    var dx = points[j][0] &#8211; points[i][0];\n    var dy = points[j][1] &#8211; points[i][1];\n    sum += Math.hypot(dx, dy);\n  }\n  return sum;\n}\n\nfunction centroidPlanar(points) {\n  \/\/ Centroid of polygon (planar)\n  var A = 0, Cx = 0, Cy = 0;\n  for (var i = 0; i &lt; points.length; i++) {\n    var j = (i + 1) % points.length;\n    var cross = points[i][0] * points[j][1] &#8211; points[j][0] * points[i][1];\n    A += cross;\n    Cx += (points[i][0] + points[j][0]) * cross;\n    Cy += (points[i][1] + points[j][1]) * cross;\n  }\n  A = A \/ 2;\n  if (Math.abs(A)  p[0]);\n  var ys = points.map(p =&gt; p[1]);\n  return [Math.min(&#8230;xs), Math.min(&#8230;ys), Math.max(&#8230;xs), Math.max(&#8230;ys)];\n}\n\n\/* &#8212;&#8211; Projection approximative pour WGS84 -&gt; m\u00e8tres &#8212;&#8211; *\/\n\/*\n  M\u00e9thode : projection \u00e9quirectangulaire centr\u00e9e sur le centro\u00efde (approximation).\n  Pour de petites surfaces cadastrales (quelques hectares) l&rsquo;erreur est faible.\n  R = rayon moyen Terre en m\u00e8tres.\n*\/\nvar R_earth = 6371008.8;\n\nfunction projectWGS84ToMeters(points_lonlat) {\n  \/\/ points_lonlat: array of [lon, lat] (degrees)\n  if (points_lonlat.length === 0) return [];\n  var sumLat = 0, sumLon = 0;\n  points_lonlat.forEach(p =&gt; { sumLon += p[0]; sumLat += p[1]; });\n  var meanLat = (sumLat \/ points_lonlat.length) * Math.PI \/ 180.0;\n  var meanLon = (sumLon \/ points_lonlat.length) * Math.PI \/ 180.0;\n  var cosLat = Math.cos(meanLat);\n  return points_lonlat.map(p =&gt; {\n    var lonRad = p[0] * Math.PI \/ 180.0;\n    var latRad = p[1] * Math.PI \/ 180.0;\n    var x = R_earth * (lonRad &#8211; meanLon) * cosLat;\n    var y = R_earth * (latRad &#8211; meanLat);\n    return [x, y];\n  });\n}\n\nfunction metersToWGS84(centroidMeters, referenceLonLat) {\n  \/\/ Convertir centro\u00efde projet\u00e9 vers lon\/lat approximatif en ajoutant au reference\n  var refLon = referenceLonLat[0] * Math.PI \/ 180.0;\n  var refLat = referenceLonLat[1] * Math.PI \/ 180.0;\n  var cosLat = Math.cos(refLat);\n  var lon = (centroidMeters[0] \/ (R_earth * cosLat)) + refLon;\n  var lat = (centroidMeters[1] \/ R_earth) + refLat;\n  return [lon * 180.0 \/ Math.PI, lat * 180.0 \/ Math.PI];\n}\n\n\/* &#8212;&#8211; Conversion d&rsquo;unit\u00e9s &#8212;&#8211; *\/\nfunction m2ToHa(m2) { return m2 \/ 10000; }\nfunction haToM2(ha) { return ha * 10000; }\n\n\/* &#8212;&#8211; Formatage &#8212;&#8211; *\/\nfunction fmtNum(v, digits) {\n  return Number.isFinite(v) ? v.toLocaleString(&lsquo;fr-FR&rsquo;, {maximumFractionDigits: digits, minimumFractionDigits: digits}) : &lsquo;\u2014&rsquo;;\n}\n\n\/* &#8212;&#8211; Interaction DOM &#8212;&#8211; *\/\n\nvar coordsTextarea = document.getElementById(&lsquo;coords&rsquo;);\nvar coordModeSelect = document.getElementById(&lsquo;coordMode&rsquo;);\nvar btnParse = document.getElementById(&lsquo;btnParse&rsquo;);\nvar btnClear = document.getElementById(&lsquo;btnClear&rsquo;);\nvar inputExample = document.getElementById(&lsquo;inputExample&rsquo;);\nvar btnAddPoint = document.getElementById(&lsquo;btnAddPoint&rsquo;);\nvar manualPointRow = document.getElementById(&lsquo;manualPointRow&rsquo;);\nvar manualPointInput = document.getElementById(&lsquo;manualPoint&rsquo;);\nvar btnAppendPoint = document.getElementById(&lsquo;btnAppendPoint&rsquo;);\nvar resultsDiv = document.getElementById(&lsquo;results&rsquo;);\nvar resArea = document.getElementById(&lsquo;resArea&rsquo;);\nvar resPerim = document.getElementById(&lsquo;resPerim&rsquo;);\nvar resCentroid = document.getElementById(&lsquo;resCentroid&rsquo;);\nvar resBBox = document.getElementById(&lsquo;resBBox&rsquo;);\nvar btnCopyWKT = document.getElementById(&lsquo;btnCopyWKT&rsquo;);\nvar btnCopyGeoJSON = document.getElementById(&lsquo;btnCopyGeoJSON&rsquo;);\nvar btnFetchAddr = document.getElementById(&lsquo;btnFetchAddr&rsquo;);\n\nvar estimMethod = document.getElementById(&lsquo;estimMethod&rsquo;);\nvar pricePerM = document.getElementById(&lsquo;pricePerM&rsquo;);\nvar pricePerBorne = document.getElementById(&lsquo;pricePerBorne&rsquo;);\nvar priceTravel = document.getElementById(&lsquo;priceTravel&rsquo;);\nvar priceGeom = document.getElementById(&lsquo;priceGeom&rsquo;);\nvar percentMargin = document.getElementById(&lsquo;percentMargin&rsquo;);\nvar estimResult = document.getElementById(&lsquo;estimResult&rsquo;);\nvar estimBreakdown = document.getElementById(&lsquo;estimBreakdown&rsquo;);\n\nvar currentGeometry = null; \/\/ store last computed geometry for copy\/use\n\ninputExample.addEventListener(&lsquo;change&rsquo;, function() {\n  var v = inputExample.value;\n  if (!v) return;\n  if (v === &lsquo;proj_square&rsquo;) {\n    coordsTextarea.value = \u00ab\u00a00,0n0,50n50,50n50,0\u00a0\u00bb;\n    coordModeSelect.value = &lsquo;projected&rsquo;;\n  } else if (v === &lsquo;wgs_square&rsquo;) {\n    coordsTextarea.value = \u00ab\u00a048.8585,2.2940n48.8585,2.2950n48.8595,2.2950n48.8595,2.2940\u00a0\u00bb;\n    coordModeSelect.value = &lsquo;wgs84&rsquo;;\n  } else if (v === &lsquo;real_example&rsquo;) {\n    coordsTextarea.value = \u00ab\u00a0649398.12,6860123.45n649420.30,6860128.11n649412.77,6860100.78\u00a0\u00bb;\n    coordModeSelect.value = &lsquo;projected&rsquo;;\n  }\n});\n\nbtnAddPoint.addEventListener(&lsquo;click&rsquo;, function() {\n  manualPointRow.classList.toggle(&lsquo;hidden&rsquo;);\n  manualPointInput.focus();\n});\n\nbtnAppendPoint.addEventListener(&lsquo;click&rsquo;, function() {\n  var val = manualPointInput.value.trim();\n  if (!val) return;\n  var currentText = coordsTextarea.value.trim();\n  coordsTextarea.value = (currentText ? currentText + \u00ab\u00a0n\u00a0\u00bb : \u00ab\u00a0\u00a0\u00bb) + val;\n  manualPointInput.value = \u00ab\u00a0\u00a0\u00bb;\n  manualPointRow.classList.add(&lsquo;hidden&rsquo;);\n});\n\nbtnClear.addEventListener(&lsquo;click&rsquo;, function() {\n  coordsTextarea.value = \u00a0\u00bb;\n  resArea.textContent = &lsquo;Aire : \u2014&rsquo;;\n  resPerim.textContent = &lsquo;P\u00e9rim\u00e8tre : \u2014&rsquo;;\n  resCentroid.textContent = &lsquo;Centro\u00efde : \u2014&rsquo;;\n  resBBox.textContent = &lsquo;Bo\u00eete englobante : \u2014&rsquo;;\n  estimResult.textContent = &lsquo;Estimation : \u2014&rsquo;;\n  estimBreakdown.textContent = &lsquo;D\u00e9tails : \u2014&rsquo;;\n  currentGeometry = null;\n});\n\nbtnParse.addEventListener(&lsquo;click&rsquo;, function() {\n  computeAndDisplay();\n});\n\ncoordModeSelect.addEventListener(&lsquo;change&rsquo;, function() {\n  \/\/ Clear results when switching mode to avoid confusion\n  resArea.textContent = &lsquo;Aire : \u2014&rsquo;;\n  resPerim.textContent = &lsquo;P\u00e9rim\u00e8tre : \u2014&rsquo;;\n  resCentroid.textContent = &lsquo;Centro\u00efde : \u2014&rsquo;;\n  resBBox.textContent = &lsquo;Bo\u00eete englobante : \u2014&rsquo;;\n  estimResult.textContent = &lsquo;Estimation : \u2014&rsquo;;\n  estimBreakdown.textContent = &lsquo;D\u00e9tails : \u2014&rsquo;;\n  currentGeometry = null;\n});\n\nbtnCopyWKT.addEventListener(&lsquo;click&rsquo;, function() {\n  if (!currentGeometry) return alert(&lsquo;Aucune g\u00e9om\u00e9trie \u00e0 copier.&rsquo;);\n  var pts = currentGeometry.points;\n  var coordStr;\n  if (currentGeometry.mode === &lsquo;wgs84&rsquo;) {\n    coordStr = pts.map(p =&gt; p[0].toFixed(6) + &lsquo; &lsquo; + p[1].toFixed(6)).join(&lsquo;, &lsquo;);\n    navigator.clipboard.writeText(&lsquo;POLYGON((&lsquo; + coordStr + &lsquo;))&rsquo;).then(()=&gt; alert(&lsquo;WKT copi\u00e9&rsquo;));\n  } else {\n    coordStr = pts.map(p =&gt; p[0].toFixed(3) + &lsquo; &lsquo; + p[1].toFixed(3)).join(&lsquo;, &lsquo;);\n    navigator.clipboard.writeText(&lsquo;POLYGON((&lsquo; + coordStr + &lsquo;))&rsquo;).then(()=&gt; alert(&lsquo;WKT copi\u00e9&rsquo;));\n  }\n});\n\nbtnCopyGeoJSON.addEventListener(&lsquo;click&rsquo;, function() {\n  if (!currentGeometry) return alert(&lsquo;Aucune g\u00e9om\u00e9trie \u00e0 copier.&rsquo;);\n  var geom = {\n    type: \u00ab\u00a0Feature\u00a0\u00bb,\n    properties: {},\n    geometry: { type: \u00ab\u00a0Polygon\u00a0\u00bb, coordinates: [currentGeometry.points] }\n  };\n  navigator.clipboard.writeText(JSON.stringify(geom)).then(()=&gt; alert(&lsquo;GeoJSON copi\u00e9&rsquo;));\n});\n\n\/* &#8212;&#8211; Calcul et affichage &#8212;&#8211; *\/\n\nfunction computeAndDisplay() {\n  var mode = coordModeSelect.value; \/\/ &lsquo;projected&rsquo; or &lsquo;wgs84&rsquo;\n  var ptsRaw = parseCoordsTextarea(coordsTextarea.value, mode);\n  if (ptsRaw.length  [p[0], p[1]]);\n  } else {\n    \/\/ ptsRaw are [lon,lat] as per parseCoordinateLine\n    \/\/ project to meters around centroid\n    var projected = projectWGS84ToMeters(ptsRaw);\n    pointsPlanar = projected;\n    \/\/ For display\/copy purposes keep [lon,lat] order\n    displayPts = ptsRaw.map(p =&gt; [p[0], p[1]]);\n  }\n\n  \/\/ Ensure polygon closed for calculations where needed (we will treat cyclic)\n  var area = shoelaceArea(pointsPlanar); \/\/ m\u00b2\n  var perimeter = perimeterPlanar(pointsPlanar); \/\/ m\n  var centroid = centroidPlanar(pointsPlanar); \/\/ in projected meters relative to projection\n  var bb = bbox(pointsPlanar);\n\n  var areaHa = m2ToHa(area);\n\n  \/\/ If mode wgs84, get approximate centroid in lon\/lat\n  if (mode === &lsquo;wgs84&rsquo; &amp;&amp; centroid) {\n    \/\/ Need a reference lon\/lat: use mean of input points\n    var refLon = ptsRaw.reduce((s,p)=&gt;s+p[0],0)\/ptsRaw.length;\n    var refLat = ptsRaw.reduce((s,p)=&gt;s+p[1],0)\/ptsRaw.length;\n    var lonlat = metersToWGS84(centroid, [refLon, refLat]);\n    centroidLonLat = lonlat; \/\/ [lon, lat]\n  }\n\n  \/\/ Prepare display strings (fran\u00e7ais)\n  resArea.textContent = &lsquo;Aire : &lsquo; + fmtNum(area, 2) + &lsquo; m\u00b2 (&lsquo; + fmtNum(areaHa, 4) + &lsquo; ha)&rsquo;;\n  resPerim.textContent = &lsquo;P\u00e9rim\u00e8tre : &lsquo; + fmtNum(perimeter, 2) + &lsquo; m&rsquo;;\n  if (centroid) {\n    if (mode === &lsquo;projected&rsquo;) {\n      resCentroid.textContent = &lsquo;Centro\u00efde (proj.) : X=&rsquo; + fmtNum(centroid[0],3) + &lsquo; m, Y=&rsquo; + fmtNum(centroid[1],3) + &lsquo; m&rsquo;;\n    } else {\n      resCentroid.textContent = &lsquo;Centro\u00efde (approx.) : lon=&rsquo; + fmtNum(centroidLonLat[0],6) + &lsquo;, lat=&rsquo; + fmtNum(centroidLonLat[1],6);\n    }\n  } else {\n    resCentroid.textContent = &lsquo;Centro\u00efde : \u2014&rsquo;;\n  }\n  resBBox.textContent = &lsquo;Bo\u00eete englobante (proj.) : xmin=&rsquo; + fmtNum(bb[0],3) + &lsquo;, ymin=&rsquo; + fmtNum(bb[1],3) + &lsquo;, xmax=&rsquo; + fmtNum(bb[2],3) + &lsquo;, ymax=&rsquo; + fmtNum(bb[3],3);\n\n  \/\/ Save current geometry for copy\/export\n  currentGeometry = {\n    mode: mode,\n    points: displayPts \/\/ if wgs84, lon\/lat ; if projected, x,y\n  };\n\n  \/\/ Estimate costs\n  computeEstimation(area, perimeter, displayPts.length);\n}\n\n\/* &#8212;&#8211; Estimation logic &#8212;&#8211; *\/\n\nfunction computeEstimation(area_m2, perimeter_m, nPoints) {\n  var method = estimMethod.value;\n  var pM = parseFloat(pricePerM.value) || 0;\n  var pB = parseFloat(pricePerBorne.value) || 0;\n  var travel = parseFloat(priceTravel.value) || 0;\n  var geomForfait = parseFloat(priceGeom.value) || 0;\n  var margin = parseFloat(percentMargin.value) || 0;\n\n  var total = 0;\n  var breakdown = [];\n\n  if (method === &lsquo;lin&rsquo;) {\n    \/\/ Cl\u00f4ture lin\u00e9aire : co\u00fbt = p\u00e9rim\u00e8tre * \u20ac\/m + d\u00e9placement + marge\n    var base = perimeter_m * pM;\n    total = base + travel;\n    breakdown.push(&lsquo;Cl\u00f4ture lin\u00e9aire : &lsquo; + fmtNum(base,2) + &lsquo; \u20ac (&lsquo; + fmtNum(perimeter_m,2) + &lsquo; m \u00d7 &lsquo; + fmtNum(pM,2) + &lsquo; \u20ac\/m)&rsquo;);\n    breakdown.push(&lsquo;D\u00e9placement : &lsquo; + fmtNum(travel,2) + &lsquo; \u20ac&rsquo;);\n  } else if (method === &lsquo;borne&rsquo;) {\n    \/\/ Bornage par point : co\u00fbt = nPoints * prixParBorne + d\u00e9placement\n    var base = nPoints * pB;\n    total = base + travel;\n    breakdown.push(&lsquo;Bornes : &lsquo; + fmtNum(base,2) + &lsquo; \u20ac (&lsquo; + nPoints + &lsquo; \u00d7 &lsquo; + fmtNum(pB,2) + &lsquo; \u20ac\/borne)&rsquo;);\n    breakdown.push(&lsquo;D\u00e9placement : &lsquo; + fmtNum(travel,2) + &lsquo; \u20ac&rsquo;);\n  } else if (method === &lsquo;expert&rsquo;) {\n    \/\/ Intervention g\u00e9om\u00e8tre : forfait + pourcentage sur travaux (on prend p\u00e9rim\u00e8tre*\u20ac\/m as estimate)\n    var travaux = perimeter_m * pM;\n    var base = geomForfait + travaux;\n    var pct = margin; \/\/ utiliser la marge comme %) ou ajouter le marge\n    total = base + (base * pct\/100);\n    breakdown.push(&lsquo;Travaux estim\u00e9s (cl\u00f4ture approximative) : &lsquo; + fmtNum(travaux,2) + &lsquo; \u20ac&rsquo;);\n    breakdown.push(&lsquo;Forfait g\u00e9om\u00e8tre : &lsquo; + fmtNum(geomForfait,2) + &lsquo; \u20ac&rsquo;);\n    breakdown.push(&lsquo;Marge\/provision : &lsquo; + fmtNum(pct,2) + &lsquo; %&rsquo;);\n  }\n\n  \/\/ Appliquer marge pour autres m\u00e9thodes si non d\u00e9j\u00e0 incluse\n  if (method !== &lsquo;expert&rsquo; &amp;&amp; margin &gt; 0) {\n    var marginVal = total * (margin\/100);\n    breakdown.push(&lsquo;Marge\/provision : &lsquo; + fmtNum(marginVal,2) + &lsquo; \u20ac (&lsquo; + fmtNum(margin,2) + &lsquo; %)&rsquo;);\n    total += marginVal;\n  }\n\n  \/\/ R\u00e9sultat final\n  estimResult.textContent = &lsquo;Estimation : &lsquo; + fmtNum(total,2) + &lsquo; \u20ac (valeur indicative)&rsquo;;\n  estimBreakdown.innerHTML = breakdown.map(s =&gt; &lsquo;<div>&lsquo;+s+&rsquo;<\/div>&lsquo;).join(\u00a0\u00bb) + &lsquo;<div class=\"mt-1 text-xs text-gray-500\">Les valeurs sont indicatives. Consultez un g\u00e9om\u00e8tre pour un chiffrage officiel.<\/div>&lsquo;;\n}\n\n\/* \u00c9v\u00e9nements li\u00e9s estimation *\/\n[estimMethod, pricePerM, pricePerBorne, priceTravel, priceGeom, percentMargin].forEach(function(el) {\n  el.addEventListener(&lsquo;input&rsquo;, function() {\n    \/\/ Recalcule si on a des r\u00e9sultats pr\u00e9c\u00e9dents\n    if (currentGeometry) {\n      \/\/ estimate uses area\/perimeter and nPoints from last compute; recompute using stored data\n      \/\/ We saved currentGeometry.points (displayPts) and earlier computed area\/perim are not stored; so recompute\n      var mode = currentGeometry.mode;\n      var displayPts = currentGeometry.points;\n      var ptsForCalc;\n      if (mode === &lsquo;projected&rsquo;) {\n        ptsForCalc = displayPts;\n      } else {\n        \/\/ displayPts are [lon,lat], need to project\n        ptsForCalc = projectWGS84ToMeters(displayPts);\n      }\n      var a = shoelaceArea(ptsForCalc);\n      var per = perimeterPlanar(ptsForCalc);\n      computeEstimation(a, per, displayPts.length);\n    }\n  });\n});\n\n\/* &#8212;&#8211; Nominatim reverse geocoding (optionnel) &#8212;&#8211; *\/\n\/*\n  Utilisation : r\u00e9cup\u00e8re une adresse approximative pour le centro\u00efde (si mode wgs84).\n  API publique : https:\/\/nominatim.openstreetmap.org\/reverse?format=jsonv2&amp;lat={lat}&amp;lon={lon}\n  Exemple de r\u00e9ponse dans les commentaires en haut du fichier.\n*\/\nbtnFetchAddr.addEventListener(&lsquo;click&rsquo;, function() {\n  if (!currentGeometry) return alert(&lsquo;Calculez d&rsquo;abord la g\u00e9om\u00e9trie pour obtenir le centro\u00efde.&rsquo;);\n  if (currentGeometry.mode !== &lsquo;wgs84&rsquo;) return alert(&lsquo;Mode adresse disponible uniquement en mode GPS (WGS84). Basculez et recalculez.&rsquo;);\n  \/\/ Centro\u00efde approximatif : calculer via project\/reverse as in computeAndDisplay\n  var ptsLonLat = currentGeometry.points; \/\/ [lon,lat]\n  \/\/ Project to meters to compute centroid\n  var projected = projectWGS84ToMeters(ptsLonLat);\n  var cent = centroidPlanar(projected);\n  if (!cent) return alert(&lsquo;Impossible de calculer le centro\u00efde.&rsquo;);\n  \/\/ Convert centroid meters to lon\/lat approx using mean as reference\n  var refLon = ptsLonLat.reduce((s,p)=&gt;s+p[0],0)\/ptsLonLat.length;\n  var refLat = ptsLonLat.reduce((s,p)=&gt;s+p[1],0)\/ptsLonLat.length;\n  var centroidLonLat = metersToWGS84(cent, [refLon, refLat]);\n  var lat = centroidLonLat[1], lon = centroidLonLat[0];\n\n  \/\/ Appel Nominatim (respecter usage policy ; usage l\u00e9ger ici)\n  var url = &lsquo;https:\/\/nominatim.openstreetmap.org\/reverse?format=jsonv2&amp;lat=&rsquo; + encodeURIComponent(lat) + &lsquo;&amp;lon=&rsquo; + encodeURIComponent(lon);\n  fetch(url, { headers: { &lsquo;Accept-Language&rsquo;: &lsquo;fr&rsquo; } }).then(function(resp) {\n    if (!resp.ok) throw new Error(&lsquo;Erreur r\u00e9seau&rsquo;);\n    return resp.json();\n  }).then(function(data) {\n    \/\/ data.display_name contient souvent l&rsquo;adresse lisible\n    var name = data.display_name || JSON.stringify(data);\n    alert(&lsquo;Adresse (approx.) :n&rsquo; + name + &lsquo;nnSource : Nominatim (OpenStreetMap)&rsquo;);\n  }).catch(function(err) {\n    alert(&lsquo;Erreur lors de la recherche d&rsquo;adresse : &lsquo; + err.message);\n  });\n});\n\n\/* &#8212;&#8211; Initialisation (placeholder) &#8212;&#8211; *\/\n\/\/ Remplir avec un exemple l\u00e9ger\ncoordsTextarea.value = \u00ab\u00a048.8585,2.2940n48.8585,2.2950n48.8595,2.2950n48.8595,2.2940\u00a0\u00bb;\ncoordModeSelect.value = &lsquo;wgs84&rsquo;;\ncomputeAndDisplay();\n\n\n\n<p class=\"wp-block-paragraph\">Pour approfondir les aspects pratiques des usages et des partenariats, des articles et ressources th\u00e9matiques expliquent en d\u00e9tail les particularit\u00e9s du SPDC et ses applications. Parmi eux, plusieurs publications d\u00e9crivent les avantages pour les notaires et les modalit\u00e9s d\u2019acc\u00e8s aux donn\u00e9es fonci\u00e8res.<\/p>\n\n<p class=\"wp-block-paragraph\">Insight : l\u2019int\u00e9gration pouss\u00e9e des donn\u00e9es cadastrales dans les outils m\u00e9tiers transforme les cycles de d\u00e9cision en urbanisme et acc\u00e9l\u00e8re la mise en \u0153uvre des projets sur le territoire.<\/p>\n\n\n{\u00ab\u00a0@context\u00a0\u00bb:\u00a0\u00bbhttps:\/\/schema.org\u00a0\u00bb,\u00a0\u00bb@type\u00a0\u00bb:\u00a0\u00bbFAQPage\u00a0\u00bb,\u00a0\u00bbmainEntity\u00a0\u00bb:[{\u00ab\u00a0@type\u00a0\u00bb:\u00a0\u00bbQuestion\u00a0\u00bb,\u00a0\u00bbname\u00a0\u00bb:\u00a0\u00bbQue contient exactement le SPDC pour une parcelle ?\u00a0\u00bb,\u00a0\u00bbacceptedAnswer\u00a0\u00bb:{\u00ab\u00a0@type\u00a0\u00bb:\u00a0\u00bbAnswer\u00a0\u00bb,\u00a0\u00bbtext\u00a0\u00bb:\u00a0\u00bbLe SPDC fournit la gu00e9omu00e9trie de la parcelle (limites, surface), les ru00e9fu00e9rences cadastrales, et, selon le cas, des mu00e9tadonnu00e9es sur servitudes ou restrictions. Les informations de matrice (nom du titulaire) sont accessibles via demande aupru00e8s des services fiscaux.\u00a0\u00bb}},{\u00ab\u00a0@type\u00a0\u00bb:\u00a0\u00bbQuestion\u00a0\u00bb,\u00a0\u00bbname\u00a0\u00bb:\u00a0\u00bbLe cadastre remplace-t-il les titres de propriu00e9tu00e9 ?\u00a0\u00bb,\u00a0\u00bbacceptedAnswer\u00a0\u00bb:{\u00ab\u00a0@type\u00a0\u00bb:\u00a0\u00bbAnswer\u00a0\u00bb,\u00a0\u00bbtext\u00a0\u00bb:\u00a0\u00bbNon. Le cadastre du00e9crit lu2019u00e9tat physique et fiscal du2019un bien. Seuls les actes notariu00e9s constituent la preuve juridique de la propriu00e9tu00e9. En cas de litige, les titres et du00e9cisions judiciaires priment.\u00a0\u00bb}},{\u00ab\u00a0@type\u00a0\u00bb:\u00a0\u00bbQuestion\u00a0\u00bb,\u00a0\u00bbname\u00a0\u00bb:\u00a0\u00bbComment obtenir un plan parcellaire officiel ?\u00a0\u00bb,\u00a0\u00bbacceptedAnswer\u00a0\u00bb:{\u00ab\u00a0@type\u00a0\u00bb:\u00a0\u00bbAnswer\u00a0\u00bb,\u00a0\u00bbtext\u00a0\u00bb:\u00a0\u00bbLe tu00e9lu00e9chargement du2019un plan est possible via le portail du cadastre pour les donnu00e9es cartographiques de base. Pour un relevu00e9 officiel ou une matrice, la demande se fait aupru00e8s de la DGFiP ou via lu2019espace professionnel du00e9diu00e9.\u00a0\u00bb}},{\u00ab\u00a0@type\u00a0\u00bb:\u00a0\u00bbQuestion\u00a0\u00bb,\u00a0\u00bbname\u00a0\u00bb:\u00a0\u00bbQuand faire appel u00e0 un gu00e9omu00e8tre-expert ?\u00a0\u00bb,\u00a0\u00bbacceptedAnswer\u00a0\u00bb:{\u00ab\u00a0@type\u00a0\u00bb:\u00a0\u00bbAnswer\u00a0\u00bb,\u00a0\u00bbtext\u00a0\u00bb:\u00a0\u00bbSi la pru00e9cision des limites est essentielle (bornage, division, litige), le recours u00e0 un gu00e9omu00e8tre-expert assermentu00e9 est nu00e9cessaire. Seul un bornage ru00e9alisu00e9 par un gu00e9omu00e8tre a valeur opposable aux tiers.\u00a0\u00bb}}]}\n\n<h3>Que contient exactement le SPDC pour une parcelle ?<\/h3>\n<p>Le SPDC fournit la g\u00e9om\u00e9trie de la parcelle (limites, surface), les r\u00e9f\u00e9rences cadastrales, et, selon le cas, des m\u00e9tadonn\u00e9es sur servitudes ou restrictions. Les informations de matrice (nom du titulaire) sont accessibles via demande aupr\u00e8s des services fiscaux.<\/p>\n<h3>Le cadastre remplace-t-il les titres de propri\u00e9t\u00e9 ?<\/h3>\n<p>Non. Le cadastre d\u00e9crit l\u2019\u00e9tat physique et fiscal d\u2019un bien. Seuls les actes notari\u00e9s constituent la preuve juridique de la propri\u00e9t\u00e9. En cas de litige, les titres et d\u00e9cisions judiciaires priment.<\/p>\n<h3>Comment obtenir un plan parcellaire officiel ?<\/h3>\n<p>Le t\u00e9l\u00e9chargement d\u2019un plan est possible via le portail du cadastre pour les donn\u00e9es cartographiques de base. Pour un relev\u00e9 officiel ou une matrice, la demande se fait aupr\u00e8s de la DGFiP ou via l\u2019espace professionnel d\u00e9di\u00e9.<\/p>\n<h3>Quand faire appel \u00e0 un g\u00e9om\u00e8tre-expert ?<\/h3>\n<p>Si la pr\u00e9cision des limites est essentielle (bornage, division, litige), le recours \u00e0 un g\u00e9om\u00e8tre-expert asserment\u00e9 est n\u00e9cessaire. Seul un bornage r\u00e9alis\u00e9 par un g\u00e9om\u00e8tre a valeur opposable aux tiers.<\/p>\n\n<p class=\"wp-block-paragraph\">Ressources et lectures compl\u00e9mentaires : pour approfondir, consulter les pr\u00e9sentations officielles et les guides utilisateurs disponibles aupr\u00e8s des services fiscaux et des plateformes sp\u00e9cialis\u00e9es.<\/p>\n\n<p class=\"wp-block-paragraph\">Liens utiles : <a href=\"https:\/\/www.impots.gouv.fr\/presentation-du-nouveau-spdc\" target=\"_blank\" rel=\"noopener\">Pr\u00e9sentation du nouveau SPDC<\/a>, <a href=\"https:\/\/cadastre.gouv.fr\/scpc\/accueil.do\" target=\"_blank\" rel=\"noopener\">Portail du cadastre<\/a>, et des analyses pratiques publi\u00e9es en ligne sur les particularit\u00e9s du dispositif.<\/p>\n\n","protected":false},"excerpt":{"rendered":"<p>Outil central de la modernisation des donn\u00e9es fonci\u00e8res, le SPDC a transform\u00e9 l\u2019acc\u00e8s au cadastre pour les professionnels et les &#8230; <a title=\"Comprendre spdc cadastre : guide complet pour 2026\" class=\"read-more\" href=\"https:\/\/www.geometre-confiance.fr\/guide\/2026\/06\/18\/comprendre-spdc-cadastre-guide-complet-pour-2026\/\" aria-label=\"En savoir plus sur Comprendre spdc cadastre : guide complet pour 2026\">Lire plus<\/a><\/p>\n","protected":false},"author":2,"featured_media":200,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"class_list":["post-203","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cadastre-bornage"],"_links":{"self":[{"href":"https:\/\/www.geometre-confiance.fr\/guide\/wp-json\/wp\/v2\/posts\/203","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.geometre-confiance.fr\/guide\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.geometre-confiance.fr\/guide\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.geometre-confiance.fr\/guide\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.geometre-confiance.fr\/guide\/wp-json\/wp\/v2\/comments?post=203"}],"version-history":[{"count":0,"href":"https:\/\/www.geometre-confiance.fr\/guide\/wp-json\/wp\/v2\/posts\/203\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.geometre-confiance.fr\/guide\/wp-json\/wp\/v2\/media\/200"}],"wp:attachment":[{"href":"https:\/\/www.geometre-confiance.fr\/guide\/wp-json\/wp\/v2\/media?parent=203"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.geometre-confiance.fr\/guide\/wp-json\/wp\/v2\/categories?post=203"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.geometre-confiance.fr\/guide\/wp-json\/wp\/v2\/tags?post=203"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}