%% Package `pst-laboObj.tex'
%%
%% This program can be redistributed and/or modified under
%% the terms of the LaTeX Project Public License Distributed
%% from CTAN archives in directory macros/latex/base/lppl.txt.
%%
%% DESCRIPTION:
%%   `pst-labo' is a PSTricks package for 
%%   chemical objects.
%%
%%
%% Authors  :   Denis Girou <Denis.Girou@idris.fr>
%%              Christophe Jorsen <Christophe.Jorssen@free.fr>
%%              Manuel Luque <Mluque5130@aol.com>
%%              Herbert Voss <hvoss@tug.org>
%%
%% version number --> pst-labo.tex
%%%%%%%% Les DiffÃ©rents appareils de chimie %%%%%%%%%%%%

%%%%%%%%% Dosage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\pst@burette@corps{%
\psline(-0.5,11.5)(-0.25,11)(-0.25,3)(0,2.75)(0,0.5)
\psline(0.2,0.7)(0.2,2.75)(0.5,3)(0.5,11)(0.75,11.5) }
\def\pst@burette@robinet{%
\psframe[fillstyle=solid](-.1,1.6)(.3,2.1)
\psframe(-.1,1.5)(-.2,2.2)
\psframe(.3,1.5)(.4,2.2)
\pspolygon(.4,1.7)(.5,1.7)(.6,1.4)(.8,1.4)(.8,2.3)(.6,2.3)(.5,2)(.4,2)
{\psset{fillstyle=solid,fillcolor=LightBlue}
\pspolygon(-.5,1.5)(-.75,1.7)(-.75,2)(-.5,2.2)(-.3,2.2)(-.3,1.5)
\psframe(-.5,1.5)(-.2,2.2)}}

\def\pst@dosage@pHmetre{%
% boitier
\psframe[framearc=0.25](-1,0)(1,3)%
\psframe[fillcolor=GrisClair,fillstyle=solid](-0.75,2)(0.75,2.75)%
\rput(0,2.375){\white PH}%
\pscircle(0,1.25){0.3}%
\psline{->}(0,1.25)(0,1.5)%
\rput(0.65,1.5){$^\circ$C}%
\pscircle(-0.5,0.5){0.2}%
\pscircle(0.5,0.5){0.2}%
% électrode
\psframe[framearc=0.5](2.25,2.5)(2.75,4.5)%
\psframe[fillstyle=solid,fillcolor=GrisClair](2.25,4)(2.75,4.5)%
\pscircle(2.5,2.25){0.25}
% fil
\psline[linearc=0.4,linewidth=0.1,linecolor=LightBlue]%
(2.5,4.5)(2.5,5)(1.25,4.75)(0,5)(0,3)}

\def\pst@dosage@support{%
\psframe(-1.5,0)(1.5,1.5)
{\psset{doubleline=true}%
\pscircle*[linecolor=red](0,0.75){0.2}%
\psframe(-1.25,0.3)(-0.75,1.2)%
\pscircle(1,0.75){0.25}}}

\def\pst@dosage@aimant{%
{\psset{fillstyle=solid,framearc=0.5}%
\psframe(-0.5,0.1)(0.5,0.4)%
\psframe(-0.05,0)(0.05,0.5)}}%

\def\pst@burette@graduation{%
\multido{\n=3.0+0.32}{25}{\psline(-0.25,\n)(0,\n)}}


%%%%%%% début pipette%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\def\pst@pipette@corps{%
\begingroup%
\psset{linewidth=0.053,linearc=0.05}%
\pspolygon(-0.05,0)(-0.15,0.2)(-0.15,6)%
(0.15,6)(0.15,0.2)(0.05,0)%
\psellipse[fillstyle=solid](0,6)(0.15,0.05)
\multido{\Niveau=0.5+0.5}{10}{%
\psline[linewidth=0.02](0,\Niveau)(0.1,\Niveau)}
\endgroup
}
\def\pst@goutte{%
\psbezier[linewidth=0.01](0,0)(-0.04,-0.083)(-0.083,-0.22)%
(0,-0.25)(0.083,-0.22)(0.04,-0.083)(0,0)}

%%%%%% Eprouvette  %%%%%%%%%%%%%%%%%%%%%%
\def\pst@eprouvette@corps{%
\psline(-0.5,5)(-0.5,0)(0.5,0)(0.5,4.9)(0.6,4.93)}

\def\pst@eprouvette@rebord{%
\pscurve(0.6,-0.07)
(0.498,0.008)
(0.483,0.026)
(0.433,0.05)%
(0.353,0.0707)
(0.25,0.0866)
(0.13,0.0966)(0,0.1)%
(-0.13,0.0966)
(-0.25,0.0866)(-0.353,0.0707)
(-0.433,0.05)%
(-0.483,0.026)
(-0.5,0)
(-0.483,-0.026)
(-0.353,-0.0707)%
(-0.25,-0.0866)
(-0.13,-0.096)
(0,-0.1)%
(0.13,-0.096)
(0.25,-0.0866)
(0.353,-0.0707)
(0.433,-0.05)%
(0.498,-0.026)
(0.6,-0.07)}

\def\pst@eprouvette@pied{%
\pscustom{\gsave%
\psarcn(-0.95,0.5){0.45}{0}{-90}
\psarc(-0.95,0.025){0.025}{90}{270}
\psline(-0.95,0)(0.95,0)
\psarc(0.95,0.025){0.025}{-90}{90}
\psarcn(0.95,0.5){0.45}{-90}{180}
\pscurve(0.5,0.4)(0,0.25)(-0.5,0.4)
\fill[fillstyle=solid]\grestore}
\psarcn(-0.95,0.5){0.45}{0}{-90}
\psarc(-0.95,0.025){0.025}{90}{270}
\psline(-0.95,0)(0.95,0)
\psarc(0.95,0.025){0.025}{-90}{90}
\psarcn(0.95,0.5){0.45}{-90}{180}
\pscurve(0.5,0.4)(0,0.25)(-0.5,0.4)
}

