LSynth Version 3

Mise à jour de la page : 1 janvier 2017.
    Set 700/1 de 1950
J.C. Tchang
 

Nota : Ce manuel est basé sur la version 3.1 de LSynth, et du fichier lsynth.mpd à l'indice 2009-10-18 2011-06-06, auquel a été incorporé divers ajouts de mon cru.

 

Objet du programme LSynth

L'idée de base du programme LSynth, écrit par Kevin Clague, est de créer (synthétiser) les pièces LEGO "souples", à partir de segments de pièces, suivant les cas en circuit ouvert ou circuit fermé, ou d'assembler des pièces "articulées" suivant un circuit fermé. Vous demandez à LSynth ce que vous voulez créer, en lui spécifiant le type, la couleur, et les contraintes de la pièce dont vous avez besoin, directement dans votre fichier au format LDraw : .dat, .ldr ou .mpd.


Exemples de tuyaux et chaîne synthétisés par LSynth (Source des exemples : Willy Tschager).

L'utilisation se fait à partir de méta-commandes spéciales, définies pour LSynth, combiné avec des pièces LDraw standards ou spécifiques, qui définissent les conditions et contraintes de la pièce à obtenir.

Le programme LSynth lit le fichier au format LDraw, et écrit en sortie les entités synthétisées, comme des tubes, tuyaux, câbles électriques, axes flexibles, fibres optiques, ou courroies, bandes de roulement, chaînes.

Ce programme peut être utilisé directement dans une fenêtre Invite de commandes (ex mode DOS), ou à partir du programme de modélisation MLCad.

 

Navigation rapide

 

Téléchargement

  1. Vous pouvez télécharger le programme Version 3.1 pour Windows sur le site de téléchargement de l'auteur Kevin Klague :
    http://lsynth.sourceforge.net/LSynth.html,
    en prenant le fichier : LSynth_3_1_setup.exe (409 Ko).
  2. Important : Ce programme nécessite également La bibliothèque Microsoft "Microsoft Visual C++ 2008 Redistributable Package", que vous pouvez télécharger à l'adresse suivante :
    Microsoft Libraries (Fichier : vcredist_x86.exe (1.73 Mo)).
  3. Téléchargez ensuite, l'ensemble des contraintes à jour sur le site de Willy Tschager (Holly-Wood) sur la page :
    LSynth/MLCad tutorial,
    ou directement à l'adresse : Constraints_3-1.zip (16 Ko).
  4. Téléchargez également, sur cette même page, le fichier de définition lsynth.mpd à jour,
    ou directement à l'adresse : LSynth_mpd_3-1.zip (7 Ko), ou téléchargez MA Version, pour l'instant indispensable pour utiliser certains types de pièces à synthétiser (voir point 6).
  5. Pour une utilisation sous MLCad, vous aurez également besoin du fichier MLCad.ini. Vous pouvez télécharger la version officielle de ce fichier sur le site de Willy Tschager (Holly-Wood) sur la page :
    MLCad.ini file for the minifig generator,
    ou directement à l'adresse : MLCad_ini_2015-02.zip (30 Ko).
  6. Vous pouvez également télécharger sur mon site une version officieuse de ce fichier MLCad.ini, qui est compatible avec les versions 2 et 3 de LSynth, et intègre également toutes les pièces de Minifig "Unofficial". Voir sur ma page Fichier MLCad.ini, ou voir au point 6, suivant.

  7. Vous pouvez également télécharger sur ce site tous les fichiers de cette page, avec tous les exemples, ainsi que MA VERSION du fichier lsynth.mpd et MA VERSION du fichier MLCad.ini, et les pièces et contraintes non officielles :
    lsynth3_exemple.zip (1377 Ko) Mis à jour le 1 janvier 2017.

 

Installation

En pré-requis, vous devez avoir installé un environnement LDraw et MLCad (en option), permettant de modéliser des assemblages de pièces LEGO (C). Voir ma page Aide en ligne MLCad en Français, pour plus d'informations.

Installer ensuite la Bibliothèque Microsoft C++ 2008, si vous ne l'aviez pas, en lançant l'exécutable (vcredist_x86.exe) téléchargé précédemment.

Lancez ensuite l'exécutable d'installation de LSynth V3, en double-cliquant sur le fichier téléchargé (LSynth_3_1_setup.exe). Donnez comme chemin d'installation un dossier au même niveau que vos autres programmes de l'environnement LDraw. Par exemple :
C:\Lego\lsynth3.

Le programme d'installation installe également quelques pièces LDraw non officielles, dont vous avez besoin pour définir certaines contraintes, et obtenir la pièce désirée. Il peut être nécessaire de les compléter, avec le contenu du fichier Constraints.zip. Il suffit de le décompresser, et de mettre les fichiers .DAT dans le dossier PARTS, et si besoin PARTS/S (uniquement en version 3.0 de LSynth) du dossier d'installation du programme LDraw. Par exemple :
C:\Lego\LDraw\PARTS, et C:\Lego\LDraw\PARTS\S.

Pour que ces contraintes soient prises en compte, il faut mettre à jour le fichier Parts.lst, en allant dans le dossier d'installation de LDraw, (par exemple C:\Lego\LDraw, et en lançant l'exécutable mklist.exe. Répondre D à la première question (tri par description), puis passez les éventuels autres messages avec n'importe quelle touche.
Nota : Cette opération peut se faire sous MLCad version 3.40, en allant dans le menu Fichier > Scanner Pièces, mais depuis l'arrivée des noms de fichiers longs en 2010 pas avec les anciennes versions 3.20 et 3.30 de MLCad.

