SlicerPro

Mise à jour de la page : 20 mai 2015.
    
J.C. Tchang
Original Version
On Philo's Site
.

SlicerPro, un outil de découpage et d'embossage LDraw

SlicerPro est un utilitaire qui permet d'embosser un motif plat sur une forme 3D. Chaque ensemble "motif plan" et "forme 3D" est fourni à l'utilitaire dans des fichiers LDraw séparés. Un troisième fichier contenant le "motif découpé et embossé" est crée.
SlicerPro n'est pas une version professionnelle d'un éventuel outil "Slicer", mais une version nettement améliorée de mon utilitaire Projector.

C'est une simple application en ligne de commande. Le code source est fourni ci-dessous, pour celui qui voudrait l'intégrer dans une interface plus conviviale.
Il est possible de l'utiliser sous Windows, grâce à l'interface LETGUI de Michael Heidemann, ce qui est hautement recommandé (voir plus bas).

 

Navigation rapide

 

Téléchargement

 

Historique

 

Installation

Décompressez le fichier et mettez le programme dans un simple dossier, comme vos autres utilitaires LDraw.
Exemple : c:\lego\SlicerPro

 

Utilisation

Voici une copie d'écran d'une simple exécution du programme :

 

Liste des options

 

Intégration dans LETGUI

Il est possible de lancer SlicerPro à partir d'une interface plus conviviale que la ligne de commande. LETGUI crée par Michael Heidemann est fait pour cela.

Utilisation de l'interface

Pour plus d'informations générales sur cette interface, allez sur la page LETGUI.

 

Intégration dans LD Part Editor

SlicerPro a été intégré dans l'éditeur de pièce LD Part Editor, voir la page : LD Part Editor, et particulièrement le chapitre Projection de motif : SlicerPro.

 

Comment SlicerPro travaille

 

Limitation

Avec la version actuelle v1.1 le motif doit être au moins aussi grand que la forme 3D. S'il est plus petit, il y aura des trous dans le résultat. Cela peut être complété en ajoutant les éléments manquants avec LPC et l'usage d'un gabarit non plan.

 

Exemples

Images de gauche à droite :
  • Le fichier du motif, un joli patchwork coloré, s'étendant dans le plan Z-X.
  • Un cône construit avec des triangles (décomposition de la primitive de haute résolution "con0.dat"), avec sa base également dans le plan Z-X.
  • Le cône habillé du motif créé par SlicerPro.

Dans cet exemple simple, aucune option n'est nécessaire.

Ligne de commande :
    Slicerpro patchworky.dat cone.dat conepat.dat

 
 

Vous n'avez pas besoin de décomposer les sous-fichiers avant d'utiliser SlicerPro. Ici la demie sphère utilise une primitive "4-8sphe.dat" agrandie, qui est décomposée (inlined), c'est-à-dire que les éléments du fichier de la primitive sont mis dans le fichier de la forme 3D avec la bonne taille et la bonne orientation, en utilisant l'option -sf. Quand vous décomposez des primitives de la bibliothèque LDraw, vous avez également besoin de spécifier le dossier d'installation de LDraw avec l'option -l. Notez que le motif, et la forme en demie sphère, sont dans le plan X-Y, donc nous avons besoin de projeter dans la direction Z (option -z).
Ligne de commande :
    Slicerpro -z -sf -l "c:\ldraw" stripesz.dat hsphere.dat hspherepat.dat

 
 

SlicerPro prend également soin du sens BFC des faces pour vous. Ici le motif et la forme 3D ont des faces avec des orientations mixtes, alors que le résultat est homogène. Selon votre besoin vous devrez ou non inverser globalement le sens de toutes les faces. Suivant la direction de projection, le résultat est BFC CCW lorsque l'on regarde de droite (-x), de dessus (-y), ou de face (-z).
Ligne de commande :
    Slicerpro -z stripesz.dat hspherebfc.dat bfc.dat

 
 

Le motif peut s'étendre en dehors de la forme 3D, il est alors coupé automatiquement par SlicerPro. Notez l'utilisation de l'option -sp pour décomposer les primitives utilisées dans le fichier du motif.
Ligne de commande :
    Slicerpro -l "c:\ldraw" -sp -z eye.dat 3DZ.dat eye1.dat

 
 