\def\pst@eprouvette@graduation{%
\multido{\nyD=0.5+0.5}{9}{%
\psline(-0.4,\nyD)(-0.1,\nyD)}
\multido{\nyd=0.5+0.1}{40}{%
\psline(-0.4,\nyd)(-0.25,\nyd)}}

%%%%%%%%%%% Distillation fractionnée %%%%%%%%%%%%%%%%

\def\pst@DistillationFractionnee{
\def\pst@goutte{\psset{unit=0.6}\psbezier[linewidth=0.017](0,0)(0.25,-.4)(-.25,-.4)(0,0)}%
\def\colon{\psline[linearc=0.3](-.25,10.5)(-.25,8.5)(-.75,8)(-.75,2.5)(-.25,2)(-.25,0)%
\psline[linearc=0.3](0.25,0)(0.25,2)(0.75,2.5)(.75,8)(0.25,8.5)(0.25,9.36)%
\psline(0.25,8.5)(0.25,9.30)\psline(0.25,9.5)(0.25,10.5)%
\def\pointeG{\psline[linewidth=0.4\pslinewidth](0,0)(0.5,-.5)(0,-.1)}%
\multido{\i=3+1}{6}{\rput(-.75,\i){\pointeG}}%
\def\pointeD{\psline[linewidth=0.4\pslinewidth](0,0)(-.5,-.5)(0,-.1)}%
\multido{\i=3+1}{6}{\rput(0.75,\i){\pointeD}}%
{\psset{linestyle=none,fillstyle=hlines,hatchwidth=0.01,hatchsep=0.03}\psframe(-.25,10)(-.05,10.5)%
\psframe(.25,10)(0.05,10.5)}%
\multido{\n=2.5+1.0}{6}{\rput(-.25,\n){\pst@goutte}}%
\multido{\n=2.5+1.0}{6}{\rput(.25,\n){\pst@goutte}}
\rput(-0.25,-.1){\pst@goutte}\rput(0.25,-.1){\pst@goutte}}%
%réfrigérant
\def\refri{\psarc(3,0){0.5}{90}{270}\psarc(7,0){0.5}{270}{90}%
\psframe[linestyle=none,fillstyle=solid](0,-.05)(9,0.05)%
\begingroup
\psset{linewidth=0.5\pslinewidth}
\psline(-.075,.05)(9,0.05)
\psline(0.02,-.05)(9,-.05)
%\psline(0,0.05)(9,0.05)%
\endgroup
\psline(3,0.5)(3.5,0.5)
\psline(3,-.5)(6.5,-.5)
\psline(3.6,0.5)(7,0.5)%
\begingroup
\psset{linewidth=0.5\pslinewidth}
\psline(3.5,0.5)(3.5,1.5)
\psline(3.6,0.5)(3.6,1.5)%
\psline(6.6,-.5)(6.6,-1.5)
\psline(6.5,-.5)(6.5,-1.5)
\endgroup
\psline(6.6,-.5)(7,-.5)%
\psset{arrowscale=2}\psline{->}(6.55,-2.5)(6.55,-1.5)\psline{->}(3.55,1.5)(3.55,2.5)}%
%ballon
\def\ballon{{\psset{linestyle=none,fillstyle=hlines,hatchwidth=0.007,hatchsep=0.03}%
\psframe(-.5,2.25)(-.25,3)\psframe(0.5,2.25)(0.25,3)}%
\psline(0.5,1.5)(0.5,3)%
\psline(-.5,1.5)(-.5,3)%
\psarc(0,0){1.581}{108.435}{71.565}%
\pscustom[linestyle=none]{%
\pscurve(-1.581,0)(-1.25,0.1)(-.75,-.1)(0,.1)(0.75,-.1)(1.25,.1)(1.581,0)%
\psarcn(0,0){1.581}{0}{180} \psset{style=\psk@Distillation@AspectMelange}
\fill%
}%
\psarc[linewidth=0.03](0,0){1.581}{180}{0}
}%
%thermomètre
\def\thermo{\psline[linearc=0.05](-.05,.25)(-.05,2.75)(0.05,2.75)(0.05,0.25)%
\psframe[framearc=0.8,fillstyle=solid,fillcolor=red](-.15,-.25)(0.15,0.25)
\psline[linecolor=red](0,2)
}%
%chauffe ballon
\def\chauffe{\psline(1.17,2.5)(0,2.5)(0,0)(5.5,0)(5.5,2.5)(4.33,2.5)}
%Éprouvette
\def\pst@eprouv{%
\begingroup
\psset{linewidth=1.5\pslinewidth}
\psline(-0.5,6)(-0.5,.5)
\psarcn(-1,0.5){.5}{0}{-90}\psline(-1,0)(1,0)
\psarcn(1,0.5){0.5}{270}{180}\psline(0.5,0.5)(0.5,6)
\endgroup}%

%%%%%%%%%%%%%% fin distillation fractionnée %%%%%%%%%%%%%%

%%%%%%%%%%%%%%% Éprouvette %%%%%%%%%%
\def\pst@eprouvette{%
\psclip{\pscustom[linestyle=none]{\pst@eprouv}}
\psframe*[linecolor=\psk@Distillation@CouleurDistillat](-1.5,-1)(1.5,1)
\pst@eprouv
\endpsclip}
\rput(0,-3){\rput(2.75,13.5){\thermo}
\rput(2.75,2.5){\ballon}
\rput(2.75,4){\colon}%
\rput(3,13.4){\rput{-45}(0,0){\refri}}
\rput(0,0){\chauffe}
\rput(9.4,0){\pst@eprouvette%
\begingroup
\psset{linewidth=0.5\pslinewidth}
\multido{\Niveau=1+1}{5}{%
\psline(-.4,\Niveau)(-.1,\Niveau)}
\multido{\Niveau=0.2+0.2}{24}{%
\psline(-.4,\Niveau)(-.2,\Niveau)}\endgroup}
\rput(9.37,7){\pst@goutte}\rput(9.37,6){\pst@goutte}\rput(9.37,4)
{\pst@goutte}\rput(9.37,1.2){\pst@goutte}
\rput(0.75,.75){\pscircle(0,0){.5}\multido{\i=0+30}{7}{\psline(0.55;\i)(0.65;\i)}%
\psline[linewidth=0.035]{->}(0,.45)}}}
%%%%%%%%%%%%%%%%%%% Fin éprouvette %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%% Bec Bunsen sans grille %%%%%%%%%%%%%%%%

