Open Pointcloud Studio en vue isométrique : un scan de 455 millions de points d'un bâtiment avec son jardin et ses arbres en fleurs, le panneau de projet à gauche et le panneau Propriétés à droite
Le même scan avec la boîte de coupe réglée à 11 % de la hauteur, ce qui montre les pièces vues du dessus, et une mesure de distance de 26,774 mètres entre deux points
La boîte de coupe réduite à une tranche comprise entre 4 % et 31 % de la hauteur, qui dégage la façade et ses fenêtres ; à droite, la vue enregistrée et les curseurs de la boîte de coupe
Dessin de coupe de deux pièces d'essai générées : le plan vu d'en haut, avec l'aperçu de la coupe remplie (le mur entre les pièces, dont la baie de porte reste ouverte, et un poteau rond, sous forme de zones remplies) et, à droite, le bloc Section drawing (Snedetekening dans l'interface néerlandaise) du panneau des propriétés
Maillage fermé des mêmes pièces d'essai générées : la surface des deux pièces, avec une baie de porte laissée ouverte dans un mur extérieur, et, à droite, le bloc Closed mesh (Gesloten mesh dans l'interface néerlandaise) avec son résultat : 15 868 sommets, 30 563 triangles et un écart moyen de 1,6 mm
Faces détectées des mêmes pièces d'essai générées, chaque type dans sa couleur (plafonds en bleu, murs couleur sable), et, à droite, le bloc Detect faces (Vlakken herkennen dans l'interface néerlandaise) avec ses décomptes : 2 sols, 2 plafonds, 10 murs et 1 poteau

Télécharger la v0.8.0

Chaque bouton lance le téléchargement immédiatement. Aucun compte n'est nécessaire et il n'y a pas de page intermédiaire.

Windows
Windows 10 et 11, 64 bits
Installateur (.exe)
macOS
macOS 11 et versions ultérieures, processeurs Apple et Intel
Image disque (.dmg)
Linux
x86-64 ; Ubuntu 22.04, Debian 12, Fedora 36 ou plus récent
AppImage (toute distribution)

expérimental Linux sur ARM 64 bits : AppImage · .deb · .tar.gz

  • Windows : l'installateur installe l'application pour l'utilisateur courant, sans droits d'administrateur, ou pour tous les utilisateurs. Si la version ne porte pas de signature de code, Windows peut signaler un éditeur inconnu : choisissez Informations complémentaires, puis Exécuter quand même. Si vous préférez ne rien installer, décompressez le zip et lancez le programme depuis ce dossier.
  • macOS : ouvrez l'image disque et faites glisser l'application dans Applications. L'application n'est pas notarisée, macOS refuse donc le premier lancement. Autorisez-le une fois : sous macOS 15 et versions ultérieures, lancez l'application, fermez le message et choisissez Ouvrir quand même sous Confidentialité et sécurité dans les Réglages Système ; sous macOS 11 à 14, cliquez sur l'application en maintenant la touche Contrôle enfoncée et choisissez Ouvrir.
  • Linux : rendez l'AppImage exécutable une fois avec chmod +x, puis lancez-la. L'AppImage se monte elle-même par FUSE (fusermount3 ou fusermount) ; sans FUSE, lancez-la avec --appimage-extract-and-run après le nom du fichier. Le paquet .deb s'installe avec sudo apt install ./open-pointcloud-studio_*_amd64.deb, à exécuter dans le dossier du téléchargement. Linux doit disposer d'une bibliothèque C en version 2.35 ou plus récente (Ubuntu 22.04, Debian 12, Fedora 36 ou plus récent), de X11 ou de Wayland, et d'un pilote Vulkan ou d'OpenGL ES 3. Les boîtes de dialogue de fichiers utilisent le portail de bureau, ou zenity là où il n'y en a pas.
  • Linux sur ARM 64 bits : expérimental. Ces paquets ne sont construits et testés que sur des machines de compilation avec un rendu logiciel, pas encore sur de vraies cartes ARM ni de vrais ordinateurs portables ARM.
  • Dans la version publiée, chaque fichier est accompagné d'un fichier .sha256 du même nom qui contient sa somme de contrôle : ajoutez .sha256 à la fin de l'adresse d'un téléchargement pour l'obtenir. Le README explique comment vérifier un téléchargement avec ce fichier (en anglais).

Ce que vous pouvez faire

Ouvrir des scans

Nuages de points aux formats LAS, LAZ, E57, PLY, PCD, PTX, PTS et texte, et maillages OBJ, PLY, OFF et STL. Déposez des fichiers sur la fenêtre et ouvrez-en plusieurs à la fois : chaque fichier est un calque que l'on masque, affiche ou ferme.

