Tutorial: Générer carte de niveau d'après une image
Ce tutorial décrit l'utilisation du complément (plugin) Générer carte de niveau pour générer des pseudo profils 3D à partir d'images bitmaps. La même fonction peut également être utilisée pour générer des photogravures à partir d'images à deux tons et des lithopanes. Le code source de ce complément est également fourni avec CamBam pour les plus aventureux.
Etape 1 – Ouvrir le complément Générer carte de niveau (Heightmap)
Le complément de génération de carte de niveau est accessible depuis le menu principal Compléments – Générer carte de niveau.
Les compléments de CamBam sont des bibliothèques DLL de classe .NET et sont situées dans le sous-dossier plugins du dossier d'installation de CamBam.
C:\Program Files\CamBam plus 1.0\plugins
Le code source de ce complément se trouve également dans le fichier HeightMapPlugin-Src.zip de ce dossier.
Etape 2 – Sélectionner un fichier Bitmap
La réussite d'une carte de niveau dépend en grande partie de la qualité de l'image source. Des objets éclairés de face, même avec un ombrage donnent les meilleurs résultats.
Inspirée par les expériences vues sur ce post de cnczone 3D for Crazies, j'ai photographié un objet immergé dans un bac contenant de l'eau et du colorant alimentaire bleu. J'ai ensuite utilisé un programme de dessin pour filtrer l'image bitmap afin de n'avoir que le canal rouge affiché en niveaux de gris. En théorie, plus la surface de l'objet est loin de la surface du liquide, plus il apparaîtra bleu,. Cela a bien fonctionné, beaucoup mieux que je m'y attendais mais il faut prendre des précautions pour éviter les réflexions de surface et les bulles d'air. Ce n'est peut-être pas une si bonne idée pour faire des cartes de niveau de personnes.
Avec la fenêtre du générateur carte de niveau ouverte, sélectionnez File – Open (Fichier – Ouvrir) dans le menu principal et sélectionnez l'image source.
Etape 3 – Les options de Générer carte de niveau
Modifier les options du générateur de carte de niveau via le menu Tools – Options de la fenêtre Heightmap.
ClearPrevious | L'option de menu Tools - Generate Heightmap peut être appelée plusieurs fois. Si cette option est à true, le heightmap précédemment créé sera supprimé avant génération d'un nouveau heightmap. |
Invert | Si à true alors les couleurs sombres indiqueront une élévation plus importante (de plus grandes valeurs Z), si à false, ce seront les couleurs claires qui indiqueront la hauteur la plus importante. |
XSize / YSize | Largeur (X) et hauteur (Y) du heightmap dans les mêmes unités que le projet courant. Ces valeurs contrôlent la taille physique du heightmap résultant. Si le YSize = 0, l'aspect ratio de l'image sera appliqué à la valeur de Xsize pour déterminer la hauteur Y. |
XStep / YStep | Un heightmap crée une série de lignes de balayage, sensiblement de la même façon qu'une image de télévision est créée. La valeur de YStep contrôle la distance entre les lignes de balayage horizontal et la valeur de XStep détermine à quelle distance se trouve chaque point de la ligne dans la direction X. |
Zmax | Il s'agit de la plus grande hauteur en Z. Si la surface du brut est au niveau zéro de l'axe Z, alors typiquement Zmax serait également à zéro. |
Zmin | Il s'agit de la plus grande profondeur atteinte en Z dans le heightmap. |
Etape 4 – Générer la carte de niveau
Fermer la fenêtre des options et sélectionnez Tools – Generate Heightmap (Outils - Générer heightmap).
Vous devriez voir des lignes qui apparaissent dans la zone de dessin de CamBam. Laissez la fenêtre du générateur ouverte, effectuez des rotations et modifiez le zoom dans la fenêtre de dessin de CamBam pour avoir une meilleure idée des dimensions du dessin.
Vous pouvez trouver plus d'informations sur les fonctions de rotation, panoramique et zoom ici.
Voici une capture d'écran de la carte de niveau résultante.
En plus de générer un objet composé de lignes 3D représentant la carte de niveau, le complément crée également une opération de gravure liée à cet objet. Une opération de gravure est utilisée car ces opérations sont conçues pour «suivre» la géométrie associée. En effet, la fonction de gravure utilise les lignes 3D comme un parcours d'outil.
Modifiez les paramètres de l'opération de gravure telles que la vitesse d'avance.
Gravure de photos
Le processus Carte de niveau peut également générer des gravures ombrées.
Une fraise en V (à graver) est utilisée pour cela, généralement pour une gravure à 2 tons dans du stratifié. Plus l'usinage est profond, plus il apparaîtra sombre (si vous utilisez une lumière sur le stratifié noir). Une faible profondeur en Z est suffisante (~ 0,5 mm, 0.02"). La valeur de YStep doit être réglée de sorte que les lignes de balayage ne se chevauchent pas ce qui gâcherai l'effet d'ombrage. Cette distance varie en fonction de l'angle de l'outil de gravure et de la profondeur de passe. Pour une fraise à 60° et 0.5mm de profondeur de passe, j'utilise une valeur de 0.7mm pour YStep.
Un lithophane est une autre variation sur ce thème, où une image est gravée dans un matériau mince et translucide est vue avec rétro-éclairage. Les lithopanes sont généralement inversés car d'une profondeur d'usinage importante résulte un matériau plus mince et qui laisse donc passer plus de lumière.
Créer un nuage de points depuis une Carte de niveau
Voici une méthode pour générer un nuage de points au format DXF
Générer une carte de niveau comme d'habitude et sélectionnez l'objet composé de lignes si ce n'est pas déjà fait.
Maintenant, utilisez le menu contextuel de la zone de dessin Dessiner – Points – Contour géométrie par pas.
Cela va insérer un point le long de chaque ligne avec un pas N.
Par défaut, une carte de niveau fera 1 pixel de l'image = 1 unité de dessin (Ceci peut être modifié dans les options).
Entrez 1 pour Ecartement des points, puis appuyez sur OK.
CamBam affiche actuellement des points en utilisant des gros carrés. Ca donne une impression de fouillis, mais ne vous inquiétez pas à ce sujet. L'objet ligne peut maintenant être supprimé.
Le dessin peut maintenant être exporté vers un fichier DXF. Voici un nuage de points affiché dans AutoCad.