\def\pst@BecBunsen{%
\psset{dimen=middle,linewidth=0.053}%
\psframe(-1.25,0)(1.25,0.25)%
\psframe(-.5,1.25)(0.5,2.25)%
\multido{\n=-0.3+0.3}{3}{%
\pscircle(\n,1.75){0.1}}%
\psframe(-.25,2.25)(0.25,4.25)%
\psline(0.25,1.25)(0.25,0.5)(1.25,0.25)%
\psline(-1.25,0.25)(-.25,0.5)(-0.25,0.75)%
\psline(-2.25,0.75)(-.25,0.75)%
\psline(-2.25,1)(-.25,1)%
\psellipse(-.25,0.875)(0.1,0.125)%
\psframe[fillstyle=solid,linestyle=none](-2.25,0.75)(-0.25,1)%
\psline(-2.25,0.75)(-0.25,0.75)%
\psline(-2.25,1)(-0.25,1)(-.25,1.25)%
\pscurve(-0.25,0.5)(0,0.4)(0.25,0.5)
%flamme
\rput(0,4.25){%
\psclip{\psbezier[linestyle=none,fillstyle=gradient,gradmidpoint=0,%
gradbegin=OrangePale,gradend=yellow]%
(-0.25,0)(-0.35,0.5)(-0.4,0.75)%
(-0.35,1)(-0.25,1.5)(0.5,2)%
(0.25,1.5)(0.35,1)(0.4,0.75)%
(0.35,0.5)(0.25,0)(0,0)}%
\pspolygon[linestyle=none,fillstyle=gradient,gradmidpoint=0,gradbegin=cyan,gradend=white]%
(-0.25,0)(0.25,0)(0,1)%
\endpsclip}}

%%%%BecBunsen avec grille%%%%%%%%%%%%

\def\pst@FlammeGrille{%
\pscustom[linestyle=none]{%
\psarc(0,0.75){0.75}{270}{0}
\psarcn(1.5,0.75){0.75}{180}{90}
\psline(1.5,1.5)(-1.5,1.5)
\psarcn(-1.5,0.75){0.75}{90}{0}
\psarc(0,0.75){0.75}{180}{270}
\fill[style=flammeEtGrille]}}

\def\pst@BecBunsenGrille{%
\psframe(-1.25,0)(1.25,0.25)%
\psframe(-.5,1.25)(0.5,2.25)%
\multido{\n=-0.3+0.3}{3}{%
\pscircle(\n,1.75){0.1}}%
\psframe(-.25,2.25)(0.25,4.25)%
\psline(0.25,1.25)(0.25,0.5)(1.25,0.25)%
\psline(-1.25,0.25)(-.25,0.5)(-0.25,0.75)%
\psline(-2.25,0.75)(-.25,0.75)%
\psline(-2.25,1)(-.25,1)%
\psellipse(-.25,0.875)(0.1,0.125)%
\psframe[fillstyle=solid,linestyle=none](-2.25,0.75)(-0.25,1)%
\psline(-2.25,0.75)(-0.25,0.75)%
\psline(-2.25,1)(-0.25,1)(-.25,1.25)%
\pscurve(-0.25,0.5)(0,0.4)(0.25,0.5)
%flamme
\rput(0,4.25){%
\psclip{\pst@FlammeGrille}%
\pspolygon[linestyle=none,fillstyle=gradient,gradmidpoint=0,gradbegin=cyan,gradend=white]%
(-0.25,0)(0.25,0)(0,1)%
\endpsclip}
\psline[linestyle=dashed,linewidth=0.08](-2,5.75)(2,5.75)}

%%%%%%%%% fin bec Bunsen avec grille %%%%%%%%%%%%%%%%%%%%%%%%%%%

\def\pst@ballon{
{\psset{linewidth=0.053}
\psarcn(-0.7,3.4){0.2}{90}{0}
\psline(-0.5,3.4)(-0.5,2.4)
\psarc(0,1.25){1.25}{113}{67}
\psline(0.5,2.4)(0.5,3.4)
\psarcn(0.7,3.4){0.2}{180}{90}
\psellipse(0,3.6)(0.7,0.1)}}

\def\pst@ballonGrille{
{\psset{linewidth=0.053}
\psarcn(-0.7,2.15){0.2}{90}{0}
\psline(-0.5,2.15)(-0.5,1.4)
\psarc(0,0){1.25}{113}{67}
\psline(0.5,1.15)(0.5,3.4)
\psarcn(0.7,2.15){0.2}{180}{90}
\psellipse(0,2.35)(0.7,0.1)}}

\def\pst@TubeEssais@Corps{{%
\psset{linewidth=0.053}
\psline(-0.5,3.5)(-0.5,0.5)
\psarc(0,0.5){0.5}{180}{0}
\psline(0.5,0.5)(0.5,3.5)
\psellipse[linewidth=0.08](0,3.5)(0.5,0.1)}}