Tout un projet de scan en une fois

Ouvrez un dossier de scans, ou le fichier de projet de scan (.rcp) d'un projet : les scans qu'il énumère et qui se trouvent à côté de lui s'ouvrent ensemble. On peut aussi déposer un dossier ou un fichier de projet sur la fenêtre.

Gros fichiers

Les fichiers LAS et LAZ s'ouvrent aussitôt à partir de leur en-tête. Un fichier E57 de 512 Mio ou plus montre d'abord un échantillon réparti dans tout le fichier, lorsque sa structure le permet ; les autres fichiers de cette taille affichent toutes les quelques secondes les points déjà lus. Une barre au-dessus de la scène indique la progression et le temps restant, avec un bouton pour annuler.

Le détail là où vous regardez

Pour les nuages d'un million de points ou plus, l'application construit d'elle-même un index sur disque, un octree. Il fournit le détail qui correspond à la position de la caméra, jusqu'au budget de points que vous fixez : dix millions de points au plus. Pendant que la caméra bouge, les points affichés restent à l'écran ; le détail de la nouvelle vue les remplace une fois lu. L'index est conservé et resservira à la prochaine ouverture du fichier.

Affichage

Quatre modes de couleur (couleur enregistrée, altitude, intensité et classification), l'éclairage eye-dome et une taille de point réglable. Les classes présentes dans les nuages s'affichent ou se masquent une à une. Un cube de vue et sept directions de caméra orientent la vue.

Boîte de coupe

Une boîte dont on fait glisser les six faces limite ce qui est affiché, sélectionné, maillé et parcouru à la recherche de faces. C'est ainsi que l'on tire un plan d'étage ou une coupe d'un scan ; le contenu de la boîte s'exporte séparément ou se dessine en 2D. La boîte suit les axes X, Y et Z du scan et ne peut pas pivoter.

Mesurer

Distance mesure une ligne passant par deux points ou plus : chaque segment, la longueur totale, la longueur horizontale et la différence de hauteur. Area mesure un polygone fermé dans son propre plan, de sorte qu'un mur ou un toit en pente est mesuré en vraie grandeur, avec sa surface vue d'en haut et son périmètre. Les points sont choisis parmi tous les points du scan actif, pas seulement parmi ceux qui sont à l'écran.

Vues, notes et BCF

Une vue enregistrée conserve la caméra, la boîte de coupe, le mode de couleur et les annotations : une note sur un point choisi ou une flèche entre deux points. Toutes les vues d'un scan s'exportent en un seul fichier BCF 2.1, chacune avec ses notes, sa caméra, ses plans de coupe et une image de la scène.

Photos de station et déplacement à pied

Les stations de scan des fichiers E57, PCD et PTX apparaissent comme des repères dans la scène. Une station qui a des photos est représentée par une boule : cliquez dessus pour vous placer à cette station et regarder autour de vous. Parcourez le scan avec W, A, S et D, descendez et montez avec Q et E, allez plus vite avec Maj.

Sélectionner et modifier

Sélectionnez tous les points source contenus dans un rectangle, ou choisissez un seul point pour lire ses coordonnées et ses attributs. Supprimez la sélection, avec annulation jusqu'à huit suppressions, réduisez un nuage à un pourcentage exact de ses points, ou déplacez-le et changez son échelle. Le fichier source n'est jamais modifié : un export écrit le résultat des modifications.

Exporter et fusionner

Exportez le nuage entier, la sélection, tout sauf la sélection, le contenu de la boîte de coupe ou un point sur N en LAS, LAZ, E57, PLY, XYZ, PTS ou CSV. Les exports LAS et LAZ conservent les enregistrements de points d'origine avec leurs attributs. Les scans LAS et LAZ visibles peuvent être fusionnés en un seul fichier. Chaque export relit la source complète : aucun point n'est perdu parce qu'il n'était pas à l'écran.

Maillages

Terrain mesh construit une surface 2,5D à partir des points les plus bas d'une grille. 3D surface suit aussi les murs et les surplombs ; le résultat a des trous et n'est pas étanche. Export mesh… enregistre tout maillage, qu'il ait été créé ici, ouvert depuis un fichier ou téléchargé depuis 3D BAG, en OBJ, en PLY binaire ou en STL binaire. Le panneau des propriétés indique les sommets, les triangles, les arêtes ouvertes et le nombre de parties connexes.

Dessin de coupe

