Wiki » Historique » Version 8
Baptiste Pelouas, 02/06/2015 10:37
1 | 1 | Baptiste Pelouas | {{toc}} |
---|---|---|---|
2 | |||
3 | Wiki |
||
4 | ==== |
||
5 | |||
6 | Via la Nasa (maillage min de 30m (STRM1)) |
||
7 | ----------------------------------------- |
||
8 | |||
9 | 3 | Baptiste Pelouas | <img src="http://redmine.acolab.fr/attachments/download/89/sample-3d-landscap00.png" height="50%" width="50%" title="Puy de Montchat et de La Vache Z_factor=2" alt="Puy de Montchat"> |
10 | 4 | Baptiste Pelouas | **[le fichier STL correspondant](http://redmine.acolab.fr/attachments/download/90/sample-3d-landscap_Puy%20de%20Montchat.stl)** |
11 | 1 | Baptiste Pelouas | |
12 | L'explication des données: http://asterweb.jpl.nasa.gov/gdem.asp , le site tuto http://vterrain.org/Elevation/SRTM/ . |
||
13 | |||
14 | 6 | Baptiste Pelouas | **1.** Concrètement, téléchargement sur le FTP : http://e4ftl01.cr.usgs.gov/SRTM/SRTMGL1.003/2000.02.11/ |
15 | 1 | Baptiste Pelouas | Y choisir le zip adéquat, découpage en fichier de 1° par 1°. Exemple: pour la latitude 45° et la longitude 2°(point Sud-Ouest de la zone), il faut prendre le fichier *N45E002.hgt.zip* et le déziper |
16 | 5 | Baptiste Pelouas | |
17 | 7 | Baptiste Pelouas | **2.** Télécharger et installer le logiciel VTBuilder (http://vterrain.org/Doc/VTBuilder/overview.html). <blockquote> Attention, il se peut que la compilation se passe mal sous Linux... Si c'est le cas, il faudra passer par le site [Terrain2STL](http://jthatch.com). Les étapes 1 et 3 seront inutiles, mais l'on récupèrera des données au format *.stl* (qui est pris en charge par MeshLab) et avec un échantillonage tout les ~90m et des coordonées en degrés.</blockquote> |
18 | 1 | Baptiste Pelouas | |
19 | 6 | Baptiste Pelouas | **3.** Dans **VTBuilder**: Menu *Calques>>Import de données>>Relief* (Valider)>> choisir le fichier .hgt |
20 | 1 | Baptiste Pelouas | |
21 | 7 | Baptiste Pelouas | <ul> |
22 | <li>1 - Projection cartographique |
||
23 | <blockquote>Le fichier étant en coordonnées géographiques, c.a.d. en degrés, il y a une déformation des distances (on voit un carré), donc on va utiliser une projection pour avoir des coordonnées en mètres.</blockquote> |
||
24 | Menu <i>Calques >> Convertir Projection >></i> |
||
25 | <ul> |
||
26 | <li><i>Projection</i>= <b>UTM</b> (Universal Transversal Mercator)</li> |
||
27 | <li><i>Système Géodésique</i>= <b>World Geodetic System 1984</b> (Ellipsoid= WGS 84)</li> |
||
28 | <li><i>Unités Horyzontales</i>= <b>mètres</b></li> |
||
29 | <li><i>Zones</i>= <b>31</b> (... central meridian = 3° *Pour la France*).</li> |
||
30 | </ul> |
||
31 | Puis Valider. (au message "use floating-point values", choisir Oui</li> |
||
32 | <li>2 - Recadrage |
||
33 | <ul> |
||
34 | <li>Zoomer sur la zone choisi (icône loupe)</li> |
||
35 | <li>Créer un cadre sur cette zone (icône "Outil Area" [un carrée en pointillé])</li> |
||
36 | <li>Menu <i>Outil Aire>>Sample Elevation>></i> <i>Sortie</i>= <b>creer un nouveau calque</b>.</li> |
||
37 | </ul> |
||
38 | </li> |
||
39 | 8 | Baptiste Pelouas | <li>3 - Menu <i>Elévation>> Convert to TIN</i>.</li> |
40 | <li>4 - Menu <i>Elévation>> Exporter sous...</i> >> choisir type PLY puis Valider.</li> |
||
41 | 7 | Baptiste Pelouas | </ul> |
42 | 1 | Baptiste Pelouas | |
43 | 8 | Baptiste Pelouas | **4.** Ouvrir le fichier .ply avec <b>[MeshLab](http://meshlab.sourceforge.net)</b> |
44 | 1 | Baptiste Pelouas | |
45 | 7 | Baptiste Pelouas | <ul> |
46 | 8 | Baptiste Pelouas | <li>1 - Menu <i>Show>> View Layer Dialog</i></li> |
47 | 1 | Baptiste Pelouas | <li>2 - Dans le gestionnaire de calques: clique-droit sur le calque actuel, et choisir *Duplicate current layer*, puis sélectionner le nouveau calque créer.</li> |
48 | <li>3 - Création du socle. |
||
49 | <blockquote>Le but de cette étape est de créer un socle a partir du calque précédemment dupliqué. En effet, pour qu'un modèle soit imprimable, il doit décrire un volume clos (sans trous, sans intersection de face et sans faces dupliquée). A l'aide de *Geometric Function*, on va affecter même altitude a tout les points pour créer une surface plane. </blockquote> |
||
50 | 8 | Baptiste Pelouas | Menu <i>Filters >> Smoothing, Fairing and Deformation >> Geometric Function >></i> |
51 | <ul> |
||
52 | <li>func x = x</li> |
||
53 | <li>func y = y</li> |
||
54 | <li>func z = altitude du socle (par exemple 0 pour que le socle soit au niveau de la mer)</li> |
||
55 | </ul> |
||
56 | <b>Apply</b> puis <b>Close</b>. (Note le socle doit être plus bas que le point le plus bas de la zone choisi pour qu'il n'y ai aucune intersection)</li> |
||
57 | <li>4 - Menu <i>Filters >> Normals, Curvatures and Orientations >> Invert Faces Orientation</i>.</li> |
||
58 | <li>5 - Dans le gestionnaire de calques: clique-droit sur le calque actuel, et choisir <b>Flatten visible layers</b>. Cocher tout, <b>Apply</b> puis <b>Close</b>.</li> |
||
59 | <li>6 - Menu <i>Filters >> Remeshing, Simplification and Reconstruction >> Ball Pivoting Surface Reconstruction >></i> |
||
60 | <ul> |
||
61 | <li>Pivoting Ball radius, perc on = 1 </li> |
||
62 | <li>Clustering radius = 20 </li> |
||
63 | <li>Angle Threshold = 90 </li> |
||
64 | </ul> |
||
65 | <b>Apply</b> |
||
66 | <blockquote> Normalement, l'algorythme doit commencer a 'clore' le maillaige. Refaire <b>Apply</b> après avoir augmenter la valeur <i>Pivoting Ball radius, perc on =</i> (pour moi 1 puis 2 puis 3 puis 3.5). Lorsque le mailliage semble être totalement clos, faire <b>Close</b>. <blockquote> |
||
67 | </li> |
||
68 | <li>7 - Menu <i>File >> Save as ... >></i>, choisir le format <b>.stl</b>, donner un nom, et Enregistrer (boite de dialog suivante: cocher <b>Binary encoding</b> puis OK) <b><i>FINI</i></b></li> |
||
69 | 7 | Baptiste Pelouas | </ul> |
70 | 1 | Baptiste Pelouas | |
71 | |||
72 | 5 | Baptiste Pelouas | Si le fichier obtenu est trop gros |
73 | 1 | Baptiste Pelouas | ---------------------------------- |
74 | |||
75 | On peut alors le simplifier dans **MeshLab** avec les Algorythmes "Remeshing, Simplification and Reconstruction". |
||
76 | Par exemple, j'utilise Menu *Filters >> Remeshing, Simplification and Reconstruction >> Quadratic Edge Collapse Decimation >>* : en mettant le paramètre *Percentage reduction* = 0 (pas de réduction cible), *Quality threshold* = 0.3 (valeur par défault), et en cochant *Planar Simplification*. C'est algo réorganise les faces en supprime dans les zones planes. Il réduit, chez moi, de moitié la taille de mon fichier .stl. |
||
77 | |||
78 | Modifier l'echelle en Z (augmenter l'impression du relief) |
||
79 | 5 | Baptiste Pelouas | ---------------------------------------------------------- |
80 | 1 | Baptiste Pelouas | |
81 | 5 | Baptiste Pelouas | Dans **MeshLab**: |
82 | 1 | Baptiste Pelouas | Menu Filters >> Smoothing, Fairing and Deformation >> Geometric Function >> |
83 | <blockquote> |
||
84 | func x = x ; func y = y ; func z = z*Z_factor (Généralement Z_factor = 2, rend bien). |
||
85 | </blockquote> |
||
86 | Apply puis Close. |
||
87 | |||
88 | Autre Source |
||
89 | ------------ |
||
90 | |||
91 | ### Via google map et Terrain2STL (maillage min de ~100m) |
||
92 | |||
93 | <blockquote> |
||
94 | la présentation : http://www.fabbaloo.com/blog/2014/11/16/3d-print-any-landscape-right-now |
||
95 | le site (via google map) : http://jthatch.com (et le code sur GitHub : https://github.com/ThatcherC/Terrain2STL ) |
||
96 | >> la taille des mailles précision estimé : ~100m, les coordonnées sont en degré, donc déformation du a la latitude/longitude... |
||
97 | </blockquote> |
||
98 | |||
99 | ### Via les données IGN gratuites (maillage min de 75m) |
||
100 | |||
101 | <blockquote> |
||
102 | le site de téléchargement (maillage min de 75m): http://professionnels.ign.fr/bdalti#tab-3 |
||
103 | >> les coordonnées ont le bon gout d'être en mètre, dans un système X(est) Y(nord) Z(altitude), mais sont pour toutes la France(181MO pour le maillage 75m) |
||
104 | </blockquote> |
||
105 | |||
106 | Notes |
||
107 | ----- |
||
108 | |||
109 | La tailles des maillages suivant les sources est souvent fonction de la latitude. C'est due a un échantillonnage régulier en fonction de coordonnées polaires (on dit *[géographique](http://fr.wikipedia.org/wiki/Coordonnées_géographiques)*). Cela a pour conséquence direct une variation notable de la densité des données, pour les latitude élevés > forte densité, pour les latitude basse (proche équateur) > densité faible ... |
||
110 | Pour un échantillonnage toutes les secondes-d'arc[secondes-d'arc](http://fr.wikipedia.org/wiki/Sous-unités_du_degré) ( 1″ (seconde d'arc) = 1°/3600 = 0,000 277° )en France latitude = ~45° > 21,90m , a l'équateur latitude = 0° > 30,92m |
||
111 |