Retour

Source de doc-labo.tex

Fichier TeX
\input $FORMAT/myplain.tex
\input macros-doc.tex
\def \epspath {%
   labo/}%   $HOME/htdocs/bbgraf/guide/}
\def \datapath {%
   labo/}%   $HOME/htdocs/bbgraf/guide/}
\def \listingpath {%
   labo/}%   $HOME/htdocs/bbgraf/guide/}

\long \def \catalogue#1#2{%
$$
   \vcenter {\hsize .45 \hsize 
      $$\boxepsillustrate {#1}$$
   }
   \hfill
   \vcenter {\hsize .55 \hsize #2}
$$
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%     sortie de la couverture
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\titre {Extension labo pour le format jps}

\centerline {{\sl par Jean-Paul Vignault}}

\centerline {{\sl Groupe des Utilisateurs de
Linux Poitevins (GULP)}}

\centerline {(|jpv@melusine.eu.org|)}

\centerline {\today }
\vskip \titreskip


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%        debut du manuel
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\footline = {\hss \folio \hss }
\pageno 1


L'extension 'labo' propose un ensemble d'objets provenant d'un
laboratoire de chimie. Tous placé dans l'environnement 'picture' du
format jps, ils se positionnent et s'assemblent aux moyens des
commandes de cet environnement 
\footnote {$^{(*)}$} {%
documentation~: voir
|http://melusine.eu.org/syracuse/texpng/jpv/guide_jps/doc-picture.xml|}.
Ce document
\footnote {$^{(**)}$} {%
inachevé et toujours en cours d'élaboration, à l'image de l'extension 'labo'}
récapitule les différents objets, leurs points spéciaux éventuels,
ainsi que les différentes options de dessins.

{\bf Avertissement~:} \` A la suite des travaux en cours sur les n\oe
uds et leurs connexions, un important remaniement de l'environnement
picture est prévu pour les semaines à venir, afin, notamment, de
faciliter le codage de montages complexes, à l'image de ce qui se fait
pour l'extension 'logic'
\footnote {$^{(***)}$} {%
|http://melusine.eu.org/syracuse/texpng/jpv/guide_jps/doc-logic.xml|}. 

\paragraphe {Utilisation}

Pour pouvoir utiliser l'extension, insérer la commande |uselabo| dans
le source jps.

\paragraphe {La verrerie}

\catalogue
{tube_essai.ps}
{Nom~: |TubeEssais| \par
Points spéciaux~: \par
\item {--} |trou|~: point de connexion pour bouchon 1~trou
\item {--} |trou1|~: point de connexion gauche pour bouchon 2~trous
\item {--} |trou2|~: point de connexion droit pour bouchon 2~trous
\item {--} |bb|~: comme son nom l'indique
\par
Options~: liquide, gaz, solide, bouchon, tube
}

\catalogue
{ballon.ps}
{Nom~: |Ballon| \par
Points spéciaux~: \par
\item {--} |trou|~: point de connexion pour bouchon 1~trou
\item {--} |trou1|~: point de connexion gauche pour bouchon 2~trous
\item {--} |trou2|~: point de connexion droit pour bouchon 2~trous
\item {--} |bb|~: comme son nom l'indique
\par
Options~: liquide, gaz, solide, bouchon, tube
}
\catalogue
{erlen.ps}
{Nom~: |Erlen| \par
Points spéciaux~: \par
\item {--} |trou|~: point de connexion pour bouchon 1~trou
\item {--} |trou1|~: point de connexion gauche pour bouchon 2~trous
\item {--} |trou2|~: point de connexion droit pour bouchon 2~trous
\item {--} |bb|~: comme son nom l'indique
\par
Options~: liquide, gaz, solide, bouchon, tube
}

\catalogue
{flacon.ps}
{Nom~: |Flacon| \par
Points spéciaux~: \par
\item {--} |trou|~: point de connexion pour bouchon 1~trou
\item {--} |trou1|~: point de connexion gauche pour bouchon 2~trous
\item {--} |trou2|~: point de connexion droit pour bouchon 2~trous
\item {--} |bb|~: comme son nom l'indique
\par
Options~: liquide, gaz, solide, bouchon, tube
}

\catalogue
{eprouvette.ps}
{Nom~: |Eprouvette| \par
Points spéciaux~: 
\item {--} |bb|~: comme son nom l'indique
\par
Options~: liquide, gaz, solide
}

\catalogue
{fiole_jauge.ps}
{Nom~: |FioleJauge| \par
Points spéciaux~: 
\item {--} |bb|~: comme son nom l'indique
\par
Options~: liquide, gaz, solide
}

\catalogue
{becher.ps}
{Nom~: |Becher| \par
Points spéciaux~: 
\item {--} |bb|~: comme son nom l'indique
\par
Options~: liquide, gaz, solide
}

\catalogue
{pipette.ps}
{Nom~: |Pipette| \par
Points spéciaux~: --
\par
Options~: liquide, gaz, solide
}

\catalogue
{entonnoir.ps}
{Nom~: |Entonnoir| \par
Points spéciaux~: --
\par
Options~: liquide, gaz, solide
}

\catalogue
{burette.ps}
{Nom~: |Burette| \par
Points spéciaux~: --
\par
Options~: liquide, gaz, solide
}

\catalogue
{cristallisoir.ps}
{Nom~: |Cristallisoir| \par
Points spéciaux~: --
\par
Options~: liquide, gaz, solide
}

\catalogue
{tube_renverse.ps}
{Nom~: |TubeRenverse| \par
Points spéciaux~: --
\par
Options~: liquide, gaz, solide
}

\catalogue
{repose_tube.ps}
{Nom~: |ReposeTube| \par
Points spéciaux~: --
\par
Options~: liquide, gaz, solide
}


\paragraphe {Les options de contenus}

\sparagraphe {Liquides}

Un objet donné peut contenir différents liquides. Deux tableaux pour
paramétrer~: |niveauLiquides| qui contient le niveau en proportion de
chacun des liquides, et |aspectLiquides| qui contient la couleur pour
chacun des liquides. Le nombre d'éléments du deuxième tableau doit être
au moins égal au nombre d'éléments du premier tableau. 

Les objets sont placés avec les commandes de l'environnement
'picture', on peut donc leur faire subir un a\|gran\-dis\-se\-ment$/$ré\-duc\-tion
ou une rotation. Quelque soit l'inclinaison, le niveau du liquide est
garanti horizontal, mais en revanche, les proportions sur les niveaux
n'auront pas forcément l'air respectées à l'affichage~: on utilise la
hauteur théorique d'un récipient rectangulaire (la Bounding Box). Si
l'inclinaison est supérieure ou égale à $90$ degrés, alors le récipient
sera vide\dots

Pour certains objets, comme le Flacon, on peut obtenir un objet
incliné rempli à $100\% $ et qui n'a pas l'air plein\dots La solution est de
le remplir à plus de $100\% $. Aucun test n'est fait, et on peut même
donner des proportions négatives.

Exemple~:
\exemple {liquides}


\sparagraphe {Solides}

Un objet donné peut contenir différents solides. Un tableau pour
paramétrer~: |Solides| qui contient les différentes procédures à
effectuer. Pour le moment, les différents solides utilisables sont
|ClouFer| (un seul) |TournureCuivre| (une seule), |GrenailleZinc| (une
seule) |Filaments| (nombre à passer en paramètre), |Clous| (nombre à
passer en paramètre), |Zinc| (nombre à passer en paramètre) et |Cuivre|
(nombre à passer en paramètre). Pour chacun de ces solides (sauf le
Zinc et la grenaille de zinc), on peut passer une couleur en
argument. 

Exemple avec le tube à essai~: 
\exemple {solides}

\sparagraphe {Gazs}

Pour le moment un seul type de gazs~: les bulles de
Champagne. Celles-ci n'apparaissent que dans le liquide, et on suppose
pour le moment que le plus haut niveau du liquide est donné par le
dernier élément du tableau |niveauLiquides| 

Exemple~:
\exemple {gazs}

\paragraphe {Les tubes et bouchons}

Pour le moment, 4 objets (TubeEssais, Ballon, Erlen et Flacon) peuvent
avoir un bouchon et/ou un ou deux tubes. La commande withbouchon
sélectionne l'affichage du bouchon, alors que la commande
withoutbouchon la déselectionne. Le nombre de trous dans le bouchon
dépend du nombre de tubes demandés (0, 1 ou 2). 

Le tableau Tubes indique le nombre et le type de tube à positionner
sur l'objet. Par défaut, il suffit de donner le nom du tube entre
parenthèses. éventuellement, on peut appliquer une transformation à
l'un des tubes à afficher. Dans ce cas, on donne entre accolades la
séquence à passer pour l'affichage, en suivant la syntaxe habituelle
de l'environnement 'picture'. 


\catalogue
{tube_recourbe.ps}
{Nom~: |TubeRecourbe| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
}

\catalogue
{tube_recourbe_court.ps}
{Nom~: |TubeRecourbeCourt| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
}

\catalogue
{tube_coude.ps}
{Nom~: |TubeCoude| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
}

\catalogue
{tube_coudeU.ps}
{Nom~: |TubeCoudeU| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
}

\catalogue
{tube_coudeUB.ps}
{Nom~: |TubeCoudeUB| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
}

\catalogue
{refrigerant.ps}
{Nom~: |Refrigerant| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
\item {--} |Entree|~: entrée latérale
\item {--} |Sortie|~: sortie latérale
\par
Switch~:
\item {--} |fleches\_Refrigerant| initialisé à $true$ par défaut
}

\catalogue
{refrigerant_liebig.ps}
{Nom~: |RefrigerantLiebig| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
\item {--} |Entree|~: entrée latérale
\item {--} |Sortie|~: sortie latérale
\par
Switch~:
\item {--} |fleches\_Refrigerant| initialisé à $true$ par défaut
}

\catalogue
{refrigerant_boules.ps}
{Nom~: |RefrigerantBoules| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
\item {--} |Entree|~: entrée latérale
\item {--} |Sortie|~: sortie latérale
\item {--} |FlecheEntree|~: extrémité de la flèche d'entrée latérale
\item {--} |FlecheSortie|~: extrémité de la flèche de sortie latérale
\par
Switch~:
\item {--} |fleches\_Refrigerant| initialisé à $true$ par défaut
}

\catalogue
{tube_droit.ps}
{Nom~: |TubeDroit| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
}

\catalogue
{tubeU.ps}
{Nom~: |TubeU| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
\item {--} |uc|~: comme son nom l'indique
\item {--} |ConnectIn|~: point de connection bouchon pour l'entrée du tube
\item {--} |ConnectOut|~: point de connection bouchon pour la sortie du tube
}

\catalogue
{tube_coin.ps}
{Nom~: |TubeCoin| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
}

\catalogue
{entonnoir_robinet.ps}
{Nom~: |EntonnoirRobinet| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
}

\catalogue
{entonnoir_robinet_court.ps}
{Nom~: |EntonnoirRobinetCourt| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
}

\catalogue
{colonne_vigreux.ps}
{Nom~: |ColonneVigreux| \par
Points spéciaux~: 
\item {--} |In|~: entrée du tube
\item {--} |Out|~: sortie du tube
\item {--} |SortieVigreux|~: sortie latérale du tube
\par
Switch~:
\item {--} |bouchon\_Vigreux| initialisé à $false$ par défaut. Dessin
d'un bouchon à un trou au point $Out$ sinon.
\par
Nota~:
\item {--} Le tube de sortie fait un angle de $- 25, 641$ degrés par
rapport à l'horizontale. Pour y raccorder un tube vertical, il faut
incliner ce dernier de $90 - 25, 641 = 64, 359$ degrés.
}

\paragraphe {Options de bouchage et de tubage}


Pour le moment, 4 objets (TubeEssais, Ballon, Erlen et Flacon) peuvent
avoir un bouchon et$/$ou un ou deux tubes. La commande |withbouchon|
sélectionne l'affichage du bouchon, alors que la commande
|withoutbouchon| la désélectionne. Le nombre de trous dans le bouchon
dépend du nombre de tubes demandés ($0$, $1$ ou $2$). 

Le tableau |Tubes| indique le nombre et le type de tube à positionner 
sur l'objet. Par défaut, il suffit de donner le nom du tube entre
parenthèses. éventuellement, on peut appliquer une transformation à
l'un des tubes à afficher. Dans ce cas, on donne entre accolades la
séquence à passer pour l'affichage, en suivant la syntaxe habituelle
de l'environnement 'picture'. 

\` A noter que l'on peut utiliser l'objet vide |relax| comme tube, ce
qui permettra d'obtenir un bouchon avec un trou supplémentaire.

Exemple~:
\exemple {bouchon_tubes}
\paragraphe {Accessoires}

\catalogue
{manometre.ps}
{Nom~: |Manometre| \par
Syntaxe~: \par
\item {} $\alpha$ |Manometre| \par
où $\alpha $ est l'angle entre la graduation $0$ et l'aiguille 
\par
Points spéciaux~: 
\item {--} |Connect|~: point de connexion du manomètre
}

\catalogue
{robinet.ps}
{Nom~: |RobinetTube| \par
Points spéciaux~: --
}

\catalogue
{thermometre.ps}
{Nom~: |Thermometre| \par
Points spéciaux~: --
}

\catalogue
{thermometre_long.ps}
{Nom~: |ThermometreLong| \par
Points spéciaux~: --
}

\paragraphe {Autre matériel}

\catalogue
{conductimetre.ps}
{Nom~: |Conductimetre| \par
Points spéciaux~: 
\item {--} |Cellule|~: centre de la cellule
\item {--} |bb|~: comme son nom l'indique
}

\catalogue
{conductimetre_digital.ps}
{Nom~: |ConductimetreDigital| \par
Points spéciaux~: 
\item {--} |Cellule|~: centre de la cellule
\item {--} |bb|~: comme son nom l'indique
}

\catalogue
{pHmetre.ps}
{Nom~: |pHmetre| \par
Points spéciaux~: 
%\item {--} |Cellule|~: centre de la cellule
}

\catalogue
{agitateur_magnetique.ps}
{Nom~: |AgitateurMagnetique| \par
Points spéciaux~: 
%\item {--} |Cellule|~: centre de la cellule
}

\catalogue
{chauffe_ballon.ps}
{Nom~: |ChauffeBallon| \par
Points spéciaux~: 
%\item {--} |Cellule|~: centre de la cellule
}

\paragraphe {Exemples d'utilisations}
\sparagraphe {Deux exemples simple}

Dans les deux exemples ci-dessous, on utilise les coordonnées du
repère pour placer les objets.

\exemple {styrene}
\exemple {acido-basique}

\sparagraphe {Réutilisation de points clés}

Ici, on récupère les points clés |FlecheEntree| et |FlecheSortie| du
dessin afin de pouvoir afficher une légende.

\exemple {chauffage_reflux}

\sparagraphe {Un assemblage plus complexe}

Ci-dessous, on positionne tout d'abord ballon et chauffe-ballon. Le
réfrigérant est positionné à partir du point clé |Out| lié au ballon,
et l'éprouvette est positionnée par rapport au point clé |In| du réfrigérant.

\exemple {distillation}

\bye