Section drawing produit un dessin 2D à l'échelle 1:1 de ce que coupe la boîte de coupe et l'enregistre en DXF ou en DWG : un plan tiré de la tranche située sous la face supérieure de la boîte, ou une coupe verticale tirée de la tranche située derrière l'un de ses quatre côtés. Le dessin contient les points de cette tranche pour tous les scans visibles, réduits à un point tous les 5 mm. Filled cut dessine les murs, les poteaux et les planchers que traverse la tranche sous forme de zones remplies avec leur contour et laisse ouvertes les baies de portes et de fenêtres. Preview affiche ces zones par-dessus les points avant l'enregistrement d'un fichier.

Maillage fermé

Closed mesh construit, à partir de tous les points contenus dans la boîte de coupe ou du scan entier, une surface sans recouvrement : fermée partout où le scan a des points ou un trou plus étroit que la limite fixée (0,25 m au départ), les baies de portes et de fenêtres restant ouvertes. Placez la boîte autour d'une pièce et choisissez Start ; le bloc du panneau des propriétés indique à l'avance la taille de la zone et le nombre approximatif de triangles, et prévient lorsque ce nombre dépasse ce qu'un maillage peut contenir. À la fin, il donne la distance moyenne, la distance à 95 % et la plus grande distance entre les points et le maillage, les arêtes ouvertes et les parties connexes. Un maillage compte au plus quatre millions de sommets et huit millions de triangles et s'enregistre en OBJ, PLY ou STL.

Faces détectées

Detect faces trouve, dans la boîte de coupe ou dans le scan entier, les faces planes (sols, plafonds, murs et plans inclinés) ainsi que les poteaux ronds et les tuyaux. Une face plane est un plan avec son contour, dans lequel une fenêtre est un trou et une porte une encoche ; un poteau ou un tuyau est un cylindre avec son axe, son rayon et sa longueur scannée, sans contour. Ce n'est pas un maillage de la surface. La liste donne pour chaque face son type, sa superficie et le résidu de ses points (RMS) ; un clic met la face en évidence dans la scène. Export faces… les enregistre en JSON, avec les paramètres de chaque plan et de chaque cylindre, ou en OBJ, avec un groupe par face.

Bâtiments 3D BAG

3D BAG buildings…, dans la vue File, télécharge des modèles de bâtiments des Pays-Bas depuis le registre public 3D BAG pour une zone en coordonnées RD New et les affiche avec un scan. Un téléchargement couvre au plus 2 km sur 2 km et environ 5 000 bâtiments et demande une connexion internet. C'est une extension intégrée que l'on peut désactiver sur la page Extensions.

Néerlandais et anglais

L'interface suit la langue du système, néerlandais ou anglais, et se change dans les réglages (Settings). Il n'y a pas d'interface en français. Les messages de la barre d'état et la plupart des textes qui contiennent un nombre n'existent qu'en anglais. Cinq thèmes de couleurs sont proposés.

Formats de fichier

Format Lecture Écriture Remarques
LAS, LAZouiouiS'ouvre à partir de l'en-tête ; les exports conservent les enregistrements de points d'origine
E57ouiouiLes positions du scanner et les photos de station sont lues ; les photos sphériques et cylindriques ne sont pas affichées
PLYouiouiLit l'ASCII et le binaire little-endian ; écrit les deux
PCDouinonASCII, binaire et binaire compressé
PTXouinonAvec la position du scanner de chaque scan
PTSouioui
XYZ, ASC, TXT, CSVouiXYZ, CSVTexte, un point par ligne
OBJouiouiMaillage avec couleurs et normales ; les couleurs de matériau sont lues, pas les images de texture. Les faces détectées s'écrivent aussi en OBJ, avec un groupe par face
PLY (maillage)ouiouiAffiché sous forme de faces. Écrit en PLY binaire avec des coordonnées en double précision, et avec les couleurs et les normales lorsque le maillage en a
STLouiouiAffiché sous forme de faces. Écrit en STL binaire : uniquement des triangles, sans couleurs. Un maillage situé à plus de 2 048 m de zéro est écrit par rapport à une origine en mètres entiers, indiquée dans l'en-tête du fichier
OFFouinonAffiché sous forme de faces ; peut être enregistré en OBJ, PLY ou STL
DXFouioui, comme dessinLecture : DXF ASCII uniquement. Les entités POINT s'ouvrent comme des points, les entités 3DFACE comme des faces que l'on peut enregistrer en OBJ, PLY ou STL ; les autres entités sont ignorées. Écriture : le dessin 2D d'une boîte de coupe, avec des points, des zones remplies, des contours et une ligne de texte ; ce n'est pas un format des exports de points
DWGnonoui, comme dessinLe dessin 2D d'une boîte de coupe, comme pour le DXF, en version R2004, R2010, R2013 ou R2018. Les fichiers DWG ne s'ouvrent pas
Faces en JSON (.json)nonouiLes faces détectées d'un scan : chaque plan avec ses paramètres, son contour et les résidus de ses points, chaque cylindre avec son axe, son rayon et ses résidus, ainsi que les arêtes entre les faces planes. Le guide de l'utilisateur décrit chaque champ (en anglais)
Fichier de projet de scan (.rcp)ouinonSeule la liste des scans est lue. Les copies indexées des scans (.rcs) d'un projet sont dans un format fermé et ne sont pas lues
BCF 2.1 (.bcf)nonouiVues enregistrées avec leurs notes et leurs images
PNGnonouiImage de la vue 3D, par l'API de commandes