\def\pst@TubeEssais@Droit{%
\psline[linewidth=0.5\pslinewidth](0.05,-1)(0.05,5)%
\psline[linewidth=0.5\pslinewidth](-0.05,-1)(-0.05,5)%
\pst@TubeEssais@Bouchon
\psframe[framearc=0.5,fillstyle=solid,dimen=middle,linewidth=0.5\pslinewidth](-0.05,5)(0.05,0.5)%
\psline[linecolor=white,linewidth=0.14](-0.1,5)(0.1,5)}

\def\pst@TubeEssais@Coude{%
\psline[linewidth=0.5\pslinewidth](0.05,-1)(0.05,0)%
\psline[linewidth=0.5\pslinewidth](-0.05,-1)(-0.05,0)%
\pst@TubeEssais@Bouchon
\pspolygon[fillstyle=solid,linearc=0.05,linewidth=0.5\pslinewidth](-0.05,0.5)(-0.05,2)(8,2)(8,1.9)
(0.05,1.9)(0.05,0.5)%
\psline[linecolor=white,linewidth=0.14](7.95,1.9)(8.05,2)}

\def\pst@TubeEssais@CoudeU{%
\psline[linewidth=0.5\pslinewidth](0.05,-1)(0.05,0)%
\psline[linewidth=0.5\pslinewidth](-0.05,-1)(-0.05,0)%
\pst@TubeEssais@Bouchon
\pspolygon[fillstyle=solid,linearc=0.05,linewidth=0.5\pslinewidth](-0.05,0.5)(-0.05,2)(4.5,2)(4.5,-3)
(4.4,-3)(4.4,1.9)(0.05,1.9)(0.05,0.5)%
\psline[linecolor=white,linewidth=0.14](4.3,-3)(4.6,-3)}

\def\pst@TubeEssais@CoudeUB{%
\psline[linewidth=0.5\pslinewidth](0.05,-1)(0.05,0)%
\psline[linewidth=0.5\pslinewidth](-0.05,-1)(-0.05,0)%
\pst@TubeEssais@Bouchon
\pspolygon[fillstyle=solid,linearc=0.05,linewidth=0.5\pslinewidth](-0.05,0.5)(-0.05,2)(4.5,2)(4.5,-9)
(4.4,-9)(4.4,1.9)(0.05,1.9)(0.05,0.5)%
\psline[linecolor=white,linewidth=0.14](4.3,-9)(4.6,-9)}

\def\pst@TubeRecourbe{%
  \psline[linewidth=0.5\pslinewidth](0.05,-1)(0.05,0)%
  \psline[linewidth=0.5\pslinewidth](-0.05,-1)(-0.05,0)%
  \pst@TubeEssais@Bouchon
  \begingroup
  \psset{linewidth=0.5\pslinewidth}
  \psline(-0.05,0.5)(-0.05,1)
  \psarcn(0.5,1){0.55}{180}{90}
  \psline(0.5,1.55)(5.5,1.55)
  \psarcn(5.5,1){0.55}{90}{0}
  \psline(6.05,1)(6.05,-8.8)
  \psarc(6.5,-8.8){0.45}{180}{0}
  \psline(6.95,-8.8)(6.95,-8.3)
  \psline(7.05,-8.3)(7.05,-8.8)
  \psarcn(6.5,-8.8){0.55}{0}{180}
  \psline(5.95,-8.8)(5.95,1)
  \psarc(5.5,1){0.45}{0}{90}
  \psline(5.5,1.45)(0.5,1.45)
  \psarc(0.5,1){.45}{90}{180}
  \psline(0.05,1)(0.05,0.5)
  \psline(-0.05,.5)(0.05,0.5)\endgroup
  \psframe*[linecolor=white](-0.025,0.52)(0.020,0.6)
}

\def\pst@TubeRecourbe@Court{%
  \psline[linewidth=0.5\pslinewidth](0.05,-1)(0.05,0)%
  \psline[linewidth=0.5\pslinewidth](-0.05,-1)(-0.05,0)%
  \pst@TubeEssais@Bouchon \psline(-0.05,0.5)(-0.05,1)
  \begingroup
  \psset{linewidth=0.5\pslinewidth}
  \psarcn(0.5,1){0.55}{180}{90}
  \psline(0.5,1.55)(3.5,1.55)
  \psarcn(3.5,1){0.55}{90}{0}
  \psline(4.05,1)(4.05,-2.8)
  \psarc(4.5,-2.8){0.45}{180}{0}
  \psline(4.95,-2.8)(4.95,-2.3)
  \psline(5.05,-2.3)(5.05,-2.8)
  \psarcn(4.5,-2.8){0.55}{0}{180}
  \psline(3.95,-2.8)(3.95,1)
  \psarc(3.5,1){0.45}{0}{90}
  \psline(3.5,1.45)(0.5,1.45)
  \psarc(0.5,1){.45}{90}{180}
  \psline(0.05,1)(0.05,0.5)
  \psline(-0.05,.5)(0.05,0.5)
  \endgroup
  \psframe*[linecolor=white](-0.025,0.52)(0.020,0.6)}