Remplacer ensuite le fichier de définition lsynth.mpd (après l'avoir décompressé, si besoin) dans le dossier bin du dossier d'installation de LSynth v3. Par exemple :
C:\Lego\LSynth3\bin.
Nota : Sauvegardez au préalable l'original au cas ou...
Ce fichier contient la définition de chaque type de pièce à générer, et les contraintes à utiliser. Ceci permet de faire évoluer le programme avec de nouveaux types pouvant apparaître.

Puis, si vous utilisez MLCad ....

 

Installation sous MLCad

Installation de MLCad.ini

Mettre le fichier de configuration MLCad.ini (après l'avoir décompressé, si besoin) dans le dossier d'installation de MLCad v3.40. Par exemple :
C:\LEGO\MLcad.
Nota : Sauvegardez au préalable votre précédent fichier au cas ou..., surtout si vous l'avez modifié pour vos propres besoins.

Configuration de MLCad.ini

Editer ce fichier, avec un simple éditeur de texte, pour déclarer la version LSynth utilisée (uniquement avec ma version de MLCad.ini), et indiquer le dossier d'installation de LSynth (sur ma version, et la version officielle).

Nota : Le chemin est le dossier d'installation de LSynth et non le sous dossier \bin qui contient lsynthcp.exe.

Pour plus d'informations voir ma page Fichier MLCad.ini.

Si l'icône "Ajouter une commande LSynth..." reste grisée dans MLCad, c'est que le chemin n'est pas correct.

Configuration de l'arborescence des pièces

Il est bon ensuite de définir une nouvelle branche dans l'arborescence des pièces. Allez dans le menu "Réglages / Arbre des pièces / Configuration de l'arbre...", ce qui permet d'ouvrir la fenêtre suivante :

Il suffit de rentrer dans le champ "Nom :" LSynth et dans le champ "Rechercher" Lsynth.

On peut également mettre dans ce dernier champ : Lsynth | "Hose Flexible 12L End" | "Hose Flexible 19M End" | "String End Stud" | "Minifig Chain Link End" pour y ajouter les pièces 759, 57539a, 572a et 208, pièces d'extrémités non générées par les commandes LSynth.

Vous pouvez ensuite changer l'ordre des branches en cliquant sur les boutons "Monter" et "Descendre", et valider en cliquant sur le bouton "OK". La nouvelle branche est alors directement opérationnelle.

En conclusion, vous devez obtenir une arborescence LSynth :

Pour plus d'informations allez voir le chapitre Configurer l'arbre des pièces, si vous avez installé l'Aide en ligne MLCad en Français.

 

Intégration dans Bricksmith

Depuis le 7 avril 2014, LSynth a été intégré au programme Bricksmith v3.0 pour ceux qui utilisent un Mac. Ce modeleur de Allen Smith interface LSynth grâce aux développements de Robin Macharg.

Cette version intégrée ne nécessite pas de téléchargement complémentaire en dehors de Bricksmith, et tout se fait à la souris sans édition de méta-commande.

Fonctionnement de LSynth dans Bricksmith :

Nota : Ne possédant pas cet environnement je n'ai pas pu tester son ergonomie. Les fichiers de configuration (MLCad.ini et lsynth.mpd) fournis avec Bricksmith ne comportent pas tous les ajouts que j'ai pu faire et peuvent être remplacés (à vérifier) par ceux qui sont proposés au chapitre Téléchargement.

 

Description générale des commandes LSynth

L'utilisation de LSynth est à la fois simple et ouverte à de nombreuses possibilités qu'il faut définir.
Pour commencer, il faut savoir ce que l'on veut synthétiser.
Il faut donc définir le Format général des commandes permettant de débuter et mettre en place le cadre d'une synthétisation.

Ensuite, il faut ajouter les contraintes différentes si la pièce appartient à la catégorie des pièces ouvertes (Type HOSE), comme les tuyaux, ou fermées (Type BANDE), comme les courroies.
Cela va influer sur les types de contraintes à insérer dans le fichier. Pour cela il faut se référer aux chapitres Contraintes des pièces ouvertes (HOSE) ou Contraintes des pièces fermées (BAND).

Puis à partir des chapitres définissant chaque type de pièce synthétisée, vous pourrez connaître les possibilités et contraintes spécifiques à chaque type.

Enfin, il faut lancer l'exécution de LSynth, et la création de la pièce synthétisée.

Nous allons ajouter un chapitre sur les commandes MLCad cachant ou montrant les éléments constitutifs de la pièce synthétisée.

Pour terminer, un chapitre est consacré aux problèmes rencontrés, avec leur contournement s'il existe.

 

Format général des commandes

Le format général des méta-commandes pour créer toutes les pièces souples est de la forme :


	0 SYNTH BEGIN XXXX N
	0 SYNTH SHOW ou SYNTH HIDE
        (Liste des pièces LDraw, et méta-commandes définissant les contraintes)
	0 SYNTH SYNTHESIZED BEGIN
        (Liste des éléments de pièces générées par LSynth)
	0 SYNTH SYNTHESIZED END
	0 SYNTH END 

Les 3 lignes en bleu (2 premières et dernière) sont les lignes des méta-commandes de base LSynth. Sur la première ligne XXXX définit le type de pièce souple à obtenir, et N sa couleur (Numéro de couleur LDraw).

Il faudra insérer, après les 2 premières, les pièces LDraw et méta-commandes définissant les contraintes, qui peuvent varier suivant les pièces à générer.

Les lignes en rouge sont les lignes générées par LSynth. La première et la dernière encadrant la liste (qui peut être longue), des pièces élémentaires composant la pièce synthétisée.

Insertion des méta-commandes de base

Ce sont les mots-clefs qui disent quel type de pièce souple vous voulez synthétiser, et la couleur de la pièce générée.

Pour insérer les 3 lignes de méta-commandes générales, allez dans le menu "Extras / LSynth / Ajouter une commande...", ou cliquez sur le premier bouton LSynth (Ajouter une commande LSynth...) de la barre de menu "Expert" .

Une fenêtre avec menu déroulant apparaît :

Il suffit de choisir un type de pièce (commençant par un numéro) dans le menu déroulant, puis de valider en cliquant sur "OK".

Liste des types de pièces synthétisées :

Les 3 lignes génériques correspondantes sont alors insérées dans le fichier.

Exemple :


	0 SYNTH BEGIN TECHNIC_PNEUMATIC_HOSE 16
	0 SYNTH SHOW 
	0 SYNTH END 

Vous pouvez également accéder à cette boite de dialogue en cliquant sur le bouton correspondant de la barre d'outil Expert (6ème bouton) .

Nota : Il est possible d'insérer plusieurs groupes de méta-commandes LSynth dans un même fichier. Il suffit de ne pas se tromper en plaçant chaque ligne de contrainte derrière sa bonne ligne SYNTH BEGIN.

Insertion des méta-commandes spécifiques PLI

De la même manière que les méta-commandes de base on peut insérer les méta-commandes commençant par PLI.

L'utilisation de ces méta-commandes spécifiques permet d'encadrer, après exécution de LSynth, les lignes de définition et les lignes générées par 2 méta-commandes spécifiques pour le programme LPUB (Générateur de manuel d'instruction). Exemple après exécution de LSynth :


	0 LPUB PLI BEGIN SUB 4297187.dat 16
	0 SYNTH BEGIN PLI_ELECTRIC_NXT_CABLE_20CM 16
	0 SYNTH SHOW
	1 0 -180 0 0 0 -1 0 1 0 0 0 0 1 LS05.dat
	1 0 208 0 0 0 -1 0 1 0 0 0 0 1 LS05.dat
	0 SYNTH SYNTHESIZED BEGIN
	1 16 -180 0 0 0 388 0 0 0 9 -2 0 0 S/LS11.dat
	0 SYNTH SYNTHESIZED END
	0 SYNTH END
	0 LPUB PLI END

Cela permet d'avoir le numéro commercial ou le numéro LDraw de la pièce réelle dans LPUB, mais vous devez prendre soin de définir les contraintes LSynth de façon à avoir la bonne longueur, et d'affecter la bonne couleur : Dans l'exemple, la couleur 16 (Main Color) par défaut doit être remplacée par la couleur LDraw 0 (Noir). En effet, la pièce 4297187 est commercialisée avec la couleur LEGO 26, c'est-à-dire : Noir.

Pour plus d'informations voir la page LPub, et en particulier le chapitre : Pièces LSynth et PLI.

Couleur de la pièce synthétisée

Par défaut la valeur 16, définissant la couleur "Main color", est affectée aux entités générées par LSynth.

La première ligne insérée peut être éditée, en double cliquant dessus, ou en la sélectionnant et en allant dans le menu "Edition / Modifier...".
Vous pouvez alors modifier ce nombre par une autre valeur de couleur.

Si vous voulez avoir systématiquement une certaine couleur à la place de la couleur par défaut, il suffit de modifier le fichier MLCad.ini, dans la section Commandes LSynth.

Après synthétisation de la pièce souple, il est toujours possible d'en changer la couleur en sélectionnant toutes les lignes générées et en changeant leur couleur de façon habituelle.

Méta-commandes HIDE et SHOW

Sur la seconde ligne peut être placé soit SYNTH SHOW, soit SYNTH HIDE.

L'ajout de ces méta-commandes se fait à partir du menu déroulant vu précédemment, aux deux dernières lignes (Visibility Statement :).

Malheureusement, l'insertion se fait avec 2 autres lignes SYNTH SHOW et SYNTH END inutiles.


	0 SYNTH HIDE
	0 SYNTH SHOW 
	0 SYNTH END 

	0 SYNTH SHOW
	0 SYNTH SHOW 
	0 SYNTH END 

De même SYNTH HIDE perturbe le fonctionnement des commandes MLCad permettant de montrer ou cacher les éléments LSynth, et SYNTH SHOW est inséré avec les méta-commandes de base, aussi il semble préférable d'éviter ces insertions.

 

Contraintes

Après les 2 premières lignes, c'est-à-dire entre les lignes SYNTH SHOW et SYNTH END, il faut insérer les pièces et méta-commandes servant de contraintes à la pièce à générer.

Nota : Il est possible d'ajouter entre 2 contraintes des lignes de commentaire (0 // xxx ou 0 xxx) ou des lignes d'étape (0 STEP) pour regrouper certaines contraintes losqu'elles sont nombreuses. De même elles peuvent avoir des couleurs différentes.

Catégories HOSE et BAND

LSynth utilise deux types d'algorithmes de calcul, pour générer deux types de pièces souples.

Suivant la catégorie, les contraintes générales sont différentes.

Contraintes des pièces ouvertes (HOSE)

Pour tous les types de pièces ouvertes il faut utiliser une des pièces de contrainte spéciales LSynth, qui définissent obligatoirement le point de départ et le point d'arrivée. Elles servent également, de façon optionnelle, à définir un ou plusieurs points de passage.

Ces pièces LSynth se nomment LS01.DAT à LS09.DAT et LS100.DAT à LS102.DAT. Elles ont l'apparence générale d'une flèche qui pointe vers la fin de la pièce souple à générer. L'ordre des lignes du fichier contenant ces contraintes détermine le point de départ, les points de passages, et le point d'arrivée. La contrainte LS00.DAT (identique à LS01.DAT) peut exister, par compatibilité avec LSynth Version 2.

Toutes ces contraintes sont dans la pratique interchangeables. Elles sont différentes pour "coller" au plus près à la section des éléments HOSE à générer. Le choix de la bonne contrainte dans la liste dépend du type de pièce ouverte à synthétiser. Nous donnerons cette information avec la description de chaque type de pièce.


La pièce LS01.DAT montrée ici en jaune, avec le repérage des axes lorsqu'elle est positionnée à l'origine.

Ces pièces définissent non seulement la position XYZ des points, mais également la direction prise par la pièce synthétisée à ce point. De même, l'ergot sur le coté définit l'orientation angulaire (pour les pièces de section non cylindriques comme les câbles électriques).

Points de départ et d'arrivée

Ces deux points doivent être obligatoirement définis.

Avant synthétisation Après synthétisation

Nous voyons, sur ces images d'un tuyau synthétisé, que le bord de la collerette sert de plan de départ et d'arrivée du tuyau.

Nous voyons également que la contrainte de départ a été mise en vert, et la contrainte d'arrivée en rouge. Il n'est pas obligatoire d'affecter ces couleurs, mais c'est une aide lorsqu'il y a plusieurs pièces à synthétiser dans un même fichier, et pour analyser le résultat lorsqu'il ne correspond pas à ce qui était attendu.

Orientation 1 Orientation 2
 
  Orientation 3

L'orientation du point de départ influe sur l'orientation des câbles non cylindriques, comme l'orientation du point d'arrivée, comme on le voit sur l'orientation 3. On peut voir également que si la pièce synthétisée est trop "tordue", la représentation se dégrade.

Points de passage

Les points de passage ajoutent des contraintes supplémentaires de lieu et orientation à la pièce synthétisée.

Avant sans contrainte
de passage
Après
Avant avec 1 contrainte
de passage
Après

Conseil : Ne mettez pas trop de contraintes rapprochées, vous risqueriez de voir apparaître des boucles, ou torsions disgracieuses.

Raideur

On peut jouer sur la raideur de montage des pièces de type Hose, c'est-à-dire la tension de ces pièces dans un montage réel.

Pour modifier ce paramètre, il faut changer la valeur <stiffness> dans le fichier lsynth.mpd.

Voici des valeurs test utilisées avec la : Courroie section carrée non plane.

stiffness = 0
Généralement trop raide.
stiffness = 6
Bonne valeur moyenne.
stiffness = 12
Montage détendu.
stiffness = 24
Montage très détendu.

Nota : Après un usage ponctuel, pensez à remettre la valeur d'origine dans le fichier lsynth.mpd.

Longueur synthétisée

La longueur de la pièce synthétisée ne dépend que de la position des contraintes (point de départ, point d'arrivée et points de passage). Pour avoir une longueur synthétisée proche de la longueur réelle d'une pièce standard il faut souvent ajouter des points de passages pour rallonger la pièce à une valeur estimée ou calculée.

Echelle des contraintes

Attention, il faut insérer les contraintes à l'échelle 1 pour avoir un résultat correct.


Exemple avec le type TECHNIC_FLEX-SYSTEM_HOSE et les contraintes LS02.DAT :
En haut à l'échelle 1, au milieu à l'échelle 2 en Y et Z, et en bas à l'échelle 2 en X, Y, et Z.

Mais..., l'utilisation de cette caractéristique de LSynth peut donner des idées pour des "cas particuliers", en le détournant de son usage "normal". Voir plus bas : Pièce 30191.

Nota : Cette possibilité ne fonctionne que pour les types ayant une définition STRETCH. Voir au chapitre : Fichier lsynth.mpd.

Contraintes des pièces fermées (BAND)

Ces pièces forment des pièces souples en boucle, et sont composées d'éléments de base différents pour chaque type de pièce générée (voir dans chaque chapitre correspondant au type voulu plus loin).

Ces éléments de base s'enroulent sur des pièces LDraw standard, comme les poulies (pulleys), pins, pignons (gears) et roues (wheels).

Contraintes utilisant des poulies :

Contraintes utilisant des pignons :

Contraintes utilisant des pignons à grandes dents :

Contraintes utilisant des roues à crans :

Contraintes utilisant des roues à gorge :

Contraintes standards LSynth :

Voici la liste complète (actuelle) des pièces servant de contrainte BAND :

Interchangeabilité des contraintes BAND

Il peut arriver qu'il manque une contrainte BAND dans le fichier lsynth.mpd. Dans ce cas si l'on ne veut pas ajouter cette contrainte particulière, il est possible d'en substituer une autre, comportant le même rayon (R x de la liste ci-dessus) dans la commande LSynth.

Utilisation des contraintes BAND


Exemple de courroie s'enroulant sur 2 poulies de diamètre différent.

Pour que le résultat soit correct, toutes les pièces de contrainte doivent être dans un même plan.

Il faut se reporter aux chapitres correspondants pour voir quelles sont les pièces LDraw valides pour chaque type de pièce souple généré par LSynth.

De même, nous y verrons les méta-commandes additionnelles possibles pour définir les croisements et de quel côté le chemin va passer.

Contrainte Cross

Cette contrainte permet de croiser une courroie. Son format est particulier :


Exemple de courroie se croisant.

	0 SYNTH BEGIN RUBBER_BAND 14
	0 SYNTH SHOW 
        Pièce de la première Poulie
	0 SYNTH CROSS
        Pièce de la seconde Poulie
	0 SYNTH CROSS
	0 SYNTH END 

Pour son fonctionnement il est nécessaire de mettre une méta-commande SYNTH CROSS après chacune des deux poulies. En effet il y a un croisement de la première à la seconde poulie, et au retour un croisement de la seconde à la première.

Nota : L'utilisation de la boite de dialogue pour insérer cette méta-commande est problématique, car elle insère également des SYNTH SHOW et SYNTH END supplémentaires qu'il faut effacer.
Une solution est d'insérer directement cette méta-commande dans un commentaire avec comme texte : SYNTH CROSS.

Contraintes Inside et Outside

Ces méta-commandes permettent de faire passer une courroie d'un côté ou l'autre d'une poulie. Il est nécessaire d'avoir au minimum 3 poulies pour cela, car avec 2 poulies la courroie ne peut être qu'à l'extérieur.


	0 SYNTH BEGIN RUBBER_BAND 14
	0 SYNTH SHOW 
        Pièce de la première Poulie
        Pièce de la seconde Poulie
	0 SYNTH OUTSIDE
        Pièce de la troisième Poulie
        Pièce de la Poulie suivante si besoin
	0 SYNTH INSIDE
	0 SYNTH END 
Sans INSIDE et OUTSIDE Avec INSIDE et OUTSIDE

Ces méta-commandes fonctionnent généralement par paire : SYNTH OUTSIDE met les poulies qui suivent à l'extérieur de la boucle. Il faut mettre ensuite SYNTH INSIDE, pour revenir sur les poulies intérieures.

Mais dans l'exemple suivant seul OUTSIDE ou INSIDE a été utilisé :


	0 SYNTH BEGIN RUBBER_BAND 14
	0 SYNTH SHOW 
	0 SYNTH OUTSIDE ou INSIDE
        Pièce de la première Poulie
        Pièce de la seconde Poulie
        Pièce de la troisième Poulie
	0 SYNTH END 
Avec OUTSIDE Avec INSIDE

Enroulement NON plan

Il n'est normalement PAS possible de créer avec LSynth un enroulement fermé (BAND) NON plan comme représenté sur l'image de droite :

C'est en utilisant les éléments générés sur l'image de gauche, que l'on peut, après suppression, duplication, rotation, et translation, ..., obtenir l'image de droite. Nota : La courroie a été colorée temporairement de plusieurs façons, pour visualiser les éléments à déplacer séparément.

Une autre méthode développée depuis, est d'utiliser la commande RUBBER_BAND_NO_PLANE (voir le chapitre : Courroie section ronde non plane. Exemple :

 

Exécution de LSynth dans une fenêtre "Invite de commandes"

Ouvrir une fenêtre "Invite de commandes".

Aller dans le dossier "bin" du dossier d'installation de LSynth, par exemple :
C:\Lego\LSynth3\bin.

Créer, ou copier dans ce dossier un fichier au format LDraw, contenant les méta-commandes LSynth nécessaires pour décrire l'élément souple à créer (voir la syntaxe plus loin). Ensuite lancez la commande d'exécution, par exemple :
lsynthcp test1.ldr test1_out.ldr.


Exemple d'exécution.

Syntaxe complète du programme :

C:\LEGO\LSynth3\bin>lsynthcp
LSynth version 3.0 beta H by Kevin Clague, kevin_clague@yahoo.com
                   and Don Heyse
LSynth is an LDraw compatible flexible part synthesizer
  usage: lsynthcp [-v] [-h] [-m] [-l] [-p]  
    -v - prints lsynthcp version
    -h - prints this help message
    -m - prints out the LSynth portion of the MLcad.ini for using
         this program
    -l - format the output as an official ldraw part
    -p - prints out the full path name of the this executable

 

Exécution de LSynth sous LDraw Design Pad (LDDP)

Le programme LSynth est interfacé avec LDraw Design Pad (LDDP). Après avoir configuré le programme pour qu'il connaisse le dossier ou se trouve LSynth (Tools / Options..., dans l'onglet External Progs), il suffit de mettre les lignes de commandes dans un fichier ouvert sous LDDP, et de lancer l'exécution par le menu "Process / Process Through LSynth" (en version 1.5.7 de LDDP).

Nota : En version 2.0.3 de LDDP, le menu devient "Tools / Process Through LSynth", mais ne semble pas fonctionner. Peut-être un problème avec ma config multi-versions !

 

Exécution de LSynth sous MLCad

Avant de lancer l'exécution de LSynth sous MLCad, il est préférable de sauvegarder les définitions dans un fichier :
Menu "Fichier / Enregistrer" ou "Fichier / Enregistrer sous...".
En cas de résultat non souhaité, il est possible de revenir en arrière avec :
Menu "Fichier / Retourner".

Pour lancer l'exécution de LSynth, et synthétiser la pièce "souple", allez dans le menu "Extras / LSynth / Démarrer LSynth", ou cliquez sur le bouton correspondant de la barre d'outil Expert (7ème bouton) .

 

Visualisation des pièces synthétisées et des contraintes sous MLCad

Après l'exécution de LSynth, les pièces synthétisées sont visibles et les contraintes sont mises en commentaires, et ne sont donc plus visibles sous MLCad, ce qui est compréhensible pour les contraintes de type HOSE l'est moins pour celle de type BAND, puisque les roues ou poulies sont cachées.

Il est possible de modifier cet état de fait avec les boutons :

 

Types des pièces HOSE

Les pièces HOSE sont les pièces synthétisées "ouvertes".

 

01 - Arc de plate

La première méta-commande est :


	0 SYNTH BEGIN BRICK_ARC 16 

La construction utilise la contrainte :

LS02.dat - LSynth Constraint Part - Type 2 - "Hose".

La construction utilise un élément de base :

Exemple :

Origine : Eric Albrecht. Utilisé par l'auteur pour créer des pots d'échappement de Moteur V-8. Dans la réalité les plates sont "enfilées" sur un Axe Technic flexible pour les tenir.

Nota : Ce type pourrait utiliser n'importe quelle autre pièce plate en changeant uniquement le numéro de la pièce dans lsynth.mpd.

 

02 - Câble électrique NXT (ancienne version)

Nota : Cette version a été remplacée par la suivante dans le fichier lsynth.mpd officiel (modif 04-06-2011).
Dans mon fichier j'ai gardé les 2 versions pour l'historique, mais utilisez de préférence la nouvelle version qui suit.

La première méta-commande est :


	0 SYNTH BEGIN ELECTRIC_NXT_CABLE 16 

La construction utilise la contrainte :

LS05.dat - LSynth Constraint Part - Type 5 - "NXT Cable".

La construction utilise un élément de base :

Exemple :
 

Origine : Holly-Wood.

Câbles électriques NXT standards

4297187.dat (55804.dat) : 40 - PLI_ELECTRIC_NXT_CABLE_20CM (ELECTRIC_NXT_CABLE)
4297188.dat (55805.dat) : 41 - PLI_ELECTRIC_NXT_CABLE_35CM (ELECTRIC_NXT_CABLE)
4297185.dat (55806.dat) : 42 - PLI_ELECTRIC_NXT_CABLE_50CM (ELECTRIC_NXT_CABLE)
11145.dat : Electric Mindstorms EV3 Cable 25 cm 11146.dat : Electric Mindstorms EV3 Cable 35 cm 11147.dat : Electric Mindstorms EV3 Cable 50 cm

Voir le chapitre Insertion des méta-commandes spécifiques PLI pour plus d'informations sur l'utilisation de ces méta-commandes.

 

02a - Câble électrique NXT (nouvelle version)

Nota : Cette version est la nouvelle version officielle (04-06-2011).

La première méta-commande est :


	0 SYNTH BEGIN ELECTRIC_NXT_CABLE2 16 

La construction utilise la contrainte :

LS05.dat - LSynth Constraint Part - Type 5 - "NXT Cable".

La construction utilise un élément de base :

Version alternative du "Câble électrique NXT" précédent, avec une section plus proche de la réalité.

Exemple :

Origine : J.C. Tchang, Section du câble : Philo.

Comparatif des sections de câble LS11 et LS11a LS12 :

 

03 - Câble électrique Power Functions

La première méta-commande est :


	0 SYNTH BEGIN ELECTRIC_POWER_FUNCTIONS_CABLE 16 

La construction utilise la contrainte :

LS06.dat - LSynth Constraint Part - Type 6 - "Power Functions Cable".
A utiliser en point d'origine, d'extrémité, et points de passage.

La construction utilise un élément de base :

Nota : A comparer avec autres sections LDraw existantes : 58124s02.dat et u9190.dat.

Exemple :
 

Origine : Holly-Wood.

 

04 - Demi-câble électrique Power Functions

La première méta-commande est :


	0 SYNTH BEGIN ELECTRIC_POWER_FUNCTIONS_CABLE_HALF 16 

La construction utilise la contrainte :

LS07.dat - LSynth Constraint Part - Type 7 - "RCX Cable".
A utiliser en point d'origine, d'extrémité, et points de passage.

La construction utilise un élément de base :

Exemple :


La partie synthétisée à gauche utilise la fonction précédente, et les 2 parties de câble à droite, allant vers les éléments lumineux, utilisent cette fonction.

Origine : J.C. Tchang.

Câbles électriques Power Functions standards

61930 (4523464) : Power Functions Light White

 

05 - Câble électrique RCX

La première méta-commande est :


	0 SYNTH BEGIN ELECTRIC_RCX_CABLE 16 
	ou 0 SYNTH BEGIN ELECTRIC_CABLE 16 (Obsolète, par compatibilité avec LSynth V2.0)

La construction utilise la contrainte :

LS07.dat - LSynth Constraint Part - Type 7 - "RCX Cable".
A utiliser en point d'origine, d'extrémité, et points de passage.

La construction utilise un seul élément de base :

Exemple :
 

Dans cet exemple le connecteur électrique utilisé est la pièce 5306 Electric Brick 2 x 2 x 2/3 with Wire End. On peut utiliser la pièce non officielle 5306a, ne comportant pas le départ du câble.

Reste à valider s'il existe 2 sections différentes de ce type de câble.

Origine : Holly-Wood.

Câbles électriques RCX standards

2977C03.dat : 43 - PLI_ELECTRIC_RCX_ROT_SENSOR (ELECTRIC_RCX_CABLE)
2982C03.dat : 44 - PLI_ELECTRIC_RCX_LIGHT_SENSOR (ELECTRIC_RCX_CABLE)
3506C01.dat : 45 - PLI_ELECTRIC_RCX_CABLE_13CM (ELECTRIC_RCX_CABLE)
3506C02.dat : 46 - PLI_ELECTRIC_RCX_CABLE_17CM (ELECTRIC_RCX_CABLE)
3506C03.dat : 47 - PLI_ELECTRIC_RCX_CABLE_23CM (ELECTRIC_RCX_CABLE)
3506C04.dat : 48 - PLI_ELECTRIC_RCX_CABLE_40CM (ELECTRIC_RCX_CABLE)
3506C05.dat : 49 - PLI_ELECTRIC_RCX_CABLE_60CM (ELECTRIC_RCX_CABLE)
3506C06.dat : 50 - PLI_ELECTRIC_RCX_CABLE_140CM (ELECTRIC_RCX_CABLE)
3506C07.dat : 51 - PLI_ELECTRIC_RCX_CABLE_328CM (ELECTRIC_RCX_CABLE)

Voir le chapitre Insertion des méta-commandes spécifiques PLI pour plus d'informations sur l'utilisation de ces méta-commandes.

 

05a - Câble électrique pour éclairage et motorisation ancienne

La première méta-commande est :


	0 SYNTH BEGIN ELECTRIC_LIGHT_MOTOR_CABLE 16 

La construction utilise la contrainte :

LS07.dat - LSynth Constraint Part - Type 7 - "RCX Cable".
A utiliser en point d'origine, d'extrémité, et points de passage.

La construction utilise comme éléments de base :

Attention :

Exemple extrait du set 162 de 1977, version motorisé :

Origine : J.C. Tchang.

 

05b - Demi-câble électrique pour éclairage et motorisation ancienne

La première méta-commande est :


	0 SYNTH BEGIN ELECTRIC_LIGHT_MOTOR_CABLE_HALF 16 

La construction utilise la contrainte :

LS04.dat - LSynth Constraint Part - Type 4 - "String".
A utiliser en point d'origine, d'extrémité, et points de passage.

La construction utilise comme éléments de base :

Nota : Complémentaire du précédent, lorsque x994.DAT ne peut être utilisé. Nota : pour la liaison avec x993.DAT (partie utilisant la commande LSynth précédente), le pas entre les brins est de 2.8 LDU.

Exemple d'après set 995, de 1969 (partie fléchée en rouge) :

Origine : J.C. Tchang.

Exemples de configurations de câbles et demi-câbles :

Câbles électriques :
En jaune : Commande LSynth ELECTRIC_LIGHT_MOTOR_CABLE.
En vert : Commande LSynth ELECTRIC_LIGHT_MOTOR_CABLE_HALF.
En rouge : x994.dat. Voir aussi u9136.dat.

Prises :
Synth 1 (en haut) : x511c01.dat, x567c01.dat (voir set 706).
Synth 2 : 2775c01.dat.
Synth 3 : 1x x592c02.dat, 2x 765c01.dat, 765c02.dat, 4x x592c01.dat.
Synth 4 : 766ac01.dat, 766ac02.dat, 766bc01.dat, 766bc02.dat, 2x x567c01.dat.
Synth 5 (en bas) : 2x x466 (simulation, voir Set 107 de 1976).

Origine : J.C. Tchang.

 

06 - Fibre optique

La première méta-commande est :


	0 SYNTH BEGIN FIBER_OPTICS_CABLE 16
	ou 0 SYNTH BEGIN OPTIC_CABLE 16 (Obsolète, par compatibilité avec LSynth V2.0)

La construction utilise la contrainte :

LS03.dat - LSynth Constraint Part - Type 3 - "Hose".

La construction utilise deux éléments de base :

Exemple :
 

Origine : Holly-Wood.

Fibres optiques standards

x401x.dat 6640.dat : Electric Technic Fiber Optics Cable 5L

 

07 - Fibre optique large

La première méta-commande est :


	0 SYNTH BEGIN FIBER_OPTICS_CABLE_WIDE 16

La construction utilise la contrainte :

LS02.dat - LSynth Constraint Part - Type 2 - "Hose".

La construction utilise deux éléments de base :

Exemple :

Origine : Philo, exemple Jetro de Chateau.

 

08 - Tuyau flexible côtelé 8.5L

La première méta-commande est :


	0 SYNTH BEGIN HOSE_FLEXIBLE_8.5L 16 
	ou 0 SYNTH BEGIN HOSE_FLEXIBLE 16 (Obsolète, par compatibilité avec LSynth V3.0)
	ou 0 SYNTH BEGIN RIGID_HOSE 16 (Obsolète, par compatibilité avec LSynth V2.0)
	ou 0 SYNTH BEGIN RUBBER_HOSE 16 (Obsolète, par compatibilité avec LSynth V2.0)

La construction utilise les contraintes :

LS100.dat - LSynth Constraint Part - Type 10 - "Hose Flexible 8.5L", aux extrémités.
LS02.dat - LSynth Constraint Part - Type 2 - "Hose", aux points de passage.

La construction utilise deux éléments de base :

Nota : Le tuyau généré possède toujours 50 segments.

Nota : Pour créer cette pièce, il faut incorporer au préalable dans le modèle les pièces de jonction extrêmes (non comptabilisées dans le nombre de segments), suivant cas :

Exemple :
 

Origine : Holly-Wood.

Tuyaux flexibles 8.5L standards

73590b.dat : 52 - PLI_HOSE_FLEXIBLE_8.5L_WITH_TABS (HOSE_FLEXIBLE_12L)
73590a.dat : 53 - PLI_HOSE_FLEXIBLE_8.5L_WITHOUT_TABS (HOSE_FLEXIBLE_12L)

Voir le chapitre Insertion des méta-commandes spécifiques PLI pour plus d'informations sur l'utilisation de ces méta-commandes.

 

09 - Tuyau flexible côtelé 12L

La première méta-commande est :


	0 SYNTH BEGIN HOSE_FLEXIBLE_12L 16 

La construction utilise les contraintes :

LS101.dat - LSynth Constraint Part - Type 11 - "Hose Flexible 12L", aux extrémités.
LS02.dat - LSynth Constraint Part - Type 2 - "Hose", aux points de passage.

La construction utilise deux éléments de base :

Nota : Pour créer cette pièce, il faut incorporer au préalable dans le modèle les pièces de jonction extrêmes : 1 avec tenon et 1 creuse (non comptabilisées dans le nombre de segments) :

Exemple :

Origine : Holly-Wood.

Tuyau flexible 12L standard

758c01.dat : 54 - PLI_HOSE_FLEXIBLE_12L (HOSE_FLEXIBLE_12L)

Voir le chapitre Insertion des méta-commandes spécifiques PLI pour plus d'informations sur l'utilisation de ces méta-commandes.

 

10 - Tuyau flexible côtelé 19L

La première méta-commande est :


	0 SYNTH BEGIN FLEX_HOSE 16
	0 SYNTH BEGIN HOSE_FLEXIBLE_19L 16 

La construction utilise les contraintes :

LS102.dat - LSynth Constraint Part - Type 12 - "Hose Flexible 19L", aux extrémités.
LS02.dat - LSynth Constraint Part - Type 2 - "Hose", aux points de passage.

La construction utilise deux éléments de base :

Exemple :

Origine : J.C. Tchang, exemple Holly-Wood.

Améliorations souhaitables :

Tuyau flexible côtelé 19L standard

57539.dat : 55 - PLI_HOSE_FLEXIBLE_19L (HOSE_FLEXIBLE_19L)

Voir le chapitre Insertion des méta-commandes spécifiques PLI pour plus d'informations sur l'utilisation de ces méta-commandes.

 

10a - Bande-outils flexible 17M

La première méta-commande est :


	0 SYNTH BEGIN TOOL_BELT_17M 16 

La construction utilise la contrainte :

LS01.dat - LSynth Constraint Part - Type 1 - "Hose" (pas de spécifique).

La construction utilise 3 éléments de base :

Exemple :

Origine : J.C. Tchang.

Nota : La version comportant des bananes est simplement une copie de la version de base en remplaçant manuellement les maillons 98567c par un sous-assemblage 98567c+33085.

Améliorations souhaitables :

 

11 et 11a - Chaîne Minifig 16L et 5L

La première méta-commande est au choix :


	0 SYNTH BEGIN MINIFIG_CHAIN_16L 16 
	0 SYNTH BEGIN MINIFIG_CHAIN_5L 16 

La construction utilise 1 contrainte :

LS08.dat - LSynth Constraint Part - Type 8 - "Minifig Chain".

La construction utilise deux éléments de base :

Nota : La chaîne générée possède toujours 21 maillons intermédiaires (MINIFIG_CHAIN_16L) ou 5 maillons intermédiaires (MINIFIG_CHAIN_5L).

Exemple de chaînes 16L :
 

Origine : Holly-Wood.

Nota : Les chaînes anciennes tendues font 17.25 tenons de long, et les nouvelles (set 8958, 6193) seulement 16 tenons.

Exemple de chaînes 5L :

Origine : J.C. Tchang.

Chaînes Minifig standards

208C01.DAT 30104.DAT : 56 - PLI_MINIFIG_CHAIN_16L (MINIFIG_CHAIN_16L)
92338.DAT : 56a - PLI_MINIFIG_CHAIN_5L (MINIFIG_CHAIN_5L)

Voir le chapitre Insertion des méta-commandes spécifiques PLI pour plus d'informations sur l'utilisation de ces méta-commandes.

Chaînes Minifig LDraw

92338c01.DAT : Minifig Chain 5L
92338c02.DAT : Minifig Chain 5L with Catenary Form
30104.DAT : Minifig Chain 17L

 

11b - Chaîne Technic avec trou

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_CHAIN_WITH_HOLE 16 

La construction utilise 1 contrainte (par défaut) :

LS01.dat - LSynth Constraint Part - Type 1 - "Hose".

La construction utilise deux éléments de base :

Exemple :

Origine : J.C. Tchang.

Nota : Lorsque l'on veut ajouter des éléments dans le trou d'un (ou plusieurs) des maillons, il suffit de créer un sous-ensemble (.MPD) contenant un maillon 53551 en position et orientation par défaut, puis d'ajouter les autres éléments. Il suffit ensuite dans le modèle de la chaîne de changer le/les maillon(s) par le sous-ensemble.

Améliorations souhaitables :

 

11c - Courroie section ronde non plane

La première méta-commande est :


	0 SYNTH BEGIN RUBBER_BAND_NO_PLANE 16 

La construction utilise la contrainte :

LS02b.dat - LSynth Constraint Part - Type 2b - "Hose R=2".

La construction utilise un élément de base :

L'usage de cette commande est similaire à la commande : RUBBER_BAND (Courroie section ronde), mais est à utiliser dans le cas ou la courroie ne passe pas par des poulies, ou lorsque les poulies ne sont pas toutes dans le même plan.

Par rapport à la commande RUBBER_BAND, cette commande est plus difficile à maîtriser pour les enroulements sur poulies, le résultat est plus approximatif. Une solution peut être de créer les portions sur enroulement de poulies avec RUBBER_BAND pour les mixer manuellement avec RUBBER_BAND_NO_PLANE. Voir : Enroulement NON plan.

Dans un usage "normal" cette courroie étant fermée, il est nécessaire de superposer la première et la dernière contrainte (même position, et même orientation).

Exemple :

   
Extrait du set 912 de 1976, modèle aéroglisseur. Les 2 roues servant de poulies ne sont pas dans le même plan.
Nota : Dans cet exemple d'un cas réel, la courroie orange frotte fortement sur le bloc moteur jaune, et elle peut avoir également tendance à déjanter. Il aurait été mieux de prévoir des poulies de renvoi.

Origine : J.C. Tchang.

Améliorations souhaitables :

Utilisation de la même commande pour la pièce 30191 (Minifig Stretcher Holder)

En utilisant l'astuce du changement d'échelle de la contrainte LS02.DAT, il est possible d'utiliser cette même commande pour générer des tuyaux de 2.5 LDU de rayon. Dans cet exemple de la pièce 30191 il est nécessaire d'utiliser 4 commandes LSynth pour générer les 4 brins de cette pièce.

La construction utilise la contrainte :

LS02.dat - LSynth Constraint Part - Type 2 - "Hose".
Attention utilisée dans cet exemple à l'echelle 1.25 suivant le rayon, et échelle 1 dans le sens du brin. voir le chapitre : Echelle des contraintes.

La construction utilise les éléments de base :

Exemple :

Pièce 30191 avec les parties jaunes ou marron générées par LSynth. Les autres éléments sont des sous-fichiers de la pièce LDraw.

Origine : J.C. Tchang.

On peut également utiliser cette même commande LSynth pour incurver la liaison entre les 2 jonctions en T (voir partie bleue sur l'image ci-dessous). Pour cela supprimer de l'exemple précédent la partie 4-4cyli.dat et utiliser la contrainte LS02.dat avec une échelle 2 suivant le rayon et 1 dans le sens du brin.

Exemple :

Partie centale de la pièce 30191 avec la jonction centrale incurvée.

Origine : J.C. Tchang.

 

11d - Courroie section carrée non plane

La première méta-commande est :


	0 SYNTH BEGIN RUBBER_BAND_SQUARE_NO_PLANE 16 

La construction utilise la contrainte :

LS02b.dat - LSynth Constraint Part - Type 2b - "Hose R=2".

La construction utilise un élément de base :

L'usage de cette commande est identique à la précédente.

Dans un usage "normal" cette courroie étant fermée, il est nécessaire de superposer la première et la dernière contrainte (même position, et même orientation).

Exemple :

 
Extrait du set 3054 de 1998.

Origine : J.C. Tchang.

 

12 - Cordage section ronde R=1 (version officielle)

La première méta-commande est :


	0 SYNTH BEGIN STRING_HOSE 16 

La construction utilise la contrainte :

LS04.dat - LSynth Constraint Part - Type 4 - "String".

Utilise également : La poulie 4185.dat.

La construction utilise un élément de base :

Exemple :
 

Origine : Holly-Wood.

Nota : voir également plus bas les Cordage section ronde en boucle.

 

12a - Cordage torsadé R=1 (0.8 mm de diamètre)

La première méta-commande est :


	0 SYNTH BEGIN STRING_HOSE2 256 

La construction utilise la contrainte :

LS04.dat - LSynth Constraint Part - Type 4 - "String".

La construction utilise un élément de base :

Exemple :


Type STRING_HOSE2 en haut et STRING_HOSE3 en bas.

Origine : J.C. Tchang.

Simulation du filet de corde 71155 (Thread Net 10 x 10)


Avec cette méta-commande, il est tout à fait possible de créer un filet (11+11 commandes STRING_HOSE2), avec simulation des noeuds par la pièce 209.dat (Minifig Chain Link).


En déplaçant verticalement les noeuds avec les contraintes qui s'y trouvent on peut simuler la déformation du filet.

 

12b - Cordage torsadé R=0.75 (0.6 mm de diamètre)

La première méta-commande est :


	0 SYNTH BEGIN STRING_HOSE3 256 

La construction utilise la contrainte :

LS04.dat - LSynth Constraint Part - Type 4 - "String".

La construction utilise un élément de base :

Exemple : Voir exemple précédent.

Origine : J.C. Tchang.

 

13 à 16 - Cordage section ronde avec tenons R=1 (version officielle)

La première méta-commande est au choix :


	0 SYNTH BEGIN STRING_11L 16 (longueur 90x2 = 180 LDU, 8 inter-tenons)
	0 SYNTH BEGIN STRING_21L 16 (longueur 190x2 = 360 LDU, 20 inter-tenons)
	0 SYNTH BEGIN STRING_31L 16 (longueur 290x2 = 580 LDU, 30 inter-tenons)
	0 SYNTH BEGIN STRING_41L 16 (longueur 390x2 = 780 LDU, 40 inter-tenons)

La construction utilise la contrainte :

LS04.dat - LSynth Constraint Part - Type 4 - "String".

La construction utilise un élément de base :

Il faut ajouter à chaque extrémité, en dehors de la commande LSynth, la pièce 572a.dat.
Nota : Cette façon de faire ne respecte pas le diamètre du cordage.

Exemple :

Origine : Holly-Wood.

Cordages avec tenons standards

76384.dat (String Braided 11L with End Studs) : 57 - PLI_STRING_11L (STRING_HOSE)
75924.dat (String Braided 21L with End Studs) : 58 - PLI_STRING_21L (STRING_HOSE)
572c02.dat (String Braided 41L with End Studs) : 60 - PLI_STRING_41L (STRING_HOSE)

Voir le chapitre Insertion des méta-commandes spécifiques PLI pour plus d'informations sur l'utilisation de ces méta-commandes.

 

16a - Cordage tressé avec/sans tenons R=1.5

La première méta-commande est :


	0 SYNTH BEGIN STRING_WITHOUT_GRIPS 16 
	0 SYNTH BEGIN STRING_WITHOUT_GRIPS_21L 16 Annulé (J.C. Tchang Lsynth Version 3.1)
	0 SYNTH BEGIN STRING_BRAIDED 16 Annulé (J.C. Tchang Lsynth Version 3.0)

La construction utilise la contrainte :

LS02a.dat - LSynth Constraint Part - Type 2a - "Hose R=1.5".

La construction utilise 2 éléments de base :

Version avec tenons R=1.5


Positionnement du départ du cordage, et orientation des tenons extrêmes.

Exemple :

Origine : J.C. Tchang.

Version sans tenons R=1.5

Exemple :

Origine : J.C. Tchang.

Cordage tressé sans tenon standard

x427 : String Very Thick.

 

16b - Cordage tressé sans tenons Duplo R=2.5

La première méta-commande est :


	0 SYNTH BEGIN STRING_WITHOUT_GRIPS_DUPLO 16 

La construction utilise la contrainte :

LS04.dat - LSynth Constraint Part - Type 4 - "String".
Nota : utilisé à l'échelle 1.6667 pour correspondre à la taille du cordage Duplo.

La construction utilise 1 élément de base :

Exemple :

Origine : J.C. Tchang.

Cordage tressé sans tenon Duplo standard

x1184 (Peeron) : Duplo Rope.
x77 (Bricklink) : String, Cord Thick (2 mm) Duplo.

 

17 - Cordage section ronde avec tenons et poignées R=1 (version officielle)

La première méta-commande est :


	0 SYNTH BEGIN STRING_WITH_GRIPS_21L 16 

La construction utilise 2 contraintes :

LS09.dat - LSynth Constraint Part - Type 9 - "String Minifig Grip".
LS04.dat - LSynth Constraint Part - Type 4 - "String", si besoin en point de passage.

La construction utilise 3 éléments de base :

Exemple :

Origine : Holly-Wood.

Cordages avec tenons standards

572c01.dat : 59 - PLI_STRING_WITH_GRIPS_21L (STRING_WITH_GRIPS_21L)

Voir le chapitre Insertion des méta-commandes spécifiques PLI pour plus d'informations sur l'utilisation de ces méta-commandes.

 

17a - Cordage tressé avec tenons et poignées R=1.5

La première méta-commande est :


	0 SYNTH BEGIN STRING_WITH_GRIPS2_21L 16 
	0 SYNTH BEGIN STRING_BRAIDED_GRIP 16 Annulé (J.C. Tchang Lsynth Version 3.0)

La construction utilise 2 contraintes :

LS09.dat - LSynth Constraint Part - Type 9 - "String Minifig Grip".
LS02a.dat - LSynth Constraint Part - Type 2a - "Hose R=1.5", pour les points de passage.

La construction utilise un élément de base :

Exemple :
 

Origine : J.C. Tchang.

Améliorations souhaitables :

Variante avec raccordement brusque

Dans l'exemple qui suit, extrait du set 10188 (Star Wars Death Star 2) page 109, la pièce pend verticalement, et le raccordement se fait de façon brusque avec la pièce 572a.dat. Pour faire cela, il a fallu ruser et utiliser séparément 2 commandes :
   - STRING_WITH_GRIPS2_21L pour la partie noire.
   - STRING_WITHOUT_GRIPS pour la partie verte.
Avec bien sûr, les pièces d'extrémité 572a.dat en rouge, ajoutées hors des commandes.
Il faut ensuite faire le ménage pour supprimer ce qui est en trop, et tout mettre de la même couleur.

 

18 - Axe Technic flexible (Flexible d’entraînement)

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_AXLE_FLEXIBLE 16 
	ou 0 SYNTH BEGIN FLEXIBLE_AXLE 16 (Obsolète, par compatibilité avec LSynth V2.0)

La construction utilise la contrainte :

LS02.dat - LSynth Constraint Part - Type 2 - "Hose".
A positionner à l'extrémité libre de LS40.DAT

La construction utilise deux éléments de base :

Exemple :
 

Origine : Holly-Wood.


Exemple J.C. Tchang, montrant le positionnement des contraintes (en vert). Extrait du set 8108, l'axe sert de ressort de rappel.

Axes Technic flexibles standards

32580.dat : 61 - PLI_TECHNIC_AXLE_FLEXIBLE_7 (TECHNIC_AXLE_FLEXIBLE)
32199.dat : 62 - PLI_TECHNIC_AXLE_FLEXIBLE_11 (TECHNIC_AXLE_FLEXIBLE)
32200.dat : 63 - PLI_TECHNIC_AXLE_FLEXIBLE_12 (TECHNIC_AXLE_FLEXIBLE)
32201.dat : 64 - PLI_TECHNIC_AXLE_FLEXIBLE_14 (TECHNIC_AXLE_FLEXIBLE)
32202.dat : 65 - PLI_TECHNIC_AXLE_FLEXIBLE_16 (TECHNIC_AXLE_FLEXIBLE)
32235.dat : 66 - PLI_TECHNIC_AXLE_FLEXIBLE_19 (TECHNIC_AXLE_FLEXIBLE)

Voir le chapitre Insertion des méta-commandes spécifiques PLI pour plus d'informations sur l'utilisation de ces méta-commandes.

 

18a - Axe Technic rigide

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_AXLE_RIGID 16 

La construction utilise la contrainte :

LS02.dat - LSynth Constraint Part - Type 2 - "Hose".

La construction utilise deux éléments de base :

Origine : J.C. Tchang.

Utilisé lorsque l'axe Technic standard, normalement rigide est mis sous contrainte. Voir le cas sur le set officiel 8841 à l'étape 12, où les axes de 8 de l'arceau ne peuvent se monter que sous contrainte.

Nota : Pour positionner en hauteur la partie supérieure, il suffit d'ajouter des axes de la moitié de la longueur réelle dans les "Technic Connector". Les 2 extrémités des axes doivent se toucher (approximativement) pour que la partie supérieure soit à la bonne hauteur, et le connecteur inférieur soit bien orienté.

Nota : Evidemment, pour rester réaliste ce type d'axe a une souplesse très limitée, il cassera avant d'avoir pris la position de l'image ci-dessus.

 

19 - Câble Technic "Flex-System"

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_FLEX-SYSTEM_CABLE 16 
	ou 0 SYNTH BEGIN FLEX_CABLE 16 (Obsolète, par compatibilité avec LSynth V2.0)

La construction utilise la contrainte :

LS02b.dat - LSynth Constraint Part - Type 2b - "Hose R=2".

La construction utilise deux éléments de base :

Exemple :
 

Origine : Holly-Wood.

Améliorations :

Câbles Technic "Flex-System" standards

342c01.dat : Technic Flex System Cable (Longueur 96 LDU)

 

20 - Tuyau de guidage Technic "Flex-System"

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_FLEX-SYSTEM_HOSE 16 
	ou 0 SYNTH BEGIN FLEX_SYSTEM_HOSE 16 (Obsolète, par compatibilité avec LSynth V2.0)

La construction utilise la contrainte :

LS02.dat - LSynth Constraint Part - Type 2 - "Hose".

La construction utilise deux éléments de base :

Nota : Les éléments LDraw officiels sont u9053.dat (extrémité) et 77.dat (intermédiaire).

Exemple :


Partie marron de l'exemple précédent.

Origine : Holly-Wood.


Trajectoire linéaire, extrémité fermée corrigée en V3.1, mais manque une primitive edge complémentaire.

Origine exemple : J.C. Tchang.

Tuyau de guidage avec extrémité coupé en sifflet

 
Il est parfois utile de couper l'extrémité en sifflet. Voici une solution en substituant la ou les extrémités LS50.DAT (ou en l'ajoutant pour une section droite), par une forme en biseau avec des fichiers spéciaux par pas de 7.5° : tfsh_bev0750.dat, tfsh_bev1500.dat, tfsh_bev2250.dat, tfsh_bev3000.dat, tfsh_bev3750.dat, tfsh_bev4500.dat, tfsh_bev5250.dat, tfsh_bev6000.dat, tfsh_bev6750.dat, tfsh_bev7500.dat, tfsh_bev8250.dat.
Ou par pas de 11.25° : tfsh_bev1125.dat, tfsh_bev2250.dat, tfsh_bev3375.dat, tfsh_bev4500.dat, tfsh_bev5625.dat, tfsh_bev6750.dat, tfsh_bev7875.dat.
Nota : Ces fichiers se trouvent dans le fichier ZIP des exemples.

Pour céer un fichier à un angle particulier en degrés : Faire une copie du fichier tfsh_bev1500.dat, et remplacer toutes les occurances 0.5359 par le calcul 2 x tg (angle) et toutes les occurances 1.0718 par le calcul 4 x tg (angle).

Origine exemple : J.C. Tchang, d'après une idée de Larry Pieniazek améliorée par Philo.

Tuyau de guidage Technic "Flex-System" standards

Eléments LDraw pouvant être utilisés en section droite :
75-1.dat : Technic Flex System Hose 1LDU. Permet une mise à l'échelle quelconque., supprimé le 21-12-2011.
76263 : Technic Flex-System Hose 3L (Longueur 60 LDU)
76250 : Technic Flex-System Hose 4L (Longueur 80 LDU)
76307 : Technic Flex-System Hose 5L (Longueur 100 LDU)
75.dat 76279 : Technic Flex-System Hose 6L (Longueur 120 LDU)
76289 : Technic Flex-System Hose 7L (Longueur 140 LDU)
76260 : Technic Flex-System Hose 8L (Longueur 160 LDU)
76324 : Technic Flex-System Hose 9L (Longueur 180 LDU)
76348 : Technic Flex-System Hose 10L (Longueur 200 LDU)
71505 : Technic Flex-System Hose 11L (Longueur 220 LDU)
71175 : Technic Flex-System Hose 12L (Longueur 240 LDU)
71551 : Technic Flex-System Hose 13L (Longueur 260 LDU)
71177 : Technic Flex-System Hose 14L (Longueur 280 LDU)
71194 : Technic Flex-System Hose 15L (Longueur 300 LDU)
75.dat : Technic Flex System Hose 16L (Longueur 320 LDU) = 75.dat avec facteur d'échelle 2.6666.
71192 : Technic Flex-System Hose 16L (Longueur 320 LDU)
76270 : Technic Flex-System Hose 17L (Longueur 340 LDU)
71582 : Technic Flex-System Hose 18L (Longueur 360 LDU)
22463 : Technic Flex-System Hose 19L (Longueur 380 LDU)
76276 : Technic Flex-System Hose 20L (Longueur 400 LDU)
70978 : Technic Flex-System Hose 21L (Longueur 420 LDU)
76252 : Technic Flex-System Hose 22L (Longueur 440 LDU)
76254 : Technic Flex-System Hose 23L (Longueur 460 LDU)
76277 : Technic Flex-System Hose 24L (Longueur 480 LDU)
53475 : Technic Flex-System Hose 26L (Longueur 520 LDU)
76280 : Technic Flex-System Hose 28L (Longueur 560 LDU)
76389 : Technic Flex-System Hose 29L (Longueur 580 LDU)
76282 : Technic Flex-System Hose 30L (Longueur 600 LDU)
76283 : Technic Flex-System Hose 31L (Longueur 620 LDU)
57274 : Technic Flex-System Hose 32L (Longueur 640 LDU)
42688 : Technic Flex-System Hose 33L (Longueur 660 LDU)
22461 : Technic Flex-System Hose 34L (Longueur 680 LDU)
46305 : Technic Flex-System Hose 40L (Longueur 800 LDU)
76281 : Technic Flex-System Hose 45L (Longueur 900 LDU)
22296 : Technic Flex-System Hose 53L (Longueur 1060 LDU)
...

 

21 - Tuyau pneumatique

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_PNEUMATIC_HOSE 16 
	ou 0 SYNTH BEGIN PNEUMATIC_HOSE 16 (Obsolète, par compatibilité avec LSynth V2.0)

La construction utilise la contrainte :

LS01.dat - LSynth Constraint Part - Type 1 - "Hose".

La construction utilise deux éléments de base :

Exemple :
 

Origine : Holly-Wood.

Tuyau pneumatique avec extrémité évasée

On peut simuler l'augmentation de diamètre du tuyau en ajoutant au tuyau synthétisé une pièce x165.dat, avec un facteur d'échelle 1.2 suivant le rayon :

Tuyau synthétisé en jaune, copie + x165.dat en rose.

Origine exemple : J.C. Tchang.

Exemple réel :

Extrait du Set 8440, étape 5 du modèle principal. Les éléments x165.dat ont été ajoutés en dehors de la commande LSynth.

Origine exemple : J.C. Tchang.

Nota : On peut aussi utiliser la commande spécifique (voir plus bas), apparue depuis, lorsque les 2 extrémités sont raccordés.

Tuyaux pneumatiques standards

Voir sous LDraw :
165c01b.dat Technic Pneumatic Tube 6L (lisse).
x165c01.dat 165c01.dat Technic Pneumatic Tube 6L (avec excroissance aux 2 extrémités).

 

21a - Tuyau pneumatique évasé

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_PNEUMATIC_HOSE_BEVELED 16 

La construction utilise la contrainte :

LS01.dat - LSynth Constraint Part - Type 1 - "Hose".

La construction utilise deux éléments de base :

C'est une variante du cas précédent avec les 2 extrémités du tuyau évasés, simulant l'accroissement de diamètre du tuyau lorsqu'il est raccordé à un élément pneumatique (vérin, distributeur, ...).

Exemple :

Origine : Holly-Wood.

Améliorations souhaitables :

 

22 - Tuyau annelé

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_RIBBED_HOSE 16 
	ou 0 SYNTH BEGIN RIBBED_HOSE 16 (Obsolète, par compatibilité avec LSynth V2.0)

La construction utilise la contrainte :

LS02.dat - LSynth Constraint Part - Type 2 - "Hose".

La construction utilise deux éléments de base :

Exemple :
 

Origine : Holly-Wood.

Origine : Holly-Wood.

Tuyaux annelés standards

Il existe de nombreux numéros de pièces pour les tuyaux annelés, avec plusieurs numéros de "moule" pour la même longueur. Ils semblent dans la pratique coupés à longueur à partir de bobines :
Voici une liste des longueurs standards en mm : 16, 24, 32 (13 anneaux), 40 (16 anneaux), 48, 56 (22 ou 23 anneaux), 64 (26 anneaux), 72 (29 anneaux), 80, 88 (35 ou 36 anneaux), 96, 104, 112, 120, 128, 136, 144 (58 anneaux), 152, 192, 248.

Nota : Le pas réel des segments est de 6 LDU environ, soit 2,4 à 2,5 mm de pas (le tuyau est légèrement extensible).


Source : Manuel des Sets 8482/8483.

Eléments LDraw pouvant être utilisés en section droite :
71952 : Technic Ribbed Hose 13 Ribs
78 71944 : Technic Ribbed Hose 19 Ribs

 

22a - Charnière d'accouplement en nylon (Pièce 650 Hinge Coupling-Nylon)

La première méta-commande est :


	0 SYNTH BEGIN HINGE_COUPLING_NYLON 16 

La construction utilise la contrainte :

LS02b.dat - LSynth Constraint Part - Type 2b - "Hose R=2".

La construction utilise 3 éléments de base :

Nota : Les extrémités 650A et 650B se différencient uniquement par l'orientation des logos sur les tenons. Il a été créé sur LDraw.org 650C.DAT pour la partie intermédiaire, mais ici j'ai gardé la primitive source box4o8a.dat.

Nota : Les contraintes LS02B se placent à 2.25 LDU de la face supérieure de l'accouplement, et à 26 LDU du centre de chaque extrémité.

Exemple :

.

Origine : J.C. Tchang.

 

Types des pièces BAND

Les pièces BAND sont les pièces synthétisées "fermées" (en boucle).

 

23 - Courroie section ronde

La première méta-commande est :


	0 SYNTH BEGIN RUBBER_BAND 16 

Commandes additionnelles :

La construction utilise un élément de base :

Les pièces de contraintes utilisables sont :

Contraintes utilisant des poulies :

Contrainte additionnelle :
      42610 Wheel 11 x 8 with Center Groove (Set 10187).

Exemple :
 

Origine : Holly-Wood.

Exemple :

 

23a - Cordage section ronde en boucle

La première méta-commande est :


	0 SYNTH BEGIN STRING_BAND 16 

Commandes additionnelles :

La construction utilise un élément de base :

Les pièces de contraintes utilisables sont :

Contraintes utilisant des poulies :

Exemple :

Origine : Holly-Wood.

La question n'est pas de savoir s'il existe des cordages en boucle. La réponse est NON à ma connaissance. En attendant, ce type de pièce a un intérêt pour générer facilement des enroulements sur poulie, en ouvrant ensuite la boucle par suppression d'entités.

 

23b - Courroie section carrée

La première méta-commande est :


	0 SYNTH BEGIN RUBBER_BAND_SQUARE 16 

Commandes additionnelles :

La construction utilise un élément de base :

Les pièces de contraintes utilisables sont :

Contraintes utilisant des poulies :

Exemple :

Origine : Holly-Wood, améliorations J.C. Tchang.

Courroies carrées standards

Sous LDraw : x223.dat Technic Rubber Belt (servant d'exemple), avec des enroulements de 1/4 de tour x227.dat (R=9), x224.dat (R=13), x225.dat (R=30.5), x226.dat (R=47) et la section droite x228.dat.

Numérotation Peeron :
x151 Rubber Band Small Square Cross Section (Exemple du set 1032 ou 1290 ou 6713 ou 8860).
x137 Rubber Band Square Thin (Exemple du set 1032 ou 8860).
x138 Rubber Band Square Large (Exemple du set 1032 ou 8860).
x88 Rubber Band Square (Exemple du set 5204).
x264 Rubber Band Square Medium (Exemple du set 8860).
x151a Rubber Band Small Square Cross Section Thick Cut.

 

24 - Courroie plate

La première méta-commande est :


	0 SYNTH BEGIN RUBBER_BELT 16 

La construction utilise un élément de base :

Les pièces de contraintes utilisables sont :

Contraintes utilisant des poulies 30155 et 3482 :

Commandes additionnelles :

Exemple :

Origine : Holly-Wood, améliorations J.C. Tchang.

Améliorations

J.C. Tchang : Remplacé définition dans lsynth.mpd BOX.DAT en BOX4O8A.DAT, avec paramètres adaptés.

 

25 - Chaîne Technic d'entraînement

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_CHAIN_LINK 16 
	ou 0 SYNTH BEGIN CHAIN 16 (Obsolète, par compatibilité avec LSynth V2.0)

La construction utilise un élément de base :

Nota : La pièce 14696.DAT plus récente est identique en forme. Remplacer globalement les pièces après lancement de LSynth pour avoir la bonne pièce en final.

Les pièces de contraintes utilisables sont :

Contraintes utilisant des pignons :

Contrainte additionnelle :
      50990 Dish 10 x 10 Inversed (Set 7670).

Commandes additionnelles :

Exemple :
 

Origine : Holly-Wood.


Exemple J.C. Tchang : Enroulement autour d'un disque 50990 (Dish 10 x 10 Inversed). Exemple extrait du set 7670 (Hailfire Droid and Spider Droid).

Améliorations souhaitables :

 

26 - Chaîne Technic avec maillons à 2 tenons

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_CHAIN_LINK_STUD 16
	0 SYNTH BEGIN TECHNIC_CHAIN_LINK_WITH_TWO_STUDS 16 

La construction utilise les contraintes :

Contraintes utilisant des pignons à grandes dents (voir par exemple Set 811 ou 813) :

La construction utilise un élément de base :

Exemple :

Nota : Voir exemple d'utilisation Set 810, 811, 812, 813, ...

Origine : J.C. Tchang.

Améliorations souhaitables :

 

27 - Chaîne Technic porteuse

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_CHAIN_TREAD 16 
	ou 0 SYNTH BEGIN PLASTIC_TREAD 16 (Obsolète, par compatibilité avec LSynth V2.0)

Les pièces de contraintes utilisables sont :

Contraintes utilisant des pignons :

La construction utilise un élément de base :

Exemple :
 

Origine : Holly-Wood.

Améliorations souhaitables :

 

28 - Chaîne Technic porteuse large

La première méta-commande est :


	0 SYNTH BEGIN TECHNIC_CHAIN_TREAD_38 16 

La construction utilise les contraintes :

  • 57519.DAT Technic Sprocket Wheel 40.4
  • 57520.DAT Technic Sprocket Wheel 25.4
  • La construction utilise un élément de base :

    Exemple :

    Origine et exemple : Holly-Wood.

    Exemples : J.C. Tchang.

    Améliorations souhaitables :

     

    28a - Chaîne Technic porteuse large avec patins caoutchouc

    La première méta-commande est :

    
    	0 SYNTH BEGIN TECHNIC_CHAIN_TREAD_38_RUBBER_FOOT 16 
    

    La construction utilise les contraintes :

  • 57519.DAT Technic Sprocket Wheel 40.4
  • 57520.DAT Technic Sprocket Wheel 25.4
  • La construction utilise un élément de base :

    Exemple :

    Exemple : J.C. Tchang.

    Améliorations souhaitables :

     

    29 - Bande de roulement caoutchouc crantée Technic

    La première méta-commande est :

    
    	0 SYNTH BEGIN TECHNIC_TREAD 16 
    	ou 0 SYNTH BEGIN RUBBER_TREAD 16 (Obsolète, par compatibilité avec LSynth V2.0)
    

    La construction utilise les contraintes :

  • 32007.DAT Technic Tread Sprocket Wheel
  • 32089.DAT Technic Tread Spocket Wheel Thin
  • 30285.DAT Wheel Centre Large Wide
  • La construction utilise trois éléments de base :

    Exemple :

    Origine : Holly-Wood.

    Améliorations souhaitables :

    Bande de roulement caoutchouc standard

    680C01.DAT renommé 71372C01.DAT : 67 - PLI_TECHNIC_TREAD (TECHNIC_TREAD)

    Voir le chapitre Insertion des méta-commandes spécifiques PLI pour plus d'informations sur l'utilisation de ces méta-commandes.

    Existe également en modèles LDraw :
    53992C01.DAT : Technic Tread with 36 Ridges, 2 roues
    53992C02.DAT : Technic Tread with 36 Ridges, 3ème roue haute en avant
    53992C03.DAT : Technic Tread with 36 Ridges, 3ème roue haute au centre

     

    30 - Bande de roulement caoutchouc de crawler

    La première méta-commande est :

    
    	0 SYNTH BEGIN TECHNIC_TREAD_CRAWLER 16 
    

    La construction utilise les contraintes :

    Contraintes utilisant des roues à gorge :

    La construction utilise 1 élément de base :

    Exemple :

    Origine : J.C. Tchang.

    Améliorations souhaitables :

    Bande de roulement caoutchouc de crawler LSynth version officielle

    C'est la reprise de ma solution de base avec 1 changement :

    La construction utilise 1 élément de base :

    Exemple :

    Origine : Holly-Wood.

    Bande de roulement caoutchouc de crawler standard

    x498.DAT : 68 - Technic Tread Crawler (avec 34 patins).

     

    30b - Bande de roulement caoutchouc de crawler à patins trapézoïdaux

    C'est une version ancienne de la bande de roulement précédente, avec les crans de forme trapézoïdale, et la partie intérieure ne fait pas toute la largeur. Voir set 103 ou 140 de 1970.

    La première méta-commande est :

    
    	0 SYNTH BEGIN TECHNIC_TREAD_CRAWLER_WEDGE_SHAPED 16 
    

    La construction utilise les contraintes :

    Contraintes utilisant des roues à gorge :

    La construction utilise 1 élément de base :

    Exemple :

    Origine : J.C. Tchang.

    Améliorations souhaitables :

    Bande de roulement caoutchouc de crawler standard

    x486c01.DAT : Technic Tread Crawler Wedge Shaped (avec 30 patins).

     

    30c - Bande de roulement caoutchouc étroite

    La première méta-commande est :

    
    	0 SYNTH BEGIN TECHNIC_TREAD_THIN 256
    

    La construction utilise les contraintes :

  • 32089.DAT Technic Tread Spocket Wheel Thin
  • 30285.DAT Wheel Centre Large Wide
  • La construction utilise deux éléments de base :

    Exemple :

    Origine : J.C. Tchang.

    Améliorations souhaitables :

    Bande de roulement caoutchouc standard

    43903.DAT : Belt 20 Tooth. Voir exemple set 5934.
    71965.DAT : Belt 28 Tooth.

     

    30d - Bande de roulement caoutchouc crantée Cybermaster

    La première méta-commande est :

    
    	0 SYNTH BEGIN CYBERMASTER_TREAD 16 
    

    La construction utilise les contraintes :

  • 32089.DAT Technic Tread Spocket Wheel Thin
  • La construction utilise un élément de base :

    Exemple :

    Origine : J.C. Tchang.

    Pour utiliser cette fonction LSynth il faut :

    Nota : Cette bande de roulement 71735, avec 5 roues dentées 32089 se monte officiellement sur la pièce 32090 dans les Sets 8482 et 8483. Cette dernière pièce est ici simulée.

     

    En cas de problème sous MLCad

     

    Fichier lsynth.mpd

    Ce fichier contient les définitions des types générés par LSynth, et des contraintes utilisées. S'il possède certaines caractéristiques d'un fichier .mpd, il ne les a pas toutes (en particulier sur le second paramètre), et il doit donc être manipulé seulement par un éditeur de texte.

    Sa modification est utile uniquement pour ceux qui veulent ajouter de nouveaux types, de nouvelles contraintes apparues ou modifiées, ou améliorer les éléments existants. Dans ce qui suit, j'ai traduit les commentaires du fichier.

    Nota : Pour savoir où se trouve le fichier lsynth.mpd, voir le chapitre : Installation.

    Format définissant les contraintes HOSE

    Toutes ces définitions sont dans le même sous-fichier HOSE_CONSTRAINTS.ldr.

    0 //  0 SYNTH BEGIN DEFINE HOSE CONSTRAINTS
    0 //  1 <flip> <x> <y> <z> <a> <b> <c> <d> <e> <f> <g> <h> <i> <part>
    0 //  0 SYNTH END
    0 //
    0 //    <flip>       Indique que la contrainte à la fin de la pièce type "hose"
    0 //                 a une orientation opposée à l'orientation de celle de départ.
    0 //                 Cela est utile pour 755.dat de RUBBER_HOSE, ou LS40.dat de TECHNIC_AXLE_FLEXIBLE.
    0 //                 Nota : Cette information n'est PAS confirmée par le sous-fichier
    			  HOSE_CONSTRAINTS.ldr lui-même.
    0 //    <x> <y> <z>  Réservé pour un futur usage.
    0 //    <a> à <i>    Réservé pour un futur usage.
    0 //    <part>       Nom de la pièce LDraw utilisée comme contrainte.
    

    Format définissant les contraintes BAND

    Toutes ces définitions sont dans le même sous-fichier BAND_CONSTRAINTS.ldr.

    0 //  0 SYNTH BEGIN DEFINE BAND CONSTRAINTS
    0 //  1 <radius> <x> <y> <z> <a> <b> <c> <d> <e> <f> <g> <h> <i> <part>
    0 //  0 SYNTH END
    0 //
    0 //    <radius>     Décrit le rayon de la contrainte <part>.
    0 //    <x> <y> <z>  Donne les offsets (décalages) en x, y et z, utilisés
    0 //                 pour placer correctement les éléments de pièces en courbes autour des contraintes.
    0 //                 Typiquement, seul <z> est utilisé.
    0 //    <a> à <i>    Matrice de transformation utilisée pour placer le plan moyen des contraintes
    0 //                 de pignons et poulies suivant une même orientation. Les famille des couronnes dentées Technic
    0 //                 (Technic Turnable) ne sont pas orientés dans un même plan parallèle au plan de la famille
    0 //                 des pignons (Technic Gear), donc la matrice <a> à <i> est utilisée
    0 //                 pour tourner les couronnes dentées suivant la même orientation que les pignons.
    0 //                 Une fois tournées, le plan des couronnes dentées est parallèle, mais non coïncidant
    0 //                 avec le plan de pignons. Il faut appliquer en plus un offset en x, y et z (voir ci-dessus)
    0 //                 aux couronnes dentées pour avoir leur plan coïncidant avec le plan des pignons.
    0 //    <part>       Nom de la pièce LDraw utilisée comme contrainte.
    

    Format définissant chaque type de pièce HOSE

    Toutes ces définitions sont dans un sous-fichier XXXX.ldr par type.

    0 //  0 SYNTH BEGIN DEFINE <hose_type> HOSE <fill> <diameter> <stiffness> <twist>
    0 //  1 <len> <x> <y> <z> <a> <b> <c> <d> <e> <f> <g> <h> <i> start_part
    0 //  1 <len> <x> <y> <z> <a> <b> <c> <d> <e> <f> <g> <h> <i> mid_part
    0 //  1 <len> <x> <y> <z> <a> <b> <c> <d> <e> <f> <g> <h> <i> end_part
    0 //  1 <len> <x> <y> <z> <a> <b> <c> <d> <e> <f> <g> <h> <i> mid_part2 (Optionnel : voir STRING_WITH_GRIPS_21L)
    0 //  0 SYNTH END
    0 //    <hose_type>  Est le nom que vous lui donnez.
    0 //                 Nom utilisé dans la première méta-commande LSYNTH insérée.
    0 //    <fill>       Est un des 3 mots clefs : STRETCH, FIXED ou FIXEDnn)
    0 //                 STRETCH (étirer) indique que la pièce synthétisée est construit
    0 //                 à partir de sections transversales, mises à l'échelle suivant besoin.
    0 //                 FIXED (fixer) indique que la pièce synthétisée est composée
    0 //                 d'éléments de taille fixe.
    0 //                 FIXEDnn indique que le nombre d'éléments fixes est imposé (éléments intermédiaires)
    0 //                 par le nombre nn, figeant ainsi le nombre de segments à utiliser. Exemple : FIXED21
    0 //                 utilisé pour les chaînes minifig (MINIFIG_CHAIN_16L).
    0 //    <diameter>   Définit le diamètre de l'élément HOSE, pour les pièces de type STRETCH.
    0 //                 Utilisé seulement pour déterminer de combien il faut étirer les sections transversales,
    0 //                 pour que ces segments se chevauchent à leurs extrémités.
    0 //    <stiffness>  Contrôle de combien le segment de départ et d'arrivé se courbe sur la
    0 //                 pièce synthétisée. Définit la "raideur" de la pièce au départ et à l'arrivée.
    0 //                 Plus le nombre est grand, plus la pièce est raide souple.
    0 //    <twist>      Indique de combien de degrés il faut tourner les éléments de type FIXED après le précédent.
    0 //                 Pour les chaîne minifig (MINIFIG_CHAIN) cette valeur est de 90 (degrés), pour
    0 //                 alterner le sens des maillons. Cette valeur est typiquement à 0.
    0 //    start_part   Nom de la pièce LDraw utilisée comme élément de départ de la pièce synthétisée.
    0 //                 Elle est utilisée une seule fois.
    0 //    end_part     Nom de la pièce LDraw utilisée comme élément d'arrivée de la pièce synthétisée.
    0 //                 Elle est utilisée une seule fois.
    0 //    mid_part     Nom de la pièce LDraw utilisée comme éléments intermédiaires de la pièce synthétisée.
    0 //                 Elle peut être utilisée plusieurs fois, d'une quantité fixe, ou suivant la longueur
    0 //                 de la pièce synthétisée.
    0 //    mid_part2    Nom de la pièce LDraw utilisée comme éléments intermédiaires alternatifs (optionnel),
    0 //                 lorsque les éléments intermédiaires sont alternativement de 2 formes différentes.
    0 //                 Utilisé avec FIXED et FIXEDnn. Voir : STRING_WITH_GRIPS_21L.
    0 //    <len>        Longueur associée aux éléments de longueur fixe (FIXED) (Nombre entier ?!?!).
    0 //                 Peut également être utilisé avec les éléments de départ et/ou d'arrivée
    0 //                 des pièces étirées (STRETCH). Pour les pièces FIXEDnn si les éléments 
    0 //                 start_part, end_part, ou leurs paramètres <len> ne sont pas identiques
    0 //                 à l'élément mid_part alors ils ne sont pas inclus dans le compte N des éléments identiques
    0 //                 des pièces de longueur fixe, et sont positionnés exactement
    0 //                 sur les contraintes start/end.  (Voir : HOSE_FLEXIBLE)
    0 //                 Parce que ce comportement est différent avec les tuyaux ordinaires
    0 //                 (ou le tuyau s'étire de l'origine de la contrainte de départ 
    0 //                 jusqu'à l'origine de la contrainte d'arrivée) il est bon d'utiliser
    0 //                 des contraintes d'extrémité spéciales pour les constructions FIXED-N
    0 //                 où la longueur, et peut-être également la forme, soient identiques aux pièces d'extrémité.
    0 //                 Voir maillon MINIFIG_CHAIN.  
    0 //    <x> <y> <z>  Valeurs utilisées en x, y, et z, pour décaler les
    0 //                 éléments synthétisés, à la fin du processus de calcul de LSynth,
    0 //                 pour placer ces éléments dans l'espace 3D du modèle.
    0 //    <a> à <i>    Matrice de transformation utilisée pour mettre tous les éléments
    0 //                 synthétisés avec la bonne orientation et échelle dans le
    0 //                 processus de synthétisation.
    

    Format définissant chaque type de pièces BAND

    Toutes ces définitions sont dans un sous-fichier XXXX.ldr par type.

    0 // 0 SYNTH BEGIN DEFINE <band_type> BAND <fill> <scale> <thresh>
    0 // 1 <color> <x> <y> <z> <a> <b> <c> <d> <e> <f> <g> <h> <i> tangent_part
    0 // 1 <color> <x> <y> <z> <a> <b> <c> <d> <e> <f> <g> <h> <i> arc_part
    0 // 1 <color> <x> <y> <z> <a> <b> <c> <d> <e> <f> <g> <h> <i> trans_part_1 (Optionnel : voir FIXED3)
    0 // 1 <color> <x> <y> <z> <a> <b> <c> <d> <e> <f> <g> <h> <i> trans_part_2 (Optionnel : voir FIXED3)
    0 // 0 SYNTH END
    0 //
    0 //   <band_type>   Est le nom que vous lui donnez.
    0 //                 Nom utilisé dans la première méta-commande LSYNTH insérée.
    0 //   <fill>        Est un des 3 mots clefs : STRETCH, FIXED, ou FIXED3.
    0 //                 STRETCH (Etirer) indique que la pièce synthétisée est construit
    0 //                 à partir de sections transversales, mises à l'échelle suivant besoin.
    0 //                 Par exemple, avec les courroies (RUBBER_BAND),
    0 //                 les portions droites, allant d'une poulie à une autre (parties tangentes),
    0 //                 sont composées d'un seul élément étiré pour aller du point de tangence
    0 //                 d'une poulie, au point de tangence de la suivante.
    0 //                 FIXED (fixer) indique que la pièce synthétisée est composée
    0 //                 d'éléments de taille fixe. Les chaînes (TECHNIC_CHAIN_xxx), par exemple,
    0 //                 sont composées de maillons individuels ayant une taille fixe.
    0 //                 FIXED3 indique que la pièce synthétisée est composée d'éléments de
    0 //                 taille fixe, mais utilise 2 éléments supplémentaires (trans_part_1
    0 //                 et trans_part_2) servant de transition entre les éléments droits
    0 //                 (tangent_part) et les éléments courbes (arc_part).
    0 //                 Actuellement, seul le type de bande de roulement en caoutchouc crantée
    0 //                 (TECHNIC_TREAD), utilise cette possibilité.
    0 //   <scale>       Pour les types FIXED et FIXED3, indique comment convertir une
    0 //                 distance en LDU (Unité LDraw) en un nombre d'éléments nécessaires
    0 //                 pour couvrir la distance.
    0 //                   n_parts = (ldu_distance * scale) + 0.5)
    0 //                 Nota : Dans le fichier lsynth.mpd, <scale> = 1 / Pas du maillon (à valider ?).
    0 //   <thresh>      Utilisé pour décider quand on cesse d'envelopper une contrainte donnée (Définition ?).
    0 //
    0 //   tangent_part  Nom de la pièce LDraw utilisée comme élément couvrant la distance
    0 //                 entre 2 contraintes de pignons ou poulies (sections droites tangentes
    0 //                 aux pignons ou poulies).
    0 //   arc_part      Nom de la pièce LDraw utilisée comme élément s'enroulant sur les contraintes
    0 //                 de pignons ou poulies.
    0 //   trans_part_1  Nom de la pièce LDraw utilisée comme élément de transition entre
    0 //                 tangent_part et arc_part. Uniquement avec FIXED3.
    0 //   trans_part_2  Nom de la pièce LDraw utilisée comme élément de transition entre
    0 //                 arc_part et tangent_part. Uniquement avec FIXED3.
    0 //                 Nota : Tous les paramètres de cet élément ne semblent pas pris en compte
    			 (position <x> <y> <z>).
    0 //
    0 //   <color>       Réservé pour un futur usage ?.
    0 //   <x> <y> <z>   Valeurs utilisées en x, y, et z, pour décaler les
    0 //                 éléments synthétisés, à la fin du processus de calcul de LSynth,
    0 //                 pour placer ces éléments dans l'espace 3D du modèle.
    0 //                 x = normale au plan des éléments.
    0 //                 y = suivant le rayon des poulies et pignons.
    0 //                 z = suivant la direction séparant les pignons.
    0 //   <a> à <i>     Matrice de transformation utilisée pour mettre tous les éléments
    0 //                 synthétisés avec la bonne orientation et échelle dans le
    0 //                 processus de synthétisation.
    

    Format définissant le nom des pièces pour PLI

    Toutes ces définitions se trouvent au début du fichier.

    0 //  SYNTH PART <number.dat> <PLI_command> <command>
    0 //  
    0 //  <number.dat>   Numéro LDraw de la pièce complète
    0 //  <PLI_command>  Nom de la commande utilisée pour la fonction PLI
    0 //  <command>      Nom de la commande réelle de création LSynth
    0 //
    0 // Exemple :
    0 SYNTH PART 4297187.dat PLI_ELECTRIC_NXT_CABLE_20CM   ELECTRIC_NXT_CABLE
    

     

    Droits et Copyright

    Le programme LDraw original est de James Jessiman, voir le site de référence www.ldraw.org.
    Le programme MLCad est la propriété de Michael Lachmann.
    Le programme LSynth est la propriété de Kevin Clague.

    La plupart des exemples utilisés, et la base de ce tutoriel sont de Willy Tschager (Holly-Wood). Un grand merci, pour l'aide que cela m'a apporté. Voir également les pages LSynth : Setup and tutorial, et LSynth : Troubleshooting.

    Les ajouts des types :
    ELECTRIC_POWER_FUNCTIONS_CABLE_HALF,
    STRING_HOSE2,
    STRING_HOSE3,
    STRING_WITHOUT_GRIPS,
    STRING_WITH_GRIPS2_21L,
    STRING_WITHOUT_GRIPS_DUPLO,
    STRING_BAND,
    RUBBER_BAND_SQUARE,
    TECHNIC_AXLE_RIGID,
    TECHNIC_CHAIN_LINK_WITH_TWO_STUDS,
    TECHNIC_TREAD_CRAWLER,
    TECHNIC_TREAD_THIN,
    ELECTRIC_LIGHT_MOTOR_CABLE,
    ELECTRIC_LIGHT_MOTOR_CABLE_HALF,
    HOSE_FLEXIBLE_19L,
    RUBBER_BAND_NO_PLANE,
    RUBBER_BAND_SQUARE_NO_PLANE,
    CYBERMASTER_TREAD,
    ELECTRIC_NXT_CABLE2,
    MINIFIG_CHAIN_5L,
    TECHNIC_TREAD_CRAWLER_WEDGE_SHAPED,
    HINGE_COUPLING_NYLON,
    TECHNIC_CHAIN_WITH_HOLE,
    TECHNIC_CHAIN_TREAD_38_RUBBER_FOOT,
    sont de J.C. Tchang, et peuvent être repris, modifiés, et améliorés LIBREMENT par la communauté (It's FREE).

    Cette page est de : J.C. Tchang. Elle a été faite à partir des informations disponibles en Anglais et de tests sous MLCad version 3.20 et 3.40 en Français.