Question:
Existe-t-il un moyen de convertir un modèle 3D en une sculpture lego?
hmatt1
2014-04-07 23:35:10 UTC
view on stackexchange narkive permalink

Après avoir recherché cette question pendant quelques jours, je souhaite la publier ici afin de pouvoir partager ce que j'ai appris dans une réponse, et j'espère apprendre également de nouvelles techniques.

Si quelqu'un a trouvé un autre moyen pour ce faire, partagez! Si quelqu'un a utilisé Legolizer pour 3ds Max, une réponse expliquant ce processus ou avec des exemples d'utilisation serait également utile.

Deux réponses:
hmatt1
2014-04-07 23:35:33 UTC
view on stackexchange narkive permalink

J'ai trouvé plusieurs façons de convertir un modèle 3D en sculpture Lego. Le premier est un programme appelé Dolphin Brickr. Cela fonctionne très bien, comme vous pouvez le voir sur cette image de Yoshi:

Yoshi Lego Sculpture

L'inconvénient de ce programme est qu'il ne fonctionne que sur Mac, strike> Cela fonctionne à la fois sur Windows et Mac maintenant et le format de sortie est une série d'images, une pour chaque couche. Vous ne pouvez donc pas l'importer dans MLCAD ou votre logiciel de construction Lego préféré. Je cherchais quelque chose qui utilise le format .ldr.

Un autre programme est LSculpt. Cela a bien fonctionné mais je n'arrivais pas à obtenir d'excellents résultats. J'utilise un modèle 3D de Nautilus pour mes exemples. Voici une image des résultats de LSculpt:

Nautilus Lego Sculpture

La version noire a été créée à partir de LSculpt et la version bleue a été créée à l'aide de ma méthode alternative . Il convient également de mentionner qu'il existe une autre technique, un script 3ds Max appelé Legolizer. Malheureusement, je n'ai pas 3ds Max, donc ce n'était pas une option pour moi. Je voulais faire cela en utilisant uniquement des logiciels open source sous Windows. Voici comment procéder:


Étape 1 - Mettez votre modèle 3D à l'échelle

Vous devez réduire votre modèle d'un facteur de .833 . J'ai utilisé MeshLab et le processus qu'il décrit dans le manuel Dolphin.

Étape 2 - Convertir un modèle 3D en fichier binvox

Cela se fait en utilisant un programme appelé binvox.exe . Vous pouvez en savoir plus et trouver le lien de téléchargement sur ce wiki minecraft. Tout ce que vous avez à faire est de télécharger binvox.exe puis de copier votre modèle 3D dans ce dossier. Ouvrez l'invite de commande, cd dans ce dossier, et exécutez une commande qui ressemble à ceci:

  binvox nautilus.obj -d 128 -rotz -rotz  

nautilus.obj est le nom de mon modèle 3D, -d 128 spécifie la taille (128 x 128 x 128 voxels), et -rotz et -rotx feront pivoter le modèle. Vous devrez faire des essais pour obtenir la bonne rotation, sinon vos briques ne seront pas face vers le haut à la fin. Vous pouvez commencer par -d 32 pour accélérer le processus jusqu'à ce que vous ayez la bonne orientation, ce que vous ne découvrirez pas avant la fin. Le résultat de ceci est un fichier avec le nom nautilus.binvox.

Étape 3 - Installez Cygwin (facultatif si vous savez ce que vous faites)

Je recommanderais d'installer cygwin pour les étapes suivantes, car c'est ce que j'ai utilisé, mais vous n'en avez pas nécessairement besoin. Vous avez juste besoin d'un moyen d'exécuter les programmes c ++ et Perl . Lorsque vous l'installez, vous pouvez sélectionner des packages, assurez-vous d'installer le package nommé perl et le package nommé gcc-g++.

Étape 4 - Convertir le fichier binvox en un fichier txt lisible en utilisant read_binvox

Téléchargez ce programme appelé read_binvox. Assurez-vous qu'il est enregistré sous read_binvox.cc . Copiez ensuite votre fichier .binvox dans le même dossier. Ouvrez Cygwin et cd dans ce dossier. Puis lancez

  g ++ read_binvox.cc -o read_binvox  

pour compiler le programme. Ensuite, vous pouvez l'exécuter avec

  read_binvox nautilus.binvox  

Cela créera un fichier de sortie appelé voxels.txt .

Étape 5 - Convertissez voxels.txt dans votre fichier .ldr

J'ai écrit un programme en Perl qui convertira le voxels.txt dans un fichier .ldr . Créez un nouveau fichier nommé binvox2ldr.pl dans le même répertoire que votre fichier voxels.txt . Classez-le avec le contenu de ce pastebin.

Revenez ensuite à ce répertoire dans cygwin et exécutez la commande:

  perl binvox2ldr.pl voxels.txt > nautilus.ldr  

Cela peut prendre un certain temps, selon la taille de la sculpture. Le programme utilise un algorithme très basique pour combiner des briques ensemble. Il peut avoir des briques flottantes, donc je ne recommanderais pas simplement d'utiliser la liste de pièces de celle-ci et d'attendre un modèle sûr et parfait. Mais je pense que cela pourrait être un bon moyen de commencer la conception d'une sculpture. Le script pourrait certainement utiliser d'autres améliorations, mais c'est un début de base.

Étape 6 - Édition et rendu

Vous pouvez utiliser ces instructions de ldraw.org installer des outils pour éditer et rendre la sculpture. J'ai utilisé MLCAD pour changer la couleur, puis je l'ai rendue en utilisant POV-RAY. Voici à quoi il ressemble:

Nautilus Lego render

J'ai eu beaucoup de succès avec LSculpt et il peut créer des modèles avec beaucoup de détails contrairement à votre sculpture (bien que cela fonctionne plus lentement lorsque vous faites cela).
Savez-vous où Dolphin réside ces jours-ci?
@tommy.carstensen Il semble qu'ils en aient changé le nom. Voici le nouveau lien http://lgg.epfl.ch/publications/2013/lego/
Je sais que cette réponse a été écrite et modifiée il y a longtemps, mais pourriez-vous suggérer une application, de préférence OS X, pour créer les fichiers de modèle 3D?
@Craig Je n'ai pas fait beaucoup de modélisation 3D, mais je pense que Blender pourrait être une bonne solution à essayer: https://www.blender.org/download/
dahoo
2016-01-29 20:06:08 UTC
view on stackexchange narkive permalink

Vous pouvez utiliser Brickify pour cela. Vous venez de télécharger un fichier STL et il est converti en briques LEGO. Vous n'avez pas besoin de la partie d'impression 3D et pouvez télécharger les instructions de montage.



Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...