Scripts en Perl de Timothy Gould

Mise à jour de la page : 7 octobre 2012.
    
J.C. Tchang
 

Cette page décrit quelques utilitaires, pour la création de pièces au format LDraw, écrits en PERL par Timothy Gould et postés sur le forum : LDraw.org (en anglais).

 

Téléchargement

 

Installation

 

Usage du script cyli_corner.pl

Cet utilitaire permet de générer le raccordement de deux cylindres. Nota : cet utilitaire n'ayant pas de nom déclaré j'ai pris "cyli_corner.pl".

Nota : Dans la pratique pour les pièces LDraw.org il est préférable d'utiliser des primitives 4-4cyls.dat et 4-4cylse.dat.

Il est nécessaire d'éditer et modifier le programme en fonction de ses besoins :


use Math::Trig;

## Computes the corner between two cylinders
## or radius $rad at $theta angle with $segs segments

$pi=3.141592635;
$d2r=$pi/180;

## Specify number of segments, angle, radius
$segs=16;
#$theta=55.238*$d2r;
$theta=34.742*$d2r;
$rad=4;

Changez les valeurs en rouge par le nombre de segments de cercle (16 ou 48, ou une valeur à tester), l'angle formé par les deux cylindres fictifs (0 = alignés), et le rayon des cylindres.

Puis lancez la commande : cyli_corner.pl [> FileOut.dat].

Exemple :
cyli_corner.pl > test1.dat

 

Usage du script cyli_cut.pl

Cet utilitaire permet de générer un cylindre coupé par un plan incliné partant de la base jusqu'au sommet. Nota : cet utilitaire n'ayant pas de nom déclaré j'ai pris "cyli_cut.pl".

Nota : Dans la pratique pour les pièces LDraw.org il est préférable d'utiliser des primitives 4-4cylse.dat.

Il est nécessaire d'éditer et modifier le programme en fonction de ses besoins :


use Math::Trig;

## Computes the intersection between a cylinder
## and the yz-plane.
## Radius $rad at $theta angle with $segs segments

$pi=3.141592635;
$d2r=$pi/180;

## Specify number of segments, angle, radius
$segs=16;
#$theta=34.742*$d2r;
$theta=(90-34.742)*$d2r;
$rad=4;

Changez les valeurs en rouge par le nombre de segments de cercle (16 ou 48, ou une valeur à tester), l'angle du plan, et le rayon du cylindre.

Puis lancez la commande : cyli_cut.pl [> FileOut.dat].

Exemple :
cyli_cut.pl > test2.dat

 

Usage du script ang2point.pl

Cet utilitaire permet de calculer des points sur la circonférence d'une primitive LDraw circulaire (polygone de 16 ou 48 côtés) en fonction d'une position angulaire. C'est souvent utile pour déterminer les découpes d'une pièce circulaire au droit de tenons.

Exemple d'exécution du programme :

Description des paramètres et options

Exemple :
ang2point.pl -r 45 -t 6 -s 48 10 12.2 36 > test3.dat

 

Usage du script ribbed_hose.pl

Cet utilitaire permet de générer un ensemble de fichiers LDraw .dat représentant la gamme des tuyaux annelés 79cxx.dat (de 6 à 97 anneaux). Nota : cet utilitaire n'ayant pas de nom déclaré j'ai pris "ribbed_hose.pl".

Lancez la commande : ribbed_hose.pl.

... pour générer les 29 fichiers .DAT.

Nota : Ce programme peut servir de base pour générer toute autre gamme de pièces flexibles à la longueur voulue.

 

Usage du script CyliPoints.pl

Cet utilitaire permet de générer un cylindre dans l'espace, partant d'un point donné (x1, y1, z1) jusqu'à un autre point donné (x2, y2, z2), avec un rayon donné (rad).

Lancez la commande : CyliPoints.pl x1 y1 z1 x2 y2 z2 rad
Nota : Tous les paramètres doivent être fournis avec la commande.

Le résultat donne une ligne de commande LDraw pouvant être insérée dans un fichier de pièce par copier/coller.

Nota : Il peut y avoir des problèmes si y2 < y1. Dans ce cas, inversez les coordonnées des deux points.

Lancez la commande : CyliPoints.pl x1 y1 z1 x2 y2 z2 rad > result.dat
Pour avoir directement le résultat dans un fichier.

Exemples d'exécution du programme :

Nota : La primitive 4-4cyli.dat peut être remplacée par d'autres primitives LDraw :

Ici : 4-4cyli.dat, 2-4cyli.dat, 4-4cylo.dat, rod.dat, box4.dat.

 

Droits et Copyright

Les programmes .pl décrits dans cette page appartiennent à Timothy Gould (timgould).

Création et Traduction de ce manuel : J.C. Tchang.