API de commandes et serveur MCP

Chaque fenêtre lance un serveur de commandes sur 127.0.0.1. Les commandes ouvrent et ferment des scans, règlent la caméra, la boîte de coupe et l'affichage, sélectionnent, suppriment, mesurent, enregistrent des vues, exportent, dessinent des coupes, créent des maillages, détectent des faces, téléchargent des bâtiments 3D BAG et prennent des images de la vue 3D. Le serveur n'écoute que sur l'adresse de bouclage et refuse toute commande sans le jeton.

open-pointcloud-studio --mcp lance un serveur Model Context Protocol. Il propose un outil pour chaque commande de l'API, des outils qui attendent la fin des tâches longues, un outil qui renvoie la vue 3D sous forme d'image et des outils pour lister, choisir et démarrer des fenêtres.

En ligne de commande, l'application fonctionne aussi sans fenêtre : conversion vers un autre format, export des points contenus dans une boîte, fusion de scans, construction d'un index, dessin d'une coupe en DXF ou en DWG, création de maillages et détection de faces.

  • API.md : toutes les commandes (en anglais)
  • MCP.md : tous les outils et la configuration d'un programme client (en anglais)
  • README : les modes de la ligne de commande (en anglais)

Bon à savoir

  • La boîte de coupe ne peut pas pivoter. Un bâtiment placé de biais par rapport aux axes du scan est coupé selon cet angle.
  • Les longueurs et les surfaces sont en mètres. Les coordonnées d'un scan sont lues comme des mètres et ne sont pas converties.
  • Une mesure n'est pas enregistrée avec le scan.
  • Une surface créée avec 3D surface a des trous et n'est pas étanche.
  • Un maillage compte au plus quatre millions de sommets et huit millions de triangles, qu'il vienne d'un fichier ou qu'il soit créé dans l'application.
  • Un maillage fermé et les faces détectées n'existent que pendant la session en cours : exportez-les pour les conserver. Un scan ne contient qu'un maillage ; un nouveau maillage remplace le précédent.
  • La limite de points d'un dessin de coupe est de 150 000 points par défaut et de 400 000 au plus ; s'il reste davantage de points après la réduction à 5 mm, l'espacement des points double jusqu'à ce qu'ils tiennent.
  • La coupe remplie d'un dessin de coupe est tracée à partir des points : un mur scanné d'un seul côté est dessiné comme une bande mince, les ouvertures de moins d'un demi-mètre environ sont fermées, et le mobilier présent dans la tranche est dessiné, sauf si ses points sont d'abord supprimés.
  • Un maillage fermé arrondit les angles d'environ un quart de voxel, fait fusionner ou troue les objets plus minces que deux ou trois voxels et laisse ouverts certains trous situés près d'une autre surface. Sans stations de scan, une surface que le centre de la zone voit exactement par la tranche peut ressortir déchirée.
  • Detect faces ne signale pas les bandes de moins de 0,15 m de large, comme les tableaux de porte. Une zone trop grande pour le budget de travail est parcourue avec des voxels plus grands, les scans peu denses donnent moins de faces, voire aucune, les poteaux ronds de plus de 0,7 m de large environ ressortent comme des bandes de mur et, sans stations de scan, le côté vers lequel une face regarde est une estimation.
  • Les fichiers DXF et DWG n'ont pas encore été vérifiés avec un éventail de logiciels de dessin. Si un logiciel refuse un fichier DWG, essayez le DXF ou une autre version de fichier.
  • La coupe remplie, Closed mesh et Detect faces ont été mesurés sur des pièces générées, pas encore sur le scan d'un bâtiment réel. Le guide de l'utilisateur énumère les limites de la coupe remplie, de Closed mesh et de Detect faces (en anglais).
  • Pour un grand relevé, un index peut occuper plusieurs gigaoctets sur le disque.

Guide, changements et code source

Technique et licence

Rust iced wgpu

L'application de bureau est sous licence GPL-3.0-only, la bibliothèque de nuages de points sous LGPL-3.0-or-later. Chaque paquet contient les textes des licences.