\def\pst@TubeEssais@Bouchon{%
  \begingroup
  \psset{fillstyle=solid,fillcolor=GrisClair}
  \psellipse(0,-0.3)(0.4,0.1)
  \pspolygon(-0.4,-0.3)(-0.6,0.5)(0.6,0.5)(0.4,-0.3)%
  \psellipse[linestyle=none,dimen=outer,linewidth=0.07](0,-0.3)(0.4,0.1)%
  \psellipse(0,0.5)(0.6,0.1)
  \endgroup
  \pscurve[linewidth=0.07](-0.5,0)(0,-0.07)(0.5,0)%
}
%
\def\pst@TubeEssais@DoubleTube{%
\begingroup
\psset{linewidth=0.5\pslinewidth}
\psline(-0.3,-3)(-0.3,0)
\psline(-.2,-3)(-0.2,0)
\psline(0.25,-1)(0.25,0)%
\psline(.15,-1)(.15,0)%
\endgroup
\pst@TubeEssais@Bouchon
\rput(0.2,0){\pst@TubeRecourbe@Court@DoubleTube}
\rput(0,0.5){%
\begingroup
\psset{linewidth=0.5\pslinewidth}
\pspolygon[fillstyle=solid,linearc=0.05]%
(-.3,0)(-0.3,2)(-0.5,2.2)(-0.5,3)(0,3)%
(0,2.2)(-0.2,2)(-0.2,0)
\pspolygon(0.1,1.55)(-.5,1.55)(-0.5,1.7)(-.55,1.7)%
(-.55,1.3)(-0.5,1.3)(-0.5,1.55)(-.5,1.45)(.1,1.45)
\psframe[fillstyle=solid,framearc=0.2](-0.4,1.3)(-0.1,1.7)
\endgroup\psellipse[fillstyle=solid](-0.25,3)(0.3,0.1)}}


\def\pst@TubeRecourbe@Court@DoubleTube{
\begingroup
\psset{linewidth=0.5\pslinewidth}
\psline(-0.05,0.5)(-0.05,1)
\psarcn(0.5,1){0.55}{180}{90}
\psline(0.5,1.55)(3.5,1.55)
\psarcn(3.5,1){0.55}{90}{0}
\psline(4.05,1)(4.05,-2.8)
\psarc(4.5,-2.8){0.45}{180}{0}
\psline(4.95,-2.8)(4.95,-2.3)
\psline(5.05,-2.3)(5.05,-2.8)
\psarcn(4.5,-2.8){0.55}{0}{180}
\psline(3.95,-2.8)(3.95,1)
\psarc(3.5,1){0.45}{0}{90}
\psline(3.5,1.45)(0.5,1.45)
\psarc(0.5,1){.45}{90}{180}
\psline(0.05,1)(0.05,0.5)
\psline(-0.05,.5)(0.05,0.5)
\endgroup
\psframe*[linecolor=white](-0.025,0.52)(0.018,0.8)}

\def\pst@TubeEssais@Pince{
\pscustom{%
\pscurve(0.5,0)(0,-0.1)(-0.5,0)
\psline(-0.5,0)(-0.8,0)
\psarc(-0.5,0){0.3}{180}{270}
\psline(-.5,-.3)(2.5,-.3)(2.4,-.2)(1,0)(0.5,0)
\fill[fillstyle=solid,fillcolor=OrangePale]}
\pscustom{%
\psline(-0.8,0)(-0.8,-0.3)
\psarc(-0.5,-0.3){0.3}{180}{270}
\psline(-0.5,-0.6)(2.5,-.6)(2.5,-.3)(-.5,-.3)
\psarcn(-.5,0){0.3}{-90}{180}
\fill[fillstyle=solid,fillcolor=OrangePale]}
\pscustom{%
\psline(-.5,0.05)(-.8,0.05)
\psarcn(-0.5,0.05){0.25}{180}{90}
\psline(-.5,0.3)(-0.5,0.05)
\fill[fillstyle=solid,fillcolor=OrangePale]}
\pscustom{%
\psline(0.5,0.3)(4.9,0.3)(5,0.2)(1,0)(0.5,0)(0.5,0.3)
\fill[fillstyle=solid,fillcolor=OrangePale]}
\pscustom{%
\psline(0.5,0)(5,0.2)(5,0)(2,-0.2)(1,0)
\fill[fillstyle=solid,fillcolor=Marron]}
\psellipse[linewidth=1.5\pslinewidth](1,0)(0.3,0.1)
\psline[linewidth=1.5\pslinewidth](0.7,0)(0.4,-.3)(0.4,-.6)}


\def\pst@FIOLEJAUGE{%
\psline[linearc=0.1,linewidth=0.053](-0.21,3.5)(-0.1,3.5)
(-0.1,1.5)(-0.75,0)(0.75,0)(0.1,1.5)(0.1,3.5)(0.21,3.5)
\psline[linewidth=0.02](-0.1,2.5)(0.1,2.5)}



\def\Cristallisoir{%
\psline(-1.9,2)(-2,2)
\psarc(-2,1.95){0.05}{90}{270}
\psline(-2,1.9)(-2,1)
\psarc(-1,1){1}{180}{270}
\psline(-1,0)(1,0)
\psarc(1,1){1}{270}{0}
\psline(2,1)(2,1.9)
\psarc(2,1.95){0.05}{270}{90}
\psline(2,2)(1.9,2)
\psline(1.9,2)(1.9,1)
\psarcn(1,1){0.9}{0}{-90}
\psline(1,0.1)(-1,0.1)
\psarcn(-1,1){0.9}{270}{180}
\psline(-1.9,1)(-1.9,2)}

\def\InterieurCristallisoir{\pscustom{\psline(1.9,2)(1.9,1)
\psarcn(1,1){0.9}{0}{-90}
\psline(1,0.1)(-1,0.1)
\psarcn(-1,1){0.9}{270}{180}
\psline(-1.9,1)(-1.9,2)}}

\def\pst@Cristallisoir{%
\psclip{\InterieurCristallisoir}
\psframe*[linecolor=BleuClair](-3,-1)(3,1.5)
\endpsclip\Cristallisoir}

\def\pst@TubeRenverse{%
  \begingroup
  \psset{linewidth=0.07}
  \psframe[linestyle=none,fillstyle=solid,fillcolor=BleuClair](-0.5,0)(0.5,5.5)
  \psline(-0.5,0)(-0.5,6)
  \psarcn(0,6){0.5}{180}{0}
  \psline(0.5,6)(0.5,0)
\endgroup}