Mais si vous regardez les images précédentes attentivement, vous voyez qu'un minuscule intervalle existe autour du sourcil, là où les quadrilatères ordinaires rencontrent les primitives. Celui qui a fait ce modèle (moi !) était trop paresseux pour calculer les coordonnées avec précision... Cela paraît bien sûr dans le résultat (image centrale). Heureusement l'unification des sommets de SlicerPro peut être utilisée pour corriger cela (image de droite). Si vous augmentez la tolérance de l'unification (-ut 0.2), tous les points séparés par une distance inférieure seront confondus, fermant efficacement les intervalles.

Notez l'usage de l'option -uo pour prévenir l'unification des sommets dans le fichier de sortie : Puisque quelques points ont été légèrement déplacés, quelques quadrilatères ne sont plus parfaitement plans. De façon alternative, le motif pourrait être projeté sur un grand quadrilatère avec haute valeur de tolérance d'unification, ensuite le motif résultant sera projeté sur la forme 3D.

Ligne de commande :
    Slicerpro -l "c:\ldraw" -sp -z -ut 0.2 -uo eye.dat 3DZ.dat eyecorr.dat

 
 

Quand vous regardez le résultat précédent, qui utilise le mode couleurs aléatoire de LDView (menu "Edit / Preferences...", onglet "General", et cocher "Random colors" dans la zone "Colors"), vous pouvez voir que certains éléments sont coupés (le long du bord du motif) puisqu'ils ont 2 couleurs différentes, alors qu'ils devraient avoir la même couleur (image de gauche). Avec l'option -m, les éléments de la forme 3D sont fusionnés et mis tel quel dans le fichier de sortie, et portant ensuite une même couleur (image de droite). Le seul inconvénient de cette méthode est la création de jonctions en T.
Ligne de commande :
    Slicerpro -l "c:\ldraw" -sp -z -ut 0.2 -uo -m eye.dat 3DZ.dat eyem.dat

 

Utilisation de la précision (option -p)

Il arrive parfois que les bords du motif sont très proches de ceux de la forme 3D... Lorsque cela arrive, de très petits éléments, quadrilatères tordus ou ayant des sommets alignés peuvent être crées.
Ligne de commande :
    Slicerpro  -l "c:\ldraw" -sp -z target.dat 3DZ.dat targetbad.dat

L'option de précision -p peut aider. En effet, réduire la précision (augmenter la valeur de -p) aidera, lors du calcul de l'intersection, durant le processus de coupe, à faire "sauter" les sommets du motif en dehors du rayon d'attraction des sommets de la forme 3D. Naturellement vous ne pouvez pas réduire trop la précision car les motifs peuvent être endommagés.

Ligne de commande :
    Slicerpro -l "c:\ldraw" -sp -z -p 0.01 target.dat 3DZ.dat targetok.dat

 

Projection de lignes

Bien que les lignes (entités de type 2) ne soient pas normalement utilisées dans les motifs, SlicerPro sait les gérer. Dans cet exemple nous voulons appliquer un cercle sur un cylindre pour obtenir une ligne courbe en dos d'âne. Cette ligne peut ensuite être utilisée avec Coverer ou PathTruder pour créer des surfaces à partir de cela. Notez que c'est une application ou Projector peut être meilleur que SlicerPro : Puisqu'il ne coupe pas les choses, vous déformez la ligne sans introduire beaucoup de nouveaux segments.
Ligne de commande :
    Slicerpro -l "c:\ldraw" -sp -sf edge.dat cylinder.dat saddle.dat

 

Exemple de pièce réelle

L'auteur de pièce Arezey a utilisé une version préliminaire de SlicerPro pour créer le motif de la pièce "Technic Sprocket Wheel 25.4 with Bionicle Life Counter Pattern" (57520p01.dat). Les fichiers ont été aimablement fournis par Arezey.
Ligne de commande :
    Slicerpro -sp lfc\cntpat.dat lfc\cntform.dat lfc\counter.dat

Remarquez dans cet exemple que les fichiers sont dans un sous-dossier lfc.

Résultat sur la pièce finie :

 

Droits et Copyright

Le programme SlicerPro, ses fichiers sources, ses fichiers exemples et son manuel d'utilisation appartiennent à (c) Philo (Philippe Hurbain).

Vous pouvez le retrouver sur son site et sa page des utilitaires LDraw, et sur la version d'origine en anglais de cette page.

Cette page

Traduction et Adaptation : J.C. Tchang.

Les autres programmes cités dans cette page appartiennent à leurs auteurs respectifs.