Continuions les MNT à partir de données récupérées sur les sites de cartographie. Cette fois, on va passer par Qgis bien sur, mais on va rentrer dans Autocad. Pour renter ces points dans Autocad, on va créer un script à partir du listing de points XYZ que Qgis va générer
En pré requis, on va charger un fichier de points avec un pas de 75m sur Géoportail, Il faut également charger le programme écrit en .NET par (gile) les détails sont dans ce post de CadXp le Zip est archivé ici
On va travailler sur Colmars, le fichier qui nous intéresse est le BDALTIr_2-0_MNT_EXT_0975_6375_LAMB93_IGN69_20110929.asc
Mais on ne va pas l'importer dans sa totalité car se relativement petit fichier référence quasiment 1 million de points et Autocad même avec plein de mémoire et un ordi boosté à mort il digère pas autant de pts.
Avec ce pas de 75m on arrive à environ à 17 000 pts pour un carré de 10 000m ce qui est déjà pas mal...
Dans Qgis
Quand on charge le fichier zip BdAlti, on se retrouve avec une multitude de cartes et il est pas forcément facile de savoir la quelle correspond à notre secteur. On va travailler sur Colmars, un petit coup de Géoshearch histoire d'y afficher un point. On place le curseur en haut à gauche de la tuile qui nous intéresse, et voila le mystère de la numérotation étrange des fichiers .asc résolue.
1) vérifier qu'on est bien en Lambert 93
2) on met le cursseur en haut à droite du carré duquel on va extraire un morceau
3) on lit les coordonnées du curseur
4) Colmars est sur la carte
BDALTIr_2-0_MNT_EXT_0975_6375_LAMB93....... on peu le vérifier en l'éteignant provisoirement.
On peu se servir de l'outil distance pour déterminer la taille de la fenêtre de capture à faire, puis on choisi l'outil de découpe dans le menu: Raster/Extraction/Découper .
1) on vérifie bien le nom du raster dont on veux extraire un morceau
2) on donne un nom de fichier de sortie, en bas de la boite de dialogue accessible via sélectionner on va choisir le type
.XYZ parmi plus d'une soixantaine de type disponible. Ici le fichier que j'ai sorti
3) avec le crayon on dessine une emprise qui colle à peut près avec nos 2000m x 6000m pour environ 9000 pts
Quand on clique OK on est invité à renseigner une projection et le fichier se retrouve sur le disque. pour aler sur autocad on va devoir passer par le Notepad++
pour modifier le fichier texte.
On peu aussi sauver en .asc et rentrer ce fichier dans Grass comme on l'a vu dans ce TP en changeant
son entête.
Comme quoi ceslogiciels (Qgis Grass et Autocad) demandent quand même quelques manipulations pour etre compatibles.
Dans notepad++
voila un exemple de la 1er ligne du fichier XYZ sorti de Qgis.
985950 6351375 1751.6700439453125
Et voila la ligne type qu'on cherche à obtenir pour être digeste dans Autocad
_point 987675,6351375,2209.61
dans l'ordre on va simplifier à 2 chiffres après la virgule notre liste; insérer des "," comme séparatif ; et insérer "_point" en début de ligne.
Notepad++ utilise une syntaxe pour les expressions régulières normalisée. Cette syntaxe est vraiment bizarre, mais devrait etre utilisable sur la plus part des éditeurs de texte qui ont cette fonctionnalité (en gros tous les éditeurs pour coder de la programmation) c'est le cas de Geany sous linux et de Notepad++ sous windows les 2éditeurs de texte que je préconise. Plus d' explications ici sur les REGEX
On ouvre donc le fichier XYZ dans le notepad++ ou Geany puis appuyez simultanément sur CTRL et H pour ouvrir la fenetre du Cherchez/remplacer (ou dans le menu edition )
simplifier à 2 chiffre après la virgule:
cherchez ([0-9]+[.,][0-9][0-9])[0-9]+ remplacez \1insérer des "," comme séparatif
chercher espace remplacez ,
il faut pas taper "espace" hein ? mais le caractère espaceet insérer "_point" en début de ligne
cherchez ^(.) remplacer par _point \1
Voila!! ça roule enregistrez le fichier avec l'extension .scr
Dans Autocad
Un script c'est quoi?
en fait un script c'est une suite de commande telle qu'on pourrait les taper à la ligne de commande car dans Autocad tout ou quasiment tout peut etre appeler par ce moyen.
Pour rentrer un script dans Autocad, c'est pas sorcier on tape SCRIPT sur la ligne de commande, un boite de dialogue vous invite à choisir le fichier.
Voila le résultat, j'ai déplié avec F2 la fenêtre qui recense ce qui passe par la ligne de commande pour faire voir la suite des appels de _point.
Pas très fun? passons en pers
ha!!!
Netload
DelaunayTriangulation_19.dll est un programme écrit en .NET par Gilles Chanteau ce membre émérite du site CadXp à pondu cette merveille suite à un post sur le forum. Dans le zip il y a les dll pour différentes version d'Autocad voir le fichier texte pour voir quelle version vous conviens. La 2014 marche avec DelaunayTriangulation_19.dll. Pour le charger, on tape NETLOAD et on va le chercher...
Ce qui est top avec la 2014, c'est que les 1eres lettres tapées à la ligne de commande liste tout ce qui commence par ces lettres. Donc j'entre MNT et che coisi mon option je fait espace pour prendre tous les points voila !!!