\def\pst@ReposeTube{%
\begingroup
\psset{linewidth=0.1,linecolor=lightgray}
\psarc(0,-0.25){1}{100}{140}
\psarc(0,-.25){1}{150}{160}
\psarc(0,-0.25){1}{20}{80}
\endgroup}

\def\pst@RebordBecher{%
\psellipse[linewidth=0.053](0,2.55)(1.1,.1)
\multido{\nDiv=0.5+0.5}{4}{
\psline[linewidth=0.03](-.75,\nDiv)(-.4,\nDiv)}
\multido{\nSubDiv=0.5+0.1}{16}{
\psline[linewidth=0.02](-0.75,\nSubDiv)(-.5,\nSubDiv)}}

\def\pst@Becher@Corps{%
\psline[linewidth=0.053,linearc=0.5](-1,2.5)(-1,0)(1,0)(1,2.5)}

\def\pst@Erlen@Corps{%
\psline[linearc=0.3,linewidth=0.053](-0.5,3.5)(-0.5,2.5)%
(-1.5,0)(1.5,0)(0.5,2.5)(0.5,3.5)}

\def\pst@Flacon@Corps{%
{\psset{linewidth=0.053,arrows=-}
\psarcn(-0.6,3.4){0.1}{90}{0}
\psline(-0.5,3.4)(-0.5,3.1)
\psarcn(-0.6,3.1){0.1}{0}{-90}
\psarc(-0.6,2.6){0.4}{90}{180}
\psline(-1,2.6)(-1,0.2)
\psarc(-.8,0.2){0.2}{180}{270}
\psline(-.8,0)(.8,0)
\psarc(.8,0.2){0.2}{-90}{0}
\psline(1,0.2)(1,2.6)
\psarc(0.6,2.6){0.4}{0}{90}
\psarcn(0.6,3.1){0.1}{-90}{180}
\psline(0.5,3.1)(0.5,3.4)
\psarcn(0.6,3.4){0.1}{180}{90}}}

\def\pst@Verre@Corps{{%  FrÃ©dÃ©ric BrÃ©al
  \psset{linewidth=0.053,arrows=-}
  \psline(-1,3.5)(-0.5,1)
  \psarc(0,1){0.5}{180}{360}
  \psline(0.5,1)(1,3.5)}}

\def\pst@Verre@Pied{{%   FrÃ©dÃ©ric BrÃ©al
  \psset{linewidth=0.053,arrows=-,linearc=0.03}
  \psline(-0.5,1)(-0.34,0.2)(-1.2,0)(1.2,0)(0.34,0.2)(0.5,1)}}


%%%%%%%%%%% début  entonnoir %%%%%%%%%%%%%%%%%%%%%%%

\def\pst@Entonnoir@Contour{%
\psline(-0.07,0)(-0.07,1)(-1,2.5)
\psline(1,2.5)(0.07,1)(0.07,0.1)}


\def\pst@Entonnoir@Corps{%
\psclip{\pscustom[linestyle=none]{\pst@Entonnoir@Contour}}
\psframe[fillstyle=solid](-2,-1)(2,3)
\endpsclip
{\psset{linearc=0.25}
\pst@Entonnoir@Contour}
\psellipse(0,2.5)(1,0.1)}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% fin Entonnoir %%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%% Réfrigérant à boulles %%%%%%%%%%%%%%%%%%

\def\pst@TigeBoulles{%
\pscustom[linestyle=none]{%
\psarcn(-0.35,7.5){.1}{90}{0}
\psline(-.25,7.5)(-.25,6.6)
\psarc(-.15,6.6){0.1}{180}{270}
\psarcn(-.15,6.4){0.1}{90}{0}
\psline(-.05,6.4)(-0.05,6)
\multido{\nB=5.75+-0.75,\Nt=5.50+-0.75,\nt=5.25+-.75}{7}{%
\psarc(-0.05,\nB){0.25}{90}{270}
\psline(-0.05,\Nt)(-0.05,\nt)}
\psline(-0.05,0.75)(-0.05,-1.5)
\psline(0.05,-1.5)(0.05,1)
\multido{\nB=1.25+0.75,\nt=1.50+0.75,\Nt=1.75+0.75}{7}{
\psarc(0.05,\nB){0.25}{270}{90}
\psline(0.05,\nt)(0.05,\Nt)}
\psline(0.05,6)(0.05,6.4)
\psarcn(0.15,6.4){0.1}{180}{90}
\psarc(0.15,6.6){0.1}{-90}{0}
\psline(0.25,6.6)(0.25,7.5)
\psarcn(0.35,7.5){0.1}{180}{90}
\fill[fillstyle=solid]}
\psarcn(-0.35,7.5){.1}{90}{0}
\psline(-.25,7.5)(-.25,6.6)
\psarc(-.15,6.6){0.1}{180}{270}
\psarcn(-.15,6.4){0.1}{90}{0}
\psline(-.05,6.4)(-0.05,6)
\multido{\nB=5.75+-0.75,\Nt=5.50+-0.75,\nt=5.25+-.75}{7}{%
\psarc(-0.05,\nB){0.25}{90}{270}
\psline(-0.05,\Nt)(-0.05,\nt)}
\psline(-0.05,0.75)(-0.05,-1.5)
\psline(0.05,-1.5)(0.05,1)
\multido{\nB=1.25+0.75,\nt=1.50+0.75,\Nt=1.75+0.75}{7}{
\psarc(0.05,\nB){0.25}{270}{90}
\psline(0.05,\nt)(0.05,\Nt)}
\psline(0.05,6)(0.05,6.4)
\psarcn(0.15,6.4){0.1}{180}{90}
\psarc(0.15,6.6){0.1}{-90}{0}
\psline(0.25,6.6)(0.25,7.5)
\psarcn(0.35,7.5){0.1}{180}{90}
\rput(0,-1.6){\pst@goutte}}

