Projet

Général

Profil

Wiki » Historique » Version 5

Baptiste Pelouas, 23/02/2015 13:36

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
 * Concrètement, téléchargement sur le FTP : http://e4ftl01.cr.usgs.gov/SRTM/SRTMGL1.003/2000.02.11/
15
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 1 Baptiste Pelouas
 * Télécharger le logiciel VTBuilder (http://vterrain.org/Doc/VTBuilder/overview.html).
18
19 5 Baptiste Pelouas
 * Dans **VTBuilder**:  Menu *Calques>>Import de données>>Relief* (Valider)>> choisir le fichier .hgt
20
21
    * 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: Menu *Calques >> Convertir Projection >>* *Projection*= ***UTM*** (Universal Transversal Mercator); *Système Géodésique*= ***World Geodetic System 1984*** (Ellipsoid= WGS 84); *Unités Horyzontales*= ***mètres***; *Zones*= ***31*** (... central meridian = 3° *Pour la France*). Puis Valider. (au message "use floating-point values", choisir Oui
22
23
    * Zoomer sur la zone choisi (icône loupe); Créer un cadre sur cette zone (icône "Outil Area" [un carrée en pointillé]); Menu *Outil Aire>>Sample Elevation>>* *Sortie*= ***creer un nouveau calque***.
24
25
    * Menu *Elévation>> Convert to TIN*.
26
27
    * Menu *Elévation>> Exporter sous...* >> choisir type PLY puis Valider.
28
29
 * Ouvrir le fichier .ply avec **[MeshLab](http://meshlab.sourceforge.net)**
30
31
    * Menu *Show>> View Layer Dialog*
32
33
    * Dans le gestionnaire de calques: clique-droit sur le calque actuel, et choisir *Duplicate current layer*, puis sélectionner le nouveau calque créer.
34
35
    * Menu *Filters >> Smoothing, Fairing and Deformation >> Geometric Function >>* func x = x ; func y = y ; func z = altitude du socle (par exemple 850). *Apply* puis *Close*. (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)
36
37
    * Menu *Filters >> Normals, Curvatures and Orientations >> Invert Faces Orientation*.
38
39
    * Dans le gestionnaire de calques: clique-droit sur le calque actuel, et choisir *Flatten visible layers*. Cocher tout, *Apply* puis *Close*.
40
41
    * Menu *Filters >> Remeshing, Simplification and Reconstruction >> Ball Pivoting Surface Reconstruction >>* *Pivoting Ball radius, perc on =* 1 ; *Clustering radius =* 20 ; *Angle Threshold =* 90 >> *Apply*. Normalement, l'algorythme doit commencer a 'clore' le maillaige. Refaire *Apply* après avoir augmenter la valeur *Pivoting Ball radius, perc on =* (pour moi 1  puis 2 puis 3 puis 3.5). Lorsque le mailliage semble être totalement clos, faire *Close*.
42
43
    * Menu *File >> Save as ... >>* choisir le format ***.stl***, donner un nom, et Enregistrer (boite de dialog suivante: cocher *Binary encoding* puis OK)  **FINI**
44
45 1 Baptiste Pelouas
Si le fichier obtenu est trop gros
46
----------------------------------
47
48
 On peut alors le simplifier dans **MeshLab** avec les Algorythmes "Remeshing, Simplification and Reconstruction".
49 5 Baptiste Pelouas
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.
50 1 Baptiste Pelouas
51
Modifier l'echelle en Z (augmenter l'impression du relief)
52
----------------------------------------------------------
53
54
 Dans **MeshLab**:
55
Menu Filters >> Smoothing, Fairing and Deformation >> Geometric Function >> 
56 5 Baptiste Pelouas
<blockquote>
57 1 Baptiste Pelouas
func x = x ; func y = y ; func z = z*Z_factor (Généralement Z_factor = 2, rend bien).
58 5 Baptiste Pelouas
</blockquote>
59 1 Baptiste Pelouas
 Apply puis Close.
60
61
Autre Source
62
------------
63
64
### Via google map et Terrain2STL (maillage min de ~100m)
65
66
<blockquote>
67
la présentation : http://www.fabbaloo.com/blog/2014/11/16/3d-print-any-landscape-right-now
68
le site (via google map) : http://jthatch.com (et le code sur GitHub : https://github.com/ThatcherC/Terrain2STL )
69
>> la taille des mailles précision estimé : ~100m, les coordonnées sont en degré, donc déformation du a la latitude/longitude...
70
</blockquote>
71
72
### Via les données IGN gratuites (maillage min de 75m)
73
74
<blockquote>
75
le site de téléchargement (maillage min de 75m): http://professionnels.ign.fr/bdalti#tab-3
76
>> 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)
77
</blockquote>
78
79
Notes
80
-----
81
82
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 ...
83
 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
84