Avertissement
Ce est un compte-rendu de mon flux de travail sur la façon de créerDes lampes de carte de ville minimalistes.Comme ceux ci-dessous. TLe flux de travail peut également être utilisé pour transformer n'importe quelle image en une lampe lithophane cylindrique.Passer à "Créer des lithophanes" si vous avez déjà une image.
|
|
En raison de la demande écrasante de créer des villes spécifiques pour les gens (que je ne peux pas satisfaire), j'ai décidé de publier tout ce qui est nécessaire pour créer votre propre lampe carte de ville. Je vais cependant...Ne fournissez aucun soutien.à ce flux de travail. Si vous ne parvenez pas à le faire fonctionner, vous êtes seul !
Tous mes paramètres (en particulier les paramètres de rendu de la carte) ne sont que des recommandations et reflètent mes préférences personnelles. N'hésitez pas à expérimenter avec le design comme vous le jugez approprié. Seulement...Gardez à l'esprit que si vous changez les rapports d'aspect de l'image, vous devrez également adapter les paramètres du lithophane et la conception du fil.(Les fichiers F3D sont disponibles !).
Ce que je partage ici n'est qu'un flux de travail. Plus précisément, celui que j'ai trouvé pour répondre bien à mes besoins. Je suis complètement novice en matière de rendu de cartes et j'ai appris à le faire juste pour ce projet. Beaucoup de ce que je montre ici peut peut-être être fait mieux, plus rapidement et plus efficacement. Et je ne suis en aucun cas un expert sur l'un des sujets suivants. Si vous
Toutes les captures d'écran montrent le logiciel mentionné dans sa version la plus récente (à partir du 03.2025). Il pourrait y avoir des mises à jour à l'avenir, rendant mes captures d'écran incorrectes ou obsolètes.
Licence
Tout ce qui est publié ici estdomaine public. Vous êtes libre d'utiliser vos propres œuvres de la manière que vous souhaitez.Pas besoin de me créditer, pas besoin de le publier en tant que remix.. Vous êtes libre de choisir votre propre licence et de vendre vos propres designs. Vous pouvez également inclure les bases (fournies ici) avec votre téléchargement.
Je suggère quand même que si vous téléchargez votre design, vous le fassiez en tant que remix de ma collection.:https://www.printables.com/model/1203176-minimalist-city-map-lithophane-lamps.Cela rendra plus facile pour les gens de trouver votre modèle et à la fois, mon téléchargement et votre téléchargement pourront profiter de la popularité l'un de l'autre.Si vous le téléchargez en tant que remix, veuillez ne pas le télécharger en tant que remix de ce tutoriel, mais en tant que remix de la collection.. Mais encore une fois, ce n'est qu'une suggestion et vous êtes libre de faire ce que vous préférez !
Prérequis
Il y a pas mal de logiciels nécessaires pour créer une lampe carte. Heureusement, tous les logiciels requis sont gratuits ! La liste suivante suppose que vous utilisez un ordinateur Windows. En plus des logiciels liés ci-dessous, vous aurez besoin d'un minimum de 8 Go de RAM. Les exigences en matière de logiciels sont les suivantes :
- Python- Si vous n'êtes pas familier avec Python, je vous recommande simplement d'installer Anaconda sous le lien suivant :https://www.anaconda.com/download. Il n'est pas nécessaire de s'inscrire sur cette page. Il y a un...Sautez l'inscription.bouton.
- GDAL- L'instruction suivante suppose que vous avez installé Anaconda ! Pour d'autres instructions d'installation, voirhttps://gdal.org/en/stable/. Lancez Anaconda Prompt. Si vous êtes sur une machine Windows, tapez simplement Anaconda Prompt dans le menu Démarrer. Dans la fenêtre qui s'affiche, tapez :
- QGIS- un excellent logiciel de rendu de cartes, disponible ici :https://qgis.org/download/
- Blender.- Téléchargez et installez Blender :https://www.blender.org/download/
- PrusaSlicer.- Si vous n'utilisez pas déjà PrusaSlicer, téléchargez-le et installez-le :https://www.prusa3d.com/page/prusaslicer_424/. D'autres trancheuses peuvent aussi fonctionner. Nous avons seulement besoin d'un algorithme de réparation STL.
- Inkscape ou GIMP.- si vous voulez faire de l'édition d'images ou ajouter des textes/étiquettes à vos cartes. Inkscape :https://inkscape.org/release/GIMP :https://www.gimp.org/downloads/
Créer des cartes
La première étape pour créer votre propre carte consiste à obtenir les données OpenStreetMap de la région pour laquelle vous souhaitez créer une carte. Vous pouvez les obtenir sur des sites Web tels que Geofabrik (https://download.geofabrik.de/) ou Openstreetmap.fr (https://download.openstreetmap.fr/extracts/). Sur les deux sites web, vous pouvezTéléchargez des extraits plutôt qu'un ensemble de données complet.Pour un continent ou un pays. Il est généralement préférable de télécharger le plus petit ensemble de données disponible qui contient votre ville.
Dans certains cas, vous devrez peut-être également télécharger des données de cartes maritimes. Vous pouvez les trouver ici :https://osmdata.openstreetmap.de/data/water-polygons.html. Choisissez la deuxième option de téléchargement :Fichier Shapefile.format,Mercator.la projection etLes grands polygones sont divisés.. Ne téléchargez ce fichier que si nécessaire. Plus de détails ci-dessous.
En supposant que vous avez trouvé le jeu de données correct, vous devriez vous retrouver avec un fichier se terminant par.osm.pbf. C'est unformat de fichier compressé.! Je recommande fortement de convertir en un format non compressé pour éviter des temps de rendu très longs. Pour ce faire, vous aurez besoin de GDAL. Pour utiliser GDAL, lancez à nouveau Anaconda Prompt et tapez la commande suivante :
ogr2ogr -f sqlite -dsco spatialite=yes "<path> doit être remplacé par le chemin où votre fichier est situé et <filename> par le nom du fichier. Par exemple :
ogr2ogr -f sqlite -dsco spatialite=yes "C:\Users\FritzPeppone\Downloads\barcelona.sqlite" "C:\Users\FritzPeppone\Downloads\barcelona.osm.pbf"L'exemple ci-dessus convertit un.osm.pbfEnregistrez le fichier dans un.sqliteFichier. Les deux sont situés dans mon dossier Téléchargements.
Si vous avez créé votre compte avec succès..sqliteFichier, il est temps de lancer QGIS. Créez un nouveau projet (1). Puis cliquez surCalque(2) →Ajouter un calque(3) →Ajouter une couche vectorielle...(4).
Dans le menu qui apparaît, cliquez sur ... (1) et choisissez votre....sqlitefichier. Assurez-vous de ne pas sélectionner accidentellement le.osm.pbffichier. Enfin, cliquez surAjoutez(2).
Un autre menu apparaît où vous pouvez choisir les couches à ajouter. Choisissez les lignes et les multipolygones (1), (2). Terminez en cliquant sur Ajouter des couches (3) et fermez le premier menu en cliquant sur Fermer (4).
Maintenant, vous devriez déjà voir un rendu de base de la carte que vous venez de télécharger. Il devrait ressembler à ceci :
Tu rendus contiennent maintenant deux types de rendus différents : des lignes et des polygones. Tous deux sans aucun formatage. Nous avons besoin des lignes pour rendre les rues, les chemins ou les lignes de chemin de fer, et des polygones pour rendre les bâtiments, les étendues d'eau ou les rivières. Maintenant, nous devons choisir des paramètres de rendu adéquats.
Tout d'abord, je recommande de passer à une projection de carte de Mercator. Étant donné que nous sommes habituellement confrontés à des cartes de Google Maps ou similaires, nous sommes habitués à leur projection de Mercator. Pour ce faire, cliquez sur .EPSG : 4326dans le coin inférieur droit (1). Ensuite, dans la console Filtre, tapez.EPSG : 3857(2). Maintenant, dans la liste filtrée des projections, choisissez.WGS 84 / Pseudo-Mercator.(3). Vous devrez peut-être vous y rendre en cliquant surProjecté→Mercator.Tout d'abord. Enfin, cliquez surAppliquer(4).
Maintenant, nous commençons par rendre les rues correctement. Je vous suggère de désactiver d'abord lemultipolygonesEn supprimant la case à cocher respective (1). Il existe différents types de rues, classées en fonction de leur taille :
- autopiste
- le coffre
- primaire
- Secondaire
- tertiaire
- résidentiel
- Chemin piétonnier.
Pour mes représentations de cartes minimalistes, j'ai choisi de les rendre en différentes largeurs de ligne par ordre décroissant. Cela peut être réalisé en sélectionnant lelinesCalque (2), cliquez avec le bouton droit et sélectionnez.Des propriétés...(3) ou simplement double-cliquez dessus.
Pour filtrer selon différents types de rues, sélectionnez d'abord la Source (1), puis le Générateur de requêtes (2).
Dans la fenêtre suivante, saisissez une expression de filtre (1) pour sélectionner un type de ligne spécifique. Voici quelques exemples pour illustrer la syntaxe :
Si vous voulez obtenir des lignes pour les deux, autoroute ET route nationale :
"autoroute" = 'autoroute' OU "autoroute" = 'route nationale'Si vous voulez filtrer pour les rues principales :
"autoroute" = 'primaire'Si vous voulez obtenir toutes les lignes d'un groupe spécifique, par exemple toutes les lignes liées aux chemins de fer, tapez :
"railway" N'EST PAS NULL.Des requêtes de recherche plus sophistiquées sont possibles. Par exemple, la requête suivante recherche dans other_tags des chaînes contenant le mot "coastline" et extrait ainsi ladite côte :
"other_tags" LIKE '%coastline%'Je pense que vous comprenez comment ça fonctionne. Si vous voulez rendre quelque chose de spécifique, Google ou une IA LLM comme Gemini ou ChatGPT sont de bonnes sources pour trouver quelle requête produira exactement ce dont vous avez besoin. Pour mes cartes, j'ai utilisé au maximum 6 ou 7 requêtes différentes. Ces requêtes sont un outil vraiment puissant et je n'utilise qu'un pourcentage de ce qui peut être fait.Si vous voulez en savoir plus, vous devrez toutefois faire vos propres recherches (car je ne suis pas un expert de QGIS).
Après avoir défini notre filtre, nous pouvons tester s'il fonctionne en cliquant sur .Test.(2). Le filtre fonctionne s'il contient plus d'un élément. Enfin, cliquez surOK.(3) si votre filtre fonctionne.
Maintenant, nous avons filtré la couche de lignes. Dans notre exemple, j'ai filtré les autoroutes et les routes principales. Ensuite, nous choisissons les paramètres de rendu. Pour ce faire, cliquez sur .Symbologie(1). Dans mon exemple, j'utilise unLigne simple.(2). Vous pouvez également choisir des designs de lignes ou de chemins plus complexes (3). Tout d'abord, j'ai défini les unités de largeur àDes mètres à l'échelle.(4).
Ensuite, nous choisissons une couleur différente (1), et confirmons en cliquant.OK.(2) et définissez la ligne.largeur(3). Mes paramètres par défaut sont affichés dans le tableau ci-dessous. Gardez à l'esprit que pour un lithophane ordinaire, seules les couleurs en niveaux de gris sont pertinentes. Enfin, confirmez en cliquant.OK.(4).
Votre résultat devrait ressembler à l'image suivante. Maintenant, vous devez encore rendre d'autres lignes. Pour ce faire, cliquez avec le bouton droit sur votrelinesCliquez sur la couche (1) et cliquez.Calque dupliqué.(2). Pour une bonne organisation, pensez également à renommer vos couches de manière appropriée.
Par défaut, mes rendus contiennent les couches suivantes avec ces filtres et réglages :
- Autoroute et route nationale. < "autoroute" = "autoroute" OU "autoroute" = "route nationale" >, Largeur : 80 mètres à l'échelle, couleur : noir, Opacité : 100 %
- primaire< “autoroute” = ‘primaire’ >, Largeur : 60 mètres à l'échelle, couleur : noir, Opacité : 100 %
- Secondaire< "autoroute" = "secondaire" >, Largeur : 40 mètres à l'échelle, couleur : noir, Opacité : 100 %
- tertiaire et résidentiel.< "autoroute" = 'tertiaire' OU "autoroute" = 'résidentielle' >, Largeur : 20 mètres à l'échelle, couleur : noir, Opacité : 50 %
Ce ne sont cependant que des recommandations. Soyez créatif et concevez vos propres cartes comme vous le jugez approprié.Vous pouvez également consulter les fichiers d'exemple du projet.(Se terminant sur.qgz) Je l'ai téléchargé.
Ensuite, nous voulons rendre les étendues d'eau. Cela fonctionne de manière similaire au rendu des lignes. Tout d'abord, nous filtrons lesCalque de multipolygones.. Le filtre le plus simple devrait afficher presque tous les plans d'eau tels que les rivières, les étangs et la mer :
"naturel" = 'eau'Si vous voulez obtenir exclusivement des rivières ou exclusivement la mer, vous pourriez trouver les requêtes suivantes utiles :
"naturel" = 'eau' ET "autres_tags" LIKE '%rivière%' "naturel" = 'eau' ET "autres_tags" LIKE '%mer%'Les multipolygones ne sont parfois pas aussi bien ordonnés que vous le souhaiteriez et différents plans d'eau peuvent être stockés à différentes positions. Les baies, par exemple, peuvent être trouvées grâce à la requête suivante :
"boundary" EST NULL ET "natural" = 'bay'Dans notre exemple, la mer est située sous "naturel" = 'baie'. Si vous ne pouvez pas trouver de plans d'eau ou la mer, ils ne font peut-être pas partie de l'ensemble de données que vous avez téléchargé. Alors vous devrez peut-être télécharger un ensemble complet de polygones d'eau. Vous pouvez les trouver ici :https://osmdata.openstreetmap.de/data/water-polygons.html. Choisissez la deuxième option de téléchargement :Fichier Shapefile.format,Mercator.la projection etLes grands polygones sont divisés.. Importer de la même manière que le.sqliteChargez les fichiers et ajoutez des multipolygones. Filtrez avec les requêtes ci-dessus. Les paramètres que j'ai utilisés pour rendre les étendues d'eau sont :
- Les plans d'eau. < "naturel" = 'eau' >, couleur : gris (#808080), Opacité : 100%, pas de ligne environnante.
Enfin, enregistrez votre projet (1) et exportez-le sous forme d'image (2).
Vous pouvez choisir l'étendue de votre exportation en positionnant simplement la carte en conséquence sur votre écran. Choisissez au moins 300 dpi comme résolution (1) et cliquez sur Enregistrer (2).
FÉLICITATIONS.! Vous venez de créer votre propre rendu de carte !
Quelque chose n'a pas fonctionné ou vous avez rencontré des problèmes ? J'ai téléchargé quelques-uns.Des exemples de projets.Tu peux ouvrir et vérifier comment j'ai configuré mes rendus.
Créer des lithophanes.
Maintenant, vous avez un rendu de carte ou un autre type d'image en niveaux de gris que vous voulez transformer en Lithophane. Tout d'abord, nous changeons le rapport d'aspect de l'image en 2:1 (largeur x hauteur). Vous pouvez le faire avec un logiciel tel que GIMP (https://www.gimp.org/) ou Photoshop. Je ne vais pas détailler ici comment y parvenir. Si vous avez besoin d'aide, il devrait y avoir de nombreux bons tutoriels sur Youtube ou Google. Une autre chose que vous pouvez envisager est d'inverser votre image. C'est également possible dans GIMP ou Photoshop. Voyez comment cela peut tourner :
En outre, vous pouvez également ajouter une étiquette comme je l'ai fait. Vous pouvez le faire en utilisant GIMP, Photoshop, Illustrator, Inkscape ou un logiciel similaire. Dans mon cas, j'ai utilisé Adobe Illustrator. Encore une fois, je ne fournis pas de détails sur la façon de le faire. Il devrait y avoir beaucoup de documentation à ce sujet en ligne.
Attention :Vous pouvez choisir n'importe quel rapport d'aspect que vous souhaitez. Cependant, si vous utilisez un rapport d'aspect différent, les paramètres Lithophane suivants et le fichier stl contenant les fils ne correspondent plus à votre fichier.Si vous le changez, procédez avec prudence et sachez que vous devrez modifier mes fichiers CAO !
En supposant que vous avez une image avec un rapport d'aspect de 2:1, rendez-vous sur lithophanemaker :https://lithophanemaker.com/Curved%20Lithophane.html.Téléchargez votre image (une seule image) et utilisez les paramètres suivants :

Si tout se passe bien, les valeurs de X Span et de Y Span devraient toutes deux être de 105,0 mm.Vérifiez cela !
Ensuite, cliquez surCréer un fichier .stl.et téléchargez le fichier STL. Et c'est tout. Vous venez de créer un STL à partir d'une image.
Ajouter un fil de discussion.
Passons maintenant à la dernière partie : ajouter un fil M100 pour utiliser les bases que j'ai conçues. Pour ce faire, nous voulons d'abord corriger tous les problèmes qui peuvent être présents dans notre maillage. Lithophanemaker crée parfois des maillages avec des trous, des bords de bordure, des orientations de faces inversées ou plusieurs coquilles. Mais pas d'inquiétude, habituellement cela peut être corrigé facilement.
Mon flux de travail personnel pour la réparation de maillages inclut Autodesk Netfabb. Mais comme c'est un logiciel propriétaire et payant, je propose une approche de logiciel libre en utilisant votre slicer. L'exemple montre Prusa Slicer, mais d'autres slicers (Bambu Studio, Orca, Slic3r, ...) peuvent avoir la même fonctionnalité.
Ouvrez votre slicer et chargez votre fichier de maillage.Changer la position de votre fichier en [0, 0, 0](1).C'est très important pour que les opérations booléennes dans Blender fonctionnent !
Ensuite, nous vérifions la qualité du maillage (2) et utilisons l'algorithme de réparation de Windows en cliquant avec le bouton droit sur le maillage et en cliquant sur .Réparer avec l'algorithme de réparation de Windows.(3). Cela va évidemment...Ça ne fonctionne pas sur Mac ou Linux.systèmes. Enfin, nous exportons le modèle fixe, à nouveau en cliquant avec le bouton droit sur le maillage, puis en sélectionnant.Exporter en STL/OBJ...(4).
Une fois que nous avons un maillage sans erreur, nous ouvrons Blender et importons le maillage. De plus, nous importons le fichier de filetage.map_lamp_thread_M100.stl(<)Fichier → Importer → Stl. (stl.)). Si vous avez positionné votre maillage à [0, 0, 0] dans l'étape précédente, le résultat devrait ressembler à ceci :
Indice : lorsque vous ouvrez Blender, il y a généralement un cube initial placé dans votre environnement. Supprimez-le en cliquant dessus et en appuyant sur DEL.
Maintenant, nous combinons enfin le lithophane et le maillage en effectuant uneintersecterUne opération booléenne.Cette étape est très gourmande en temps et en mémoire.Si Blender plante, une raison probable est que vous êtes à court de mémoire. Je recommande au moins 8 Go de RAM !
Sélectionnez le maillage lithophane (1). Dans leModificateursTab (2) Cliquez surAjouter un modificateur.(3) et sélectionnez leBooléen.Modifier (4). En fonction de votre version de Blender, vous devrez peut-être sélectionner le modificateur booléen dans une longue liste ou naviguer versGénérer → Booléen.
Sélectionnez l'opération d'intersection (1) et cliquez dans le champ Objet et sélectionnez le maillage map_lamp_thread_M100 (2). En fonction de votre version de Blender, il peut également y avoir des options de résolution supplémentaires.L'auto-intersection.,Tolérant aux trous.). Si l'opération booléenne ne vous fournit pas le résultat escompté, vérifiez d'abord.L'auto-intersection.et vérifiez le nouveau résultat. Si ça ne fonctionne toujours pas, vous pouvez également essayer de vérifier.Tolérant aux trous.et si ça ne fonctionne pas non plus, choisissez leRapide.Resolveur. J'ai eu des maillages dans le passé, où Blender n'était tout simplement pas capable de créer une opération booléenne. C'est rare, mais ça peut arriver. Je n'ai aucune solution pour de tels cas.
Votre résultat devrait ressembler à ce qui suit.Assurez-vous de désactiver le rendu du maillage map_lamp_thread_M100 pour vérifier les résultats.En activant le symbole d'œil à côté de celui-ci (1). Sinon, vous verrez toujours une superposition des deux. Si vous êtes satisfait du résultat, cliquez sur la flèche de l'onglet du modificateur booléen (2) et cliquez sur .Appliquer(3).
Enfin, nous pouvons exporter le nouveau maillage.Tout d'abord, supprimez soit le maillage map_lamp_thread_M100, soit assurez-vous de sélectionner le maillage lithophane !(1) Si vous ratez ça, vous pouvez exporter les deux maillages dans un seul fichier. Ensuite, cliquez sur Fichier -→ Exporter -→ STL (2).
Dans la fenêtre qui s'affiche, cochez "Sélection uniquement" (1). C'est nécessaire pour éviter d'exporter les deux maillages. Si vous avez supprimé le maillage map_lamp_thread_M100, vous pouvez également sauter cette étape. Choisissez un emplacement et un nom de fichier, puis cliquez sur "Exporter STL" (2).
FÉLICITATIONS ! Vous venez de créer votre lampe de carte lithophane !
Imprimez-le, téléchargez-le et partagez-le avec la communauté !
Remarques finales
J'espère que vous trouverez ce tutoriel utile. Si vous rencontrez des problèmes ou avez des suggestions pour l'améliorer, veuillez laisser un commentaire.
Le journal des modifications.
- 04.03.2025 :Téléchargement initial du tutoriel.
Etiquetas
Fuente del modelo