\def\pst@CorpsRefri{
\pscustom[linestyle=none]{
\psarc(0,5.75){0.5}{0}{180}
\psline(-0.5,5.75)(-0.5,5.5)(-1.5,5.5)
\psline(-1.5,5.3)(-.5,5.3)(-.5,1.7)(-1.5,1.7)
\psline(-1.5,1.5)(-.5,1.5)(-0.5,1)
\psarc(0,1){0.5}{180}{0}
\psline(0.5,1)(0.5,5.75)
%\fill[fillstyle=solid,fillcolor=LightBlue]
\fill[fillstyle=gradient,gradbegin=cyan,gradend=OrangePale,gradmidpoint=0]
}
{\psset{linewidth=1.1\pslinewidth}
\psarc(0,5.75){0.5}{0}{180}
\psline(-0.5,5.75)(-0.5,5.5)(-1.5,5.5)
\psline(-0.5,5.75)(-0.5,5.5)(-1.5,5.5)
\psline(-1.5,5.3)(-.5,5.3)(-.5,1.7)(-1.5,1.7)
\psline(-1.5,1.5)(-.5,1.5)(-0.5,1)
\psarc(0,1){0.5}{180}{0}
\psline(0.5,1)(0.5,5.75)}
\psline[linecolor=cyan]{->}(-2.5,1.6)(-1.6,1.6)
\psline[linecolor=OrangePale]{<-}(-2.5,5.4)(-1.6,5.4)}
\def\pst@Refrigerant@Boulles{
\rput(0,0.2){\pst@CorpsRefri\pst@TigeBoulles}
\pst@TubeEssais@Bouchon
\pscustom{
\psline[linearc=0.025](-0.05,0.6)(-0.05,0.5)(0.05,0.5)(0.05,0.6)
\fill[fillstyle=solid]}}

%%%%%%%%%%%%%%%%%%%fin réfrigérant à boulles %%%%%%%%%%%

%%%%%%%%%%%%% Chauffe-Ballon %%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\pst@ChauffeBallon{
\psframe[fillstyle=solid](-2,-1)(2,1)
\pscircle(-1.25,0){0.4}
\rput(-1.25,0){
\multido{\iA=0+30}{7}{
\psline(0.45;\iA)(0.6;\iA)}
\psline[arrowinset=0]{->}(0,0)(0.3;60)}
\psframe[doubleline=true,fillstyle=solid,fillcolor=gray](1,-.5)(1.5,0.5)
\pscircle*[linecolor=red](1.25,0.7){0.1}}

%%%%%%%%%%%% Fin de Chauffe-Ballon %%%%%%%%%%%%%%%%%%%%%%

\def\pst@Ballon@Reflux{%
  \psclip{%
    \pscustom[linestyle=none]{\pst@ballon}}
    \pscustom[fillstyle=gradient,gradbegin=cyan,gradend=white,gradmidpoint=0,linecolor=cyan]{%
      \pscurve(-1.5,1.5)(-1.375,1.55)%
	(-1.25,1.5)(-1.125,1.45)%
	(-1,1.5)(-.875,1.55)%
	(-.75,1.5)(-.625,1.45)%
	(-.5,1.5)(-.375,1.55)%
	(-.25,1.5)(-0.125,1.45)%
	(0,1.5)(0.125,1.55)%
	(.25,1.5)(0.375,1.45)%
	(0.5,1.5)(0.625,1.55)%
	(0.75,1.5)(0.875,1.45)%
	(1,1.5)(1.125,1.55)%
	(1.25,1.5)(1.375,1.45)(1.5,1.5)
      \psline(1.5,1.5)(1.5,0)(-1.5,0)(-1.5,1.5)}%
  \endpsclip
  \pst@ballon
}

\newpsstyle{AqueoPhase}{linestyle=none,fillstyle=solid,fillcolor={[cmyk]{0.215686,0.062745,0,0}}}
\newpsstyle{OrganicPhase}{linestyle=none,fillstyle=solid,fillcolor={[cmyk]{0.223529,0.094118,0.501961,0}}}

% robinet ouvert
\newif\ifPst@OpenTap
\define@key[psset]{pst-labo}{OpenTap}[true]{\@nameuse{Pst@OpenTap#1}}%
%
\def\pst@corpsAmpoule{%
% corps de l'ampoule
  \psline(-0.65,15)(-0.55,13.75)
  \psbezier(-0.55,13.75)(-1.55,13.54)( -1.92,12.7)(-1.92,11.65)
  \psbezier(-1.92,11.65)(-1.92,10.6)(-0.3,9.55)(-0.3,8.5)
  \psline(-0.3,8.5)(-0.3,2)
  \psbezier(-0.3,2)(-0.3,1.5)(-0.14,1.5)(-0.14,1)
  \psline(-0.14,1)(-0.14,-1)
  \psline(0.14,-1)(0.14,1)
  \psbezier(0.14,1)(0.14,1.5)(0.3,1.5)(0.3,2)
  \psline(0.3,2)(0.3,8.5)
  \psbezier(0.3,8.5)(0.3,9.55)(1.92,10.6)(1.92,11.65)%
  \psbezier(1.92,11.65)( 1.92,12.7)(1.55,13.54)(0.55,13.75)
  \psline(0.55,13.75)(0.65,15)
}%
%
% le contour pour contenir les liquides
\def\pst@contourAmpouleClip{%
% corps de l'ampoule pour clip
  \moveto(-0.65,15)
  \lineto(-0.55,13.75)
  \curveto(-1.55,13.54)( -1.92,12.7)(-1.92,11.65)
  \curveto(-1.92,10.6)(-0.3,9.55)(-0.3,8.5)
  \lineto(-0.3,2)
  \curveto(-0.3,1.5)(-0.14,1.5)(-0.14,1)%
  \lineto(-0.14,-1)
  \lineto(0.14,-1)
  \lineto(0.14,1)
  \curveto(0.14,1.5)(0.3,1.5)(0.3,2)
  \lineto(0.3,8.5)
  \curveto(0.3,9.55)(1.92,10.6)(1.92,11.65)
  \curveto(1.92,12.7)(1.55,13.54)(0.55,13.75)
  \lineto(0.65,15)
}%
%
% bouchon de l'ampoule à décanter
\def\pst@Bouchon{%
  \pspolygon[linecap=1,linejoin=1,fillstyle=solid,fillcolor=gray!10,linecolor=gray](-0.67,15.25)(0.67,15.25)(0.57,14)(-0.57,14)
  % oreille bouchon
  \pscustom[linecap=1,linejoin=1,fillstyle=solid,fillcolor=gray!05,linecolor=gray]{%
    \psarcn(0.555,15.365){0.1145}{-90}{180}
    \psarc(0,15.92){0.67}{-45}{225}
    \psarcn(-0.555,15.365){0.1145}{0}{-90}
    \closepath
  }}%
% robinet ouvert
% tap open
\def\pst@TapOpen{%
  \psframe[fillstyle=solid](-.2,0.5)(.2,1)
  \psframe(-.2,0.4)(-.3,1.1)
  \psframe(.2,0.4)(.3,1.1)
  \pspolygon[linejoin=1](.3,0.6)(.4,0.6)(.5,0.3)(.9,0.3)(.9,1.2)(.5,1.2)(.4,0.9)(.3,0.9)
  \pspolygon[fillstyle=solid,fillcolor=cyan!50](-.6,0.4)(-.85,0.6)(-.85,0.9)(-.6,1.1)(-.3,1.1)(-.3,0.4)
  \psline(-0.6,0.4)(-0.6,1.1)
  \psline(0.5,0.3)(0.5,1.2)
}%
  % robinet fermÃ©
  % tap open
\def\pst@TapClosed{%
  \psframe[fillstyle=solid](-.2,0.5)(.2,1)
  \psframe(-.2,0.4)(-.3,1.1)
  \psframe(.2,0.4)(.3,1.1)
  \pscustom[linejoin=1]{%
    \psarcn(0.35,0.6){0.05}{180}{90}
    \psline(0.4,0.65)(0.9,0.65)(0.9,0.85)(0.35,0.85)
    \psarcn(0.35,0.9){0.05}{-90}{180}
    \closepath
  }%
  \psline(0.5,0.65)(0.5,0.85)
  \pspolygon[fillstyle=solid,fillcolor=cyan!50](-.6,0.4)(-.85,0.6)(-.85,0.9)(-.6,1.1)(-.3,1.1)(-.3,0.4)
  \psline(-0.6,0.4)(-0.6,1.1)
}%
% la macro ampoule Ã  decanter = pstSeparateFunnel
\def\pstSeparateFunnel{\pst@object{pst@SeparateFunnel}}
\def\pst@SeparateFunnel@i{%
  \addbefore@par{dimen=middle,niveauLiquide1=11,niveauLiquide2=12,linewidth=0.04}%
  \begin@SpecialObj
% les deux liquides
 \psclip{\pscustom[linestyle=none]{\pst@contourAmpouleClip}}%
   \psframe[style=AqueoPhase](-2,1)(2,\@nameuse{psk@TubeEssais@niveauLiquide1})%
 \endpsclip%
 \psclip{\pscustom[linestyle=none]{\pst@contourAmpouleClip}}%
 \psframe[style=OrganicPhase](-2,\@nameuse{psk@TubeEssais@niveauLiquide1})(2,\@nameuse{psk@TubeEssais@niveauLiquide2})%
 \endpsclip%
 \ifPst@TubeEssais@bouchon\pst@Bouchon\fi
  \pst@corpsAmpoule
  \ifPst@OpenTap\pst@TapOpen\else\pst@TapClosed\fi
% ouverture tube de coulée
  \psellipse[fillstyle=solid,fillcolor=white](0,-1)(0.15,0.25)
% rebord ampoule
 \pscircle*[linecolor=darkgray](-0.675,15){0.03}
 \pscircle*[linecolor=darkgray](0.675,15){0.03}
 \psline[linecolor=darkgray](-0.65,15)(0.65,15)
% join entre le col et l'ampule
 \psline[linecolor=gray](-0.55,13.75)(0.55,13.75)
  \end@SpecialObj%
  }%
%
\def\pstSupport{%
  \psset{dimen=m,linewidth=0.04}
  \definecolor{woodcolor}{rgb}{0.957 0.84 0.69}
  \definecolor{darkcolorwood}{rgb}{0.5 0.25 0}
  \newpsstyle{woodcolor}{fillstyle=solid,fillcolor=woodcolor,linejoin=1}
  \psframe[style=woodcolor](-2,-6)(5,-5)
  %\psline(-2.,-5.5)(5,-5.5)
  \psframe[style=woodcolor](2.75,2)(3.25,16)
  \pscustom[style=woodcolor]{\psarc(2.75,1.5){0.5}{90}{180}
    \psline(2.25,1.5)(2.25,-5)(3.75,-5)(3.75,1.5)
    \psarc(3.25,1.5){0.5}{0}{90}}%
  %\psline(-2,11.5)(-1.55,10.5)
  \psline(2,11.5)(1.55,10.5)
  \pspolygon[style=woodcolor](-2.5,11.5)(-2,11.5)(-1.55,10.5)(-2.5,10.5)
  \pspolygon[style=woodcolor](4,11.5)(2,11.5)(1.55,10.5)(4,10.5)
  \psframe(-2.5,10.5)(4,11.5)
  \pscustom[style=woodcolor]{
  \psline(4,11.2)(4.5,11.2)\psarcn(5,11){0.5385}{158.2}{-158.2}
  \psline(4.5,10.8)(4,10.8)}
  \psline(4.5,10.8)(4.5,11.2)
}%
