summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/xymtex/aliphat.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/xymtex/aliphat.dtx')
-rw-r--r--Master/texmf-dist/source/latex/xymtex/aliphat.dtx3193
1 files changed, 0 insertions, 3193 deletions
diff --git a/Master/texmf-dist/source/latex/xymtex/aliphat.dtx b/Master/texmf-dist/source/latex/xymtex/aliphat.dtx
deleted file mode 100644
index 4f1367d15ce..00000000000
--- a/Master/texmf-dist/source/latex/xymtex/aliphat.dtx
+++ /dev/null
@@ -1,3193 +0,0 @@
-% \iffalse meta-comment
-%% File: aliphat.dtx
-%
-% Copyright 1993,1996,1998 by Shinsaku Fujita
-%
-% This file is part of XyMTeX system.
-% -------------------------------------
-%
-% This file is a successor to:
-%
-% aliphat.sty
-% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% \typeout{XyMTeX for Drawing Chemical Structural Formulas. Version 1.00}
-% \typeout{ -- Released December 1, 1993 by Shinsaku Fujita}
-% Copyright (C) 1993 by Shinsaku Fujita, all rights reserved.
-%
-% This file is a part of the macro package ``XyMTeX'' which has been
-% designed for typesetting chemical structural formulas.
-%
-% This file is to be contained in the ``xymtex'' directory which is
-% an input directory for TeX. It is a LaTeX optional style file and
-% should be used only within LaTeX, because several macros of the file
-% are based on LaTeX commands.
-%
-% For the review of XyMTeX, see
-% (1) Shinsaku Fujita, ``Typesetting structural formulas with the text
-% formatter TeX/LaTeX'', Computers and Chemistry, in press.
-% The following book deals with an application of TeX/LaTeX to
-% preparation of manuscripts of chemical fields:
-% (2) Shinsaku Fujita, ``LaTeX for Chemists and Biochemists''
-% Tokyo Kagaku Dozin, Tokyo (1993) [in Japanese].
-%
-% Copying of this file is authorized only if either
-% (1) you make absolutely no changes to your copy, including name and
-% directory name; or
-% (2) if you do make changes,
-% (a) you name it something other than the names included in the
-% ``xymtex'' directory and
-% (b) you are requested to leave this notice intact.
-% This restriction ensures that all standard styles are identical.
-%
-% Please report any bugs, comments, suggestions, etc. to:
-% Shinsaku Fujita,
-% Ashigara Research Laboratories, Fuji Photo Film Co., Ltd.,
-% Minami-Ashigara, Kanagawa-ken, 250-01, Japan.
-% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% \def\j@urnalname{aliphat}
-% \def\versi@ndate{December 01, 1993}
-% \def\versi@nno{ver1.00}
-% \def\copyrighth@lder{SF}% Shinsaku Fujita
-% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% \def\j@urnalname{aliphat}
-% \def\versi@ndate{August 16, 1996}
-% \def\versi@nno{ver1.01}
-% \def\copyrighth@lder{SF} % Shinsaku Fujita
-% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% \def\j@urnalname{aliphat}
-% \def\versi@ndate{October 31, 1998}
-% \def\versi@nno{ver1.02}
-% \def\copyrighth@lder{SF} % Shinsaku Fujita
-% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% \fi
-%
-% \CheckSum{3929}
-%% \CharacterTable
-%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
-%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
-%% Digits \0\1\2\3\4\5\6\7\8\9
-%% Exclamation \! Double quote \" Hash (number) \#
-%% Dollar \$ Percent \% Ampersand \&
-%% Acute accent \' Left paren \( Right paren \)
-%% Asterisk \* Plus \+ Comma \,
-%% Minus \- Point \. Solidus \/
-%% Colon \: Semicolon \; Less than \<
-%% Equals \= Greater than \> Question mark \?
-%% Commercial at \@ Left bracket \[ Backslash \\
-%% Right bracket \] Circumflex \^ Underscore \_
-%% Grave accent \` Left brace \{ Vertical bar \|
-%% Right brace \} Tilde \~}
-%
-% \setcounter{StandardModuleDepth}{1}
-%
-% \StopEventually{}
-% \MakeShortVerb{\|}
-%
-% \iffalse
-% \changes{v1.01}{1996/06/26}{first edition for LaTeX2e}
-% \changes{v1.02}{1998/10/31}{revised edition for LaTeX2e}
-% \changes{v2.00}{1998/12/25}{enhanced edition for LaTeX2e}
-% \fi
-%
-% \iffalse
-%<*driver>
-\NeedsTeXFormat{pLaTeX2e}
-% \fi
-\ProvidesFile{aliphat.dtx}[1998/12/25 v2.00 XyMTeX{} package file]
-% \iffalse
-\documentclass{ltxdoc}
-\GetFileInfo{aliphat.dtx}
-%
-% %%XyMTeX Logo: Definition 2%%%
-\def\UPSILON{\char'7}
-\def\XyM{X\kern-.30em\smash{%
-\raise.50ex\hbox{\UPSILON}}\kern-.30em{M}}
-\def\XyMTeX{\XyM\kern-.1em\TeX}
-% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\title{Aliphatic compounds by {\sffamily aliphat.sty}
-(\fileversion) of \XyMTeX{}}
-\author{Shinsaku Fujita \\
-Department of Chemistry and Materials Technology, \\
-Kyoto Institute of Technology, \\
-Matsugasaki, Sakyoku, Kyoto, 606 Japan
-% % (old address)
-% % Ashigara Research Laboratories,
-% % Fuji Photo Film Co., Ltd., \\
-% % Minami-Ashigara, Kanagawa, 250-01 Japan
-}
-\date{\filedate}
-%
-\begin{document}
- \maketitle
- \DocInput{aliphat.dtx}
-\end{document}
-%</driver>
-% \fi
-%
-% \section{Introduction}\label{aliphat:intro}
-%
-% \subsection{Options for {\sffamily docstrip}}
-%
-% \DeleteShortVerb{\|}
-% \begin{center}
-% \begin{tabular}{|l|l|}
-% \hline
-% \emph{option} & \emph{function}\\ \hline
-% aliphat & aliphat.sty \\
-% driver & driver for this dtx file \\
-% \hline
-% \end{tabular}
-% \end{center}
-% \MakeShortVerb{\|}
-%
-% \subsection{Version Information}
-%
-% \begin{macrocode}
-%<*aliphat>
-\typeout{XyMTeX for Drawing Chemical Structural Formulas. Version 2.00}
-\typeout{ -- Released December 25, 1998 by Shinsaku Fujita}
-% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\j@urnalname{aliphat}
-\def\versi@ndate{December 25, 1998}
-\def\versi@nno{ver2.00}
-\def\copyrighth@lder{SF} % Shinsaku Fujita
-% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\typeout{XyMTeX Macro File `\j@urnalname' (\versi@nno) <\versi@ndate>%
-\space[\copyrighth@lder]}
-% \end{macrocode}
-%
-% \section{List of commands for aliphat.sty}
-%
-% \begin{verbatim}
-% *********************************
-% * aliphat.sty: list of commands *
-% *********************************
-%
-% <Conventions for bond-setting>
-%
-% \Northbond
-% \Eastbond
-% \Southbond
-% \Westbond
-% \NEBond
-% \NEbond
-% \SEBond
-% \SEbond
-% \NWBond
-% \NWbond
-% \SWBond
-% \SWbond
-%
-% \NEBOND
-% \NWBOND
-% \SEBOND
-% \SWBOND
-%
-% <Macros for position adjustment>
-% \ylrtrigonalposition
-% \ylRtrigonalposition
-% \ylltrigonalposition
-% \ylLtrigonalposition
-% \ylutrigonalposition
-% \ylUtrigonalposition
-% \yldtrigonalposition
-% \ylDtrigonalposition
-%
-% \yltethedralposition
-% \ylsquareposition
-%
-% \ylethylenepositiona
-% \ylethylenepositionb
-% \ylethylenevpositiona
-% \ylethylenevpositionb
-%
-% <Macros for tetravalent atoms>
-%
-% \tetrahedral \@tetrahedral
-% \square \@square
-%
-% <Macros for trivalent atoms>
-%
-% \rtrigonal \@rtrigonal
-% \Rtrigonal \@Rtrigonal
-% \ltrigonal \@ltrigonal
-% \Ltrigonal \@Ltrigonal
-% \utrigonal \@utrigonal
-% \Utrigonal \@Utrigonal
-% \dtrigonal \@dtrigonal
-% \Dtrigonal \@Dtrigonal
-%
-% <Macros for two-carbon compounds>
-%
-% \ethylene \@ethylene
-% \Ethylene \@Ethylene
-% \ethylenev \@ethylenev
-% \Ethylenev \@Ethylenev
-%
-% <Macros for stereo-projection>
-%
-% \tetrastereo \@tetrastereo
-% \dtetrastereo \@dtetrastereo
-% \ethanestereo \@ethanestereo
-% \end{verbatim}
-%
-% \section{Input of basic macros}
-%
-% To assure the compatibility to \LaTeX{}2.09 (the native mode),
-% the commands added by \LaTeXe{} have not been used in the resulting sty
-% files ({\sf aliphat.sty} for the present case). Hence, the combination
-% of |\input| and |\@ifundefined| is used to crossload sty
-% files ({\sf chemstr.sty} for the present case) in place of the
-% |\RequirePackage| command of \LaTeXe{}.
-%
-% \begin{macrocode}
-% *************************
-% * input of basic macros *
-% *************************
-\@ifundefined{setsixringv}{\input chemstr.sty\relax}{}
-\unitlength=0.1pt
-% \end{macrocode}
-%
-% \section{Macros for bond-setting}
-%
-% Single, double and triple bonds of aliphatic compounds are represented
-% by horizontal, vertical or sloped lines,
-% which can be drawn by such commands as |\Eastbond|,
-% |\Northbond| and |\SEbond|.
-% \changes{v1.02}{1998/10/20}{Adding \cs{NEBOND}, \cs{SEBOND}, \cs{NWBOND},
-% and \cs{SWBOND}}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\Northbond}
-% \begin{macrocode}
-% ********************************
-% * Conventions for bond-setting *
-% ********************************
-\def\Northbond{%
-\yl@xdiff=40
-\yl@ydiff=-15
-\begin{picture}(100,200)(0,0)
- \if\@tmpb D\relax%
- \multiput(-13,52)(26,0){2}{\line(0,1){100}}% double bond up
- \else\if\@tmpb T\relax%
- \multiput(-20,52)(20,0){3}{\line(0,1){100}}% triple bond up
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(-8,52){\line(0,1){100}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(0,52){\line(0,1){100}}}%
- {{\thicklines \dottedline{20}(0,52)(0,152)}}%
- \else\if\@tmpb S%
- \put(0,52){\line(0,1){100}}%
- \else \put(0,52){\line(0,1){100}}%
- \fi\fi\fi\fi\fi%
- \putlratom{-40}{167}{\@memberb}%==1 upper substituent
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\Eastbond}
-% \begin{macrocode}
-\def\Eastbond{%
-\yl@xdiff=-10
-\yl@ydiff=33
-\begin{picture}(200,200)(0,0)
- \if\@tmpb D\relax%
- \multiput(50,-13)(0,26){2}{\line(1,0){140}}% double bond right
- \else\if\@tmpb T\relax%
- \multiput(50,-20)(0,20){3}{\line(1,0){140}}% double bond right
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(50,0){\line(1,0){140}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(50,0){\line(1,0){140}}}%
- {{\thicklines \dottedline{20}(50,0)(203,0)}}%
- \else\if\@tmpb S%
- \put(50,0){\line(1,0){140}}%
- \else \put(50,0){\line(1,0){140}}%
- \fi\fi\fi\fi\fi%
- \putratom{200}{-33}{\@memberb}%==2 right substituent
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\Southbond}
-% \begin{macrocode}
-\def\Southbond{%
-\yl@xdiff=40
-\yl@ydiff=95
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \multiput(-13,-48)(26,0){2}{\line(0,-1){100}}% double bond down
- \else\if\@tmpb T\relax%
- \multiput(-20,-48)(20,0){3}{\line(0,-1){100}}% double bond down
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(-8,-48){\line(0,-1){100}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(0,-48){\line(0,-1){100}}}%
- {{\thicklines \dottedline{20}(0,-48)(0,-148)}}%
- \else\if\@tmpb S%
- \put(0,-48){\line(0,-1){100}}%
- \else \put(0,-48){\line(0,-1){100}}%
- \fi\fi\fi\fi\fi%
- \putlratom{-40}{-243}{\@memberb}%==3 down substituent
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\Westbond}
-% \begin{macrocode}
-\def\Westbond{%
-\yl@xdiff=10
-\yl@ydiff=33
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \multiput(-190,-13)(0,26){2}{\line(1,0){140}}% double bond left
- \else\if\@tmpb T\relax%
- \multiput(-190,-20)(0,20){3}{\line(1,0){140}}% double bond left
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(-190,0){\line(1,0){140}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(-190,0){\line(1,0){140}}}%
- {{\thicklines \dottedline{20}(-190,0)(-40,0)}}%
- \else\if\@tmpb S%
- \put(-190,0){\line(1,0){140}}%
- \else \put(-190,0){\line(1,0){140}}%
- \fi\fi\fi\fi\fi%
- \putlatom{-200}{-33}{\@memberb}%==4 left substituent
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\NEBond}
-% \begin{macrocode}
-\def\NEBond{%degree 120
-\yl@xdiff=-9
-\yl@ydiff=13
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \put(33,48){\line(5,3){121}}%
- \put(47,26){\line(5,3){121}}%northeast double bond
- \else\if\@tmpb T\relax%
- \put(31,52){\line(5,3){121}}%
- \put(40,37){\line(5,3){121}}%
- \put(49,22){\line(5,3){121}}%northeast triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(40,47){\line(5,3){121}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(40,47){\line(5,3){121}}}%
- {{\thicklines \dottedline{20}(40,47)(161,120)}}%
- \else\if\@tmpb S%
- \put(40,47){\line(5,3){121}}%
- \else \put(40,47){\line(5,3){121}}%
- \fi\fi\fi\fi\fi%
- \putratom{170}{107}{\@memberb}%==2 (northeast substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\NEbond}
-% \begin{macrocode}
-\def\NEbond{%degree 90
-\yl@xdiff=-5
-\yl@ydiff=10
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \put(31,46){\line(1,1){100}}%
- \put(49,28){\line(1,1){100}}%northeast double bond
- \else\if\@tmpb T\relax%
- \put(27,50){\line(1,1){100}}%
- \put(40,37){\line(1,1){100}}%
- \put(53,24){\line(1,1){100}}%northeast triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(40,47){\line(1,1){100}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(40,47){\line(1,1){100}}}%
- {{\thicklines \dottedline{20}(40,47)(140,147)}}%
- \else\if\@tmpb S%
- \put(40,47){\line(1,1){100}}%
- \else \put(40,47){\line(1,1){100}}%
- \fi\fi\fi\fi\fi%
- \putratom{145}{137}{\@memberb}%==2 (northeast substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\SEBond}
-% \begin{macrocode}
-\def\SEBond{%degree 120
-\yl@xdiff=-9
-\yl@ydiff=67
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \put(33,-48){\line(5,-3){121}}%
- \put(47,-26){\line(5,-3){121}}%southeast double bond
- \else\if\@tmpb T\relax%
- \put(31,-52){\line(5,-3){121}}%
- \put(40,-37){\line(5,-3){121}}%
- \put(49,-22){\line(5,-3){121}}%southeast triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(40,-47){\line(5,-3){121}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(40,-47){\line(5,-3){121}}}%
- {{\thicklines \dottedline{20}(40,-47)(161,-120)}}%
- \else\if\@tmpb S%
- \put(40,-47){\line(5,-3){121}}%
- \else \put(40,-47){\line(5,-3){121}}%
- \fi\fi\fi\fi\fi%
- \putratom{170}{-187}{\@memberb}%==2 (southeast substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\SEbond}
-% \begin{macrocode}
-\def\SEbond{%degree 90
-\yl@xdiff=-5
-\yl@ydiff=56
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \put(31,-46){\line(1,-1){100}}%
- \put(49,-28){\line(1,-1){100}}%southeast double bond
- \else\if\@tmpb T\relax%
- \put(27,-50){\line(1,-1){100}}%
- \put(40,-37){\line(1,-1){100}}%
- \put(53,-24){\line(1,-1){100}}%southeast triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(53,-47){\line(1,-1){100}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(40,-47){\line(1,-1){100}}}%
- {{\thicklines \dottedline{20}(40,-47)(140,-147)}}%
- \else\if\@tmpb S%
- \put(40,-47){\line(1,-1){100}}%
- \else \put(40,-47){\line(1,-1){100}}%
- \fi\fi\fi\fi\fi%
- \putratom{145}{-203}{\@memberb}%==3 (southeast substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\NWBbond}
-% \begin{macrocode}
-\def\NWBond{%
-\begin{picture}(100,300)(0,0)
-\yl@xdiff=9
-\yl@ydiff=13
- \if\@tmpb D\relax%
- \put(-59,48){\line(-5,3){121}}%
- \put(-73,26){\line(-5,3){121}}%northwest double bond
- \else\if\@tmpb T\relax%
- \put(-57,52){\line(-5,3){121}}%
- \put(-66,37){\line(-5,3){121}}%
- \put(-75,22){\line(-5,3){121}}%northwest triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(-66,47){\line(-5,3){121}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(-66,47){\line(-5,3){121}}}%
- {{\thicklines \dottedline{20}(-66,47)(-187,120)}}%
- \else\if\@tmpb S%
- \put(-66,47){\line(-5,3){121}}%
- \else \put(-66,47){\line(-5,3){121}}%
- \fi\fi\fi\fi\fi%
- \putlatom{-196}{107}{\@memberb}%==2 (northwest substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\NWbond}
-% \begin{macrocode}
-\def\NWbond{%
-\begin{picture}(100,300)(0,0)
-\yl@xdiff=13
-\yl@ydiff=10
- \if\@tmpb D\relax%
- \put(-41,46){\line(-1,1){100}}%
- \put(-59,28){\line(-1,1){100}}%northwest double bond
- \else\if\@tmpb T\relax%
- \put(-37,50){\line(-1,1){100}}%
- \put(-50,37){\line(-1,1){100}}%
- \put(-63,24){\line(-1,1){100}}%northwest triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(-50,47){\line(-1,1){100}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(-50,47){\line(-1,1){100}}}%
- {{\thicklines \dottedline{20}(-50,47)(-137,147)}}%
- \else\if\@tmpb S%
- \put(-50,47){\line(-1,1){100}}%
- \else \put(-50,47){\line(-1,1){100}}%
- \fi\fi\fi\fi\fi%
- \putlatom{-163}{137}{\@memberb}%==2 (northwest substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\SWBond}
-% \begin{macrocode}
-\def\SWBond{%
-\yl@xdiff=9
-\yl@ydiff=67
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \put(-59,-48){\line(-5,-3){121}}%
- \put(-73,-26){\line(-5,-3){121}}%southwest double bond
- \else\if\@tmpb T\relax%
- \put(-57,-52){\line(-5,-3){121}}%
- \put(-66,-37){\line(-5,-3){121}}%
- \put(-75,-22){\line(-5,-3){121}}%southwest triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(-66,-47){\line(-5,-3){121}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(-66,-47){\line(-5,-3){121}}}%
- {{\thicklines \dottedline{20}(-66,-47)(-187,-120)}}%
- \else\if\@tmpb S%
- \put(-66,-47){\line(-5,-3){121}}%
- \else \put(-66,-47){\line(-5,-3){121}}%
- \fi\fi\fi\fi\fi%
- \putlatom{-196}{-187}{\@memberb}%==2 (southwest substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\SWbond}
-% \begin{macrocode}
-\def\SWbond{%
-\yl@xdiff=13
-\yl@ydiff=56
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \put(-41,-46){\line(-1,-1){100}}%
- \put(-59,-28){\line(-1,-1){100}}%southwest double bond
- \else\if\@tmpb T\relax%
- \put(-37,-50){\line(-1,-1){100}}%
- \put(-50,-37){\line(-1,-1){100}}%
- \put(-63,-24){\line(-1,-1){100}}%southwest triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(-50,-47){\line(-1,-1){100}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(-50,-47){\line(-1,-1){100}}}%
- {{\thicklines \dottedline{20}(-50,-47)(-137,-147)}}%
- \else\if\@tmpb S%
- \put(-50,-47){\line(-1,-1){100}}%
- \else \put(-50,-47){\line(-1,-1){100}}%
- \fi\fi\fi\fi\fi%
- \putlatom{-163}{-203}{\@memberb}%==3 (southwest substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{New command: \cs{NEBOND}}
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\NEBOND}
-% \begin{macrocode}
-\def\NEBOND{%degree 120
-\yl@xdiff=-1
-\yl@ydiff=-10
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \put(48,33){\line(3,5){72}}%
- \put(26,47){\line(3,5){72}}%northeast double bond
- \else\if\@tmpb T\relax%
- \put(52,31){\line(3,5){72}}%
- \put(37,40){\line(3,5){72}}%
- \put(22,49){\line(3,5){72}}%northeast triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(40,47){\line(3,5){72}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(47,40){\line(3,5){72}}}%
- {{\thicklines \dottedline{20}(47,40)(120,161)}}%
- \else\if\@tmpb S%
- \put(47,40){\line(3,5){72}}%
- \else \put(47,40){\line(3,5){72}}%
- \fi\fi\fi\fi\fi%
- \putratom{120}{170}{\@memberb}%==2 (northeast substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{New command: \cs{SEBOND}}
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\SEBOND}
-% \begin{macrocode}
-\def\SEBOND{%degree 120
-\yl@xdiff=-1
-\yl@ydiff=70
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \put(48,-33){\line(3,-5){72}}%
- \put(26,-47){\line(3,-5){72}}%southeast double bond
- \else\if\@tmpb T\relax%
- \put(52,-31){\line(3,-5){72}}%
- \put(37,-40){\line(3,-5){72}}%
- \put(22,-49){\line(3,-5){72}}%southeast triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(47,-40){\line(3,-5){72}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(47,-40){\line(3,-5){72}}}%
- {{\thicklines \dottedline{20}(47,-40)(120,-161)}}%
- \else\if\@tmpb S%
- \put(47,-40){\line(3,-5){72}}%
- \else \put(47,-40){\line(3,-5){72}}%
- \fi\fi\fi\fi\fi%
- \putratom{120}{-230}{\@memberb}%==2 (southeast substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{New command: \cs{NWBOND}}
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\NWBOND}
-% \begin{macrocode}
-\def\NWBOND{%
-\yl@xdiff=1
-\yl@ydiff=-10
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \put(-48,33){\line(-3,5){72}}%
- \put(-26,47){\line(-3,5){72}}%northwest double bond
- \else\if\@tmpb T\relax%
- \put(-52,31){\line(-3,5){72}}%
- \put(-37,40){\line(-3,5){72}}%
- \put(-22,49){\line(-3,5){72}}%northwest triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(-40,47){\line(-3,5){72}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(-47,40){\line(-3,5){72}}}%
- {{\thicklines \dottedline{20}(-47,40)(-120,161)}}%
- \else\if\@tmpb S%
- \put(-47,40){\line(-3,5){72}}%
- \else \put(-47,40){\line(-3,5){72}}%
- \fi\fi\fi\fi\fi%
- \putlatom{-120}{170}{\@memberb}%==2 (northwest substituent)
-%\yl@xdiff=11
-%\yl@ydiff=-14
-% \if\@tmpb D\relax%
-% \put(-48,59){\line(-3,5){72}}%
-% \put(-26,73){\line(-3,5){72}}%northwest double bond
-% \else\if\@tmpb T\relax%
-% \put(-52,57){\line(-3,5){72}}%
-% \put(-37,66){\line(-3,5){72}}%
-% \put(-22,75){\line(-3,5){72}}%northwest triple bond
-% \else\if\@tmpb A%(A) alpha
-% {\thicklines\put(-47,66){\line(-3,5){72}}}% single bond (alpha)
-% \else\if\@tmpb B%(B) beta
-% \@ifundefined{dottedline}{\put(-47,66){\line(-3,5){72}}}%
-% {{\thicklines \dottedline{20}(-47,66)(-120,187)}}%
-% \else\if\@tmpb S%
-% \put(-47,66){\line(-3,5){72}}%
-% \else \put(-47,66){\line(-3,5){72}}%
-% \fi\fi\fi\fi\fi%
-% \putlatom{-130}{200}{\@memberb}%==2 (northwest substituent)
-%% \putlatom{-120}{170}{\@memberb}%==2 (northwest substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \changes{v1.02}{1998/10/20}{New command: \cs{SWBOND}}
-% \changes{v1.02}{1998/10/20}{Adding \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\SWBOND}
-% \begin{macrocode}
-\def\SWBOND{%
-\yl@xdiff=1
-\yl@ydiff=70
-\begin{picture}(100,300)(0,0)
- \if\@tmpb D\relax%
- \put(-48,-33){\line(-3,-5){72}}%
- \put(-26,-47){\line(-3,-5){72}}%southwest double bond
- \else\if\@tmpb T\relax%
- \put(-52,-31){\line(-3,-5){72}}%
- \put(-37,-40){\line(-3,-5){72}}%
- \put(-22,-49){\line(-3,-5){72}}%southwest triple bond
- \else\if\@tmpb A%(A) alpha
- {\thicklines\put(-47,-40){\line(-3,-5){72}}}% single bond (alpha)
- \else\if\@tmpb B%(B) beta
- \@ifundefined{dottedline}{\put(-47,-40){\line(-3,-5){72}}}%
- {{\thicklines \dottedline{20}(-47,-40)(-120,-161)}}%
- \else\if\@tmpb S%
- \put(-47,-40){\line(-3,-5){72}}%
- \else \put(-47,-40){\line(-3,-5){72}}%
- \fi\fi\fi\fi\fi%
- \putlatom{-120}{-230}{\@memberb}%==2 (southwest substituent)
-\end{picture}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \section{Tetrahedral unit}
-%
-% The macro |\tetrahedral| typesets a compound of tetravalency.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% ********************
-% * tetrahedral unit *
-% ********************
-%
-% 1
-%
-% |
-% 2 -- 0 -- 4 0 <== the original point
-% |
-%
-% 3
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \tetrahedral[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+} : + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 4
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \tetrahedral{1==Cl;2==F}
-% \tetrahedral{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{yltetrahedralposition},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\tetrahedral}
-% \begin{macro}{\@tetrahedral}
-% \begin{macrocode}
-\def\tetrahedral{\@ifnextchar[{\@tetrahedral[r}{\@tetrahedral[r]}}
-\def\@tetrahedral#1]#2{%
-%\def\tetrahedral{\@ifnextchar[{\@tetrahedral}{\@tetrahedral[]}}
-%\def\@tetrahedral[#1]#2{%
-\@reset@ylsw%
-\yltetrahedralposition{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
- \begin{picture}(600,600)(-300,-300)%
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `tetrahedral' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax {\putratom{47}{50}{\scriptsize\@@tmpb}}\fi}%
-\@forsemicol\member:=#2\do{
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa
-{\putlratom{-40}{-33}{\hbox to.72em{\hss\@memberb\hss}}}%central atom
-\or\put(0,0){\Northbond}%
-\or\put(0,0){\Westbond}%
-\or\put(0,0){\Southbond}%
-\or\put(0,0){\Eastbond}\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro tetrahedral
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The command |\yltetrahedralposition| is used in
-% |\tetrahedral| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{yltetrahedralposition}}
-%
-% \begin{macro}{\yltetrahedralposition}
-% \begin{macrocode}
-\def\yltetrahedralposition#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{0}\gdef\@yli{-52}\global\@ylswtrue%N subst. on 1
- \or \gdef\@ylii{52}\gdef\@yli{0}\global\@ylswtrue%W subst. on 1
- \or \gdef\@ylii{0}\gdef\@yli{52}\global\@ylswtrue%S subst. on 1
- \or \gdef\@ylii{-52}\gdef\@yli{0}\global\@ylswtrue%E subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-
-% \section{Divalenth unit}
-%
-% The command |\divalenth| produces a length-variable divalent unit.
-% \changes{v2.00}{1998/12/14}{New command: \cs{divalenth}}
-%
-% \begin{verbatim}
-% ******************
-% * Divalenth unit *
-% ******************
-%
-%
-%
-% 1 -- (group) -- 2 0 <== the original point
-%
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |GROUP|.
-%
-% \begin{verbatim}
-% \divalenth{GROUP}{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |GROUP| designates a character strings representing
-% a divalent group. The locant number is fixed to be zero.
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 4
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-%
-% \begin{macro}{\divalenth}
-% \begin{macrocode}
-\def\divalenth#1#2{%
-\@reset@ylsw%
-\yldivalenthposition{#1}{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
- \begin{picture}(600,400)(-300,-200)%
- \iforigpt \put(-300,-200){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `tetrahedral' origin: %
- (\the\noshift,\the\noshift) ---> (300,200)}\fi%
-\fi
-{\expandafter\@m@mb@r#1;\relax
- \putratom{-30}{-33}{\@memberb}}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa
-\or\put(0,0){\Westbond}%
-\or\put(\the\@tempcnta,0){\Eastbond}\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro tetrahedral
-% \end{macrocode}
-% \end{macro}
-%
-% The command |\yldivalenthposition| is used in
-% |\tetrahedral| to adjust a substitution position.
-% \changes{v2.00}{1998/12/14}{Newly added command:
-% \cs{yldivalenthposition}}
-%
-% \begin{macro}{\yldivalenthposition}
-% \begin{macrocode}
-\def\yldivalenthposition#1#2{%
-{\expandafter\@m@mb@r#1;\relax
- \setbox0=\hbox{\@memberb}%
- \@tempcnta=\wd0
- \@tempcntb=\unitlength
- \divide\@tempcnta by\@tempcntb
- \global\advance\@tempcnta by-62%
- \@tempcntb=\@tempcnta \global\advance\@tempcntb by50\relax
- }%
-\@@ylswfalse%
-\@forsemicol\member:=#2\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{50}\gdef\@yli{0}\global\@ylswtrue%W subst. on 1
- \or \edef\@ylii{-\the\@tempcntb}\gdef\@yli{0}\global\@ylswtrue%E subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \section{Trigonal unit}
-% \subsection{Right-hand trigonal unit (narrow type)}
-%
-% The macro |\rtrigonal| typesets a compound of trivalency.
-% The following numbering is adopted in this macro.
-% The two right-hand bonds form an angle of 90$^{\circ}$ (narrow type),
-% while the left-hand bond is typeset horizontally.
-%
-% \begin{verbatim}
-% *************************
-% * trigonal unit (right) *
-% *************************
-%
-% 3
-% /
-% /
-% 1 --- 0 90 0 <== the original point
-% `
-% `
-% 2
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \rtrigonal[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+}: + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 3
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \rtrigonal{1==Cl;2==F}
-% \rtrigonal{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-%
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylrtrigonalposition},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\rtrigonal}
-% \begin{macro}{\@rtrigonal}
-% \begin{macrocode}
-\def\rtrigonal{\@ifnextchar[{\@rtrigonal[r}{\@rtrigonal[r]}}
-\def\@rtrigonal#1]#2{%
-\@reset@ylsw%
-\ylrtrigonalposition{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
-\begin{picture}(600,600)(-300,-300)%
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `rtrigonal' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax {\putratom{-27}{50}{\scriptsize\@@tmpb}}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa {\putlratom{-40}{-33}{\@memberb}}%central atom
-\or\put(0,0){\Westbond}%
-\or\put(0,0){\SEbond}%
-\or\put(0,0){\NEbond}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro rtrigonal
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The command |\ylrtrigonalposition| is used in
-% |\rtrigonal| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{ylrtrigonalposition}}
-%
-% \begin{macro}{\ylrtrigonalposition}
-% \begin{macrocode}
-\def\ylrtrigonalposition#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{52}\gdef\@yli{0}\global\@ylswtrue% W subst. on 1
- \or \gdef\@ylii{-40}\gdef\@yli{47}\global\@ylswtrue% SE subst. on 1
- \or \gdef\@ylii{-40}\gdef\@yli{-47}\global\@ylswtrue% NE subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \subsection{Right-hand trigonal unit (broad type)}
-%
-% The macro |\Rtrigonal| typesets a compound of trivalency.
-% The following numbering is adopted in this macro.
-% The two right-hand bonds form an angle of 120$^{\circ}$ (broad type),
-% while the left-hand bond is typeset horizontally.
-% \changes{v1.02}{1998/10/20}{New command: \cs{Rtrigonal}}
-%
-% \begin{verbatim}
-% *************************
-% * trigonal unit (right) *
-% *************************
-%
-% 3
-% /
-% /
-% 1 --- 0 120 0 <== the original point
-% `
-% `
-% 2
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \rtrigonal[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+}: + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 3
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \rtrigonal{1==Cl;2==F}
-% \rtrigonal{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-%
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylRtrigonalposition},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\Rtrigonal}
-% \begin{macro}{\@Rtrigonal}
-% \begin{macrocode}
-\def\Rtrigonal{\@ifnextchar[{\@Rtrigonal[r}{\@Rtrigonal[r]}}
-\def\@Rtrigonal#1]#2{%
-\@reset@ylsw%
-\ylRtrigonalposition{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
-\begin{picture}(600,600)(-300,-300)%
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `Rtrigonal' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax {\putratom{-27}{50}{\scriptsize\@@tmpb}}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa {\putlratom{-40}{-33}{\@memberb}}%central atom
-\or\put(0,0){\Westbond}%
-\or\put(0,0){\SEBOND}%
-\or\put(0,0){\NEBOND}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro Rtrigonal
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The command |\ylRtrigonalposition| is used in
-% |\Rtrigonal| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{ylRtrigonalposition}}
-%
-% \begin{macro}{\ylRtrigonalposition}
-% \begin{macrocode}
-\def\ylRtrigonalposition#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{52}\gdef\@yli{0}\global\@ylswtrue% W subst. on 1
- \or \gdef\@ylii{-47}\gdef\@yli{40}\global\@ylswtrue% SE subst. on 1
- \or \gdef\@ylii{-47}\gdef\@yli{-40}\global\@ylswtrue% NE subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \subsection{Left-hand trigonal unit (narrow type)}
-%
-% The macro |\ltrigonal| typesets a compound of trivalency.
-% The following numbering is adopted in this macro.
-% The two left-hand bonds form an angle of 90$^{\circ}$ (narrow type),
-% while the right-hand bond is typeset horizontally.
-%
-% \begin{verbatim}
-% ************************
-% * trigonal unit (left) *
-% ************************
-%
-% 2
-% `
-% `
-% 90 0 --- 1 0 <== the original point
-% /
-% /
-% 3
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \ltrigonal[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+} : + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 3
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \ltrigonal{1==Cl;2==F}
-% \ltrigonal{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylltrigonalposition},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\ltrigonal}
-% \begin{macro}{\@ltrigonal}
-% \begin{macrocode}
-\def\ltrigonal{\@ifnextchar[{\@ltrigonal[r}{\@ltrigonal[r]}}
-\def\@ltrigonal#1]#2{%
-\@reset@ylsw%
-\ylltrigonalposition{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
- \begin{picture}(600,600)(-300,-300)%
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `ltrigonal' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax {\putratom{-27}{50}{\scriptsize\@@tmpb}}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa
-{\putlratom{-40}{-33}{\@memberb}}%central atom
-\or\put(0,0){\Eastbond}%
-\or\put(0,0){\NWbond}%
-\or\put(0,0){\SWbond}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro ltrigonal
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The command |\ylltrigonalposition| is used in
-% |\ltrigonal| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{ylltrigonalposition}}
-%
-% \begin{macro}{\ylltrigonalposition}
-% \begin{macrocode}
-\def\ylltrigonalposition#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{-52}\gdef\@yli{0}\global\@ylswtrue% W subst. on 1
- \or \gdef\@ylii{50}\gdef\@yli{-47}\global\@ylswtrue% NW subst. on 1
- \or \gdef\@ylii{50}\gdef\@yli{47}\global\@ylswtrue% SW subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \subsection{Left-hand trigonal unit (broad type)}
-%
-% The macro |\Ltrigonal| typesets a compound of trivalency.
-% The following numbering is adopted in this macro.
-% The two left-hand bonds form an angle of 120$^{\circ}$ (broad type),
-% while the right-hand bond is typeset horizontally.
-% \changes{v1.02}{1998/10/20}{New command: \cs{Ltrigonal}}
-%
-% \begin{verbatim}
-% ************************
-% * trigonal unit (left) *
-% ************************
-%
-% 2
-% `
-% `
-% 120 0 --- 1 0 <== the original point
-% /
-% /
-% 3
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \ltrigonal[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+} : + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 3
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \Ltrigonal{1==Cl;2==F}
-% \Ltrigonal{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylLtrigonalposition},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\Ltrigonal}
-% \begin{macro}{\@Ltrigonal}
-% \begin{macrocode}
-\def\Ltrigonal{\@ifnextchar[{\@Ltrigonal[r}{\@Ltrigonal[r]}}
-\def\@Ltrigonal#1]#2{%
-\@reset@ylsw%
-\ylLtrigonalposition{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
- \begin{picture}(600,600)(-300,-300)%
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `Ltrigonal' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax {\putratom{-27}{50}{\scriptsize\@@tmpb}}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa
-{\putlratom{-40}{-33}{\@memberb}}%central atom
-\or\put(0,0){\Eastbond}%
-\or\put(0,0){\NWBOND}%
-\or\put(0,0){\SWBOND}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro Ltrigonal
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The command |\ylLtrigonalposition| is used in
-% |\Ltrigonal| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{ylLtrigonalposition}}
-%
-% \begin{macro}{\ylLtrigonalposition}
-% \begin{macrocode}
-\def\ylLtrigonalposition#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{-52}\gdef\@yli{0}\global\@ylswtrue% W subst. on 1
- \or \gdef\@ylii{47}\gdef\@yli{-40}\global\@ylswtrue% NWB subst. on 1
-% \or \gdef\@ylii{47}\gdef\@yli{-66}\global\@ylswtrue% NWB subst. on 1
- \or \gdef\@ylii{47}\gdef\@yli{40}\global\@ylswtrue% SWB subst. on 1
-% \or \gdef\@ylii{47}\gdef\@yli{66}\global\@ylswtrue% SWB subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \subsection{Upward trigonal unit (narrow type)}
-%
-% The macro |\utrigonal| typesets a compound of trivalency.
-% The two upward bonds form an angle of 90$^{\circ}$ (narrow type),
-% while the downward bond is typeset vertically.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% **********************
-% * trigonal unit (up) *
-% **********************
-%
-% The following numbering is adopted in this macro.
-%
-% 3 . 2
-% ` 90 /
-% ` /
-% 0 0 <== the original point
-% |
-% |
-% 1
-%
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \utrigonal[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+}: + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 3
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \utrigonal{1==Cl;2==F}
-% \utrigonal{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylutrigonalposition},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\utrigonal}
-% \begin{macro}{\@utrigonal}
-% \begin{macrocode}
-\def\utrigonal{\@ifnextchar[{\@utrigonal[r}{\@utrigonal[r]}}
-\def\@utrigonal#1]#2{%
-\@reset@ylsw%
-\ylutrigonalposition{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
- \begin{picture}(600,600)(-300,-300)%
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `utrigonal' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax {\putratom{-27}{50}{\scriptsize\@@tmpb}}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa
-{\putlratom{-40}{-33}{\@memberb}}%central atom
-\or\put(0,0){\Southbond}%
-\or\put(0,0){\NEbond}%
-\or\put(0,0){\NWbond}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro utrigonal
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The command |\ylutrigonalposition| is used in
-% |\utrigonal| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{ylutrigonalposition}}
-%
-% \begin{macro}{\ylutrigonalposition}
-% \begin{macrocode}
-\def\ylutrigonalposition#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{0}\gdef\@yli{52}\global\@ylswtrue%S subst. on 1
- \or \gdef\@ylii{-40}\gdef\@yli{-47}\global\@ylswtrue% NE subst. on 1
- \or \gdef\@ylii{50}\gdef\@yli{-47}\global\@ylswtrue% NW subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \subsection{Upward trigonal unit (broad type)}
-%
-% The macro |\Utrigonal| typesets a compound of trivalency.
-% The two upward bonds form an angle of 120$^{\circ}$ (broad type),
-% while the downward bond is typeset vertically.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% **********************
-% * trigonal unit (up) *
-% **********************
-%
-% 3 2
-% ` 120 /
-% ` /
-% 0 0 <== the original point
-% |
-% |
-% 1
-%
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \Utrigonal[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+}: + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 3
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \Utrigonal{1==Cl;2==F}
-% \Utrigonal{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylutrigonalposition},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\Utrigonal}
-% \begin{macro}{\@Utrigonal}
-% \begin{macrocode}
-\def\Utrigonal{\@ifnextchar[{\@Utrigonal[r}{\@Utrigonal[r]}}
-\def\@Utrigonal#1]#2{%
-\@reset@ylsw%
-\ylUtrigonalposition{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
- \begin{picture}(600,600)(-300,-300)%
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `Utrigonal' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax {\putratom{-27}{50}{\scriptsize\@@tmpb}}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa
-{\putlratom{-40}{-33}{\@memberb}}%central atom
-\or\put(0,0){\Southbond}%
-\or\put(0,0){\NEBond}%
-\or\put(0,0){\NWBond}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro Utrigonal
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The command |\ylUtrigonalposition| is used in
-% |\Utrigonal| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{ylUtrigonalposition}}
-%
-% \begin{macro}{\ylUtrigonalposition}
-% \begin{macrocode}
-\def\ylUtrigonalposition#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{0}\gdef\@yli{52}\global\@ylswtrue%S subst. on 1
- \or \gdef\@ylii{-40}\gdef\@yli{-47}\global\@ylswtrue% NEB subst. on 1
- \or \gdef\@ylii{66}\gdef\@yli{-47}\global\@ylswtrue% NWB subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \subsection{Downward trigonal unit (narrow type)}
-%
-% The macro |\dtrigonal| typesets a compound of trivalency.
-% The upward bond is typeset vertically.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% ************************
-% * trigonal unit (down) *
-% ************************
-%
-% The following numbering is adopted in this macro.
-%
-% 1
-% |
-% |
-% 0 0 <== the original point
-% / `
-% / 90 `
-% 2 3
-%
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \dtrigonal[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+} : + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 3
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \dtrigonal{1==Cl;2==F}
-% \dtrigonal{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{yldtrigonalposition},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\dtrigonal}
-% \begin{macro}{\@dtrigonal}
-% \begin{macrocode}
-\def\dtrigonal{\@ifnextchar[{\@dtrigonal[r}{\@dtrigonal[r]}}
-\def\@dtrigonal#1]#2{%
-\@reset@ylsw%
-\yldtrigonalposition{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
- \begin{picture}(600,600)(-300,-300)
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `dtrigonal' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax {\putratom{37}{50}{\scriptsize\@@tmpb}}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa
-{\putlratom{-40}{-33}{\@memberb}}%central atom
-\or\put(0,0){\Northbond}%
-\or\put(0,0){\SEbond}%
-\or\put(0,0){\SWbond}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro dtrigonal
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The command |\yldtrigonalposition| is used in
-% |\dtrigonal| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{yldtrigonalposition}}
-%
-% \begin{macro}{\yldtrigonalposition}
-% \begin{macrocode}
-\def\yldtrigonalposition#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{0}\gdef\@yli{-52}\global\@ylswtrue%N subst. on 1
- \or \gdef\@ylii{-40}\gdef\@yli{47}\global\@ylswtrue% SE subst. on 1
- \or \gdef\@ylii{50}\gdef\@yli{47}\global\@ylswtrue% SW subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \subsection{Downward trigonal unit (broad type)}
-%
-% The macro |\Dtrigonal| typesets a compound of trivalency.
-% The upward bond is typeset vertically.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% ************************
-% * trigonal unit (down) *
-% ************************
-%
-% The following numbering is adopted in this macro.
-%
-% 1
-% |
-% |
-% 0 0 <== the original point
-% / `
-% / 120 `
-% 2 3
-%
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \Dtrigonal[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+}: + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 3
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \Dtrigonal{1==Cl;2==F}
-% \Dtrigonal{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylDtrigonalposition},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\Dtrigonal}
-% \begin{macro}{\@Dtrigonal}
-% \begin{macrocode}
-\def\Dtrigonal{\@ifnextchar[{\@Dtrigonal[r}{\@Dtrigonal[r]}}
-\def\@Dtrigonal#1]#2{%
-\@reset@ylsw%
-\ylDtrigonalposition{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
- \begin{picture}(600,600)(-300,-300)
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `Dtrigonal' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax {\putratom{37}{50}{\scriptsize\@@tmpb}}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa
-{\putlratom{-40}{-33}{\@memberb}}%central atom
-\or\put(0,0){\Northbond}%
-\or\put(0,0){\SEBond}%
-\or\put(0,0){\SWBond}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro Dtrigonal
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The command |\ylDtrigonalposition| is used in
-% |\Dtrigonal| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{ylDtrigonalposition}}
-%
-% \begin{macro}{\ylDtrigonalposition}
-% \begin{macrocode}
-\def\ylDtrigonalposition#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{0}\gdef\@yli{-52}\global\@ylswtrue%N subst. on 1
- \or \gdef\@ylii{-40}\gdef\@yli{47}\global\@ylswtrue% SEB subst. on 1
- \or \gdef\@ylii{66}\gdef\@yli{47}\global\@ylswtrue% SWB subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \section{Ethylene derivative}
-% \subsection{Horizontal ethylene unit (narrow type)}
-%
-% The macro |\ethylene| typesets ethylene derivatives.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% *****************
-% * ethylene unit *
-% *****************
-%
-% 1 4
-% ` /
-% ` /
-% 90 (1)===(2) 90 (1) <== the original point
-% / `
-% / `
-% 2 3
-% \end{verbatim}
-%
-% \begin{verbatim}
-% \ethylene[BONDLIST]{ATOMLIST}{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |BONDLIST| designates the bond between atom (1) and
-% atom (2) as well as charges on these centeral atoms.
-%
-% \begin{verbatim}
-% BONDLIST: list of inner bonds and charges
-%
-% {n+} : + charge (or another one chararacter) on n-atom
-% d : inner double bond (between (1) and (2))
-% t : inner triple bond (between (1) and (2))
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 4
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-% \end{verbatim}
-%
-% The arugument |ATOMLIST| designates the list of central atoms.
-%
-% \begin{verbatim}
-% ATOMLIST: list of central atoms
-% n : atom for n-position (e.g. 1==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \ethylene{}{1==Cl;2==F}
-% \ethylene{}{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylethylenepositiona},
-% \cs{ylethylenepositionb},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\ethylene}
-% \begin{macro}{\@ethylene}
-% \begin{macrocode}
-\def\ethylene{\@ifnextchar[{\@ethylene}{\@ethylene[]}}
-\def\@ethylene[#1]#2#3{%
-\@reset@ylsw%
-\ylethylenepositiona{#3}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\else
-\ylethylenepositionb{#3}%
-\fi
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{-230}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
-\begin{picture}(800,600)(-300,-300)
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `ethylene' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-{\def\aaa{#1}\ifx\aaa\empty%
- \multiput(42,-13)(0,25){2}{\line(1,0){140}}\fi% double bond
-}%
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 1\relax {\putratom{-27}{60}{\scriptsize\@@tmpb}}%
- \else\if\@@tmpa 2\relax {\putratom{203}{60}{\scriptsize\@@tmpb}}%
- \else\if\@@tmpa d\relax%
- {\multiput(42,-13)(0,25){2}{\line(1,0){140}}}% double bond
- \else\if\@@tmpa t\relax%
- {\multiput(42,-20)(0,20){3}{\line(1,0){140}}}% triple bond right
- \fi\fi\fi\fi}%
-{\def\aaa{#2}%
-\ifx\aaa\empty%
-\putratom{-40}{-33}{C}%central atom
-\putratom{190}{-33}{C}%central atom
-\else%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifcase\@tmpa%
-\or\putratom{-40}{-33}{\@memberb}%central atom
-\or\putratom{190}{-33}{\@memberb}%central atom
-\fi\fi}%end of ifcase
-\fi%
-}%
-\@forsemicol\member:=#3\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa%
-\or\put(0,0){\NWbond}%
-\or\put(0,0){\SWbond}%
-\or\put(230,0){\SEbond}%
-\or\put(230,0){\NEbond}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro ethylene
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\ethyleneh}
-% \begin{macrocode}
-\let\ethyleneh=\ethylene
-% \end{macrocode}
-% \end{macro}
-%
-% The commands |\ylethylenepositiona| and |\ylethylenepositiona|
-% are used in |\ethylene| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{ylethylenepositiona} and \cs{ylethylenepositionb}}
-%
-% \begin{macro}{\ylethylenepositiona}
-% \begin{macro}{\ylethylenepositionb}
-% \begin{macrocode}
-\def\ylethylenepositiona#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{50}\gdef\@yli{-47}\global\@ylswtrue% NW subst. on 1
- \or \gdef\@ylii{50}\gdef\@yli{47}\global\@ylswtrue% SW subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-\def\ylethylenepositionb#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or%omit
- \or%omit
- \or \gdef\@ylii{-40}\gdef\@yli{47}\global\@ylswtrue% SE subst. on 1
- \or \gdef\@ylii{-40}\gdef\@yli{-47}\global\@ylswtrue% NE subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \subsection{Horizontal ethylene unit (broad type)}
-%
-% The macro |\Ethylene| typesets ethylene derivatives.
-% The following numbering is adopted in this macro.
-% \changes{v1.02}{1998/10/20}{New command: \cs{Ethylene}}
-%
-% \begin{verbatim}
-% *****************
-% * ethylene unit *
-% *****************
-%
-% 1 4
-% ` /
-% ` /
-% 120 (1)===(2) 120 (1) <== the original point
-% / `
-% / `
-% 2 3
-% \end{verbatim}
-%
-% \begin{verbatim}
-% \Ethylene[BONDLIST]{ATOMLIST}{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |BONDLIST| designates the bond between atom (1) and
-% atom (2) as well as charges on these centeral atoms.
-%
-% \begin{verbatim}
-% BONDLIST: list of inner bonds and charges
-%
-% {n+} : + charge (or another one chararacter) on n-atom
-% d : inner double bond (between (1) and (2))
-% t : inner triple bond (between (1) and (2))
-% \end{verbatim}
-%
-% The arugument |SUBLIST| designates a set of substitutients.
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 4
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-% \end{verbatim}
-%
-% The arugument |ATOMLIST| designates the list of central atoms.
-%
-% \begin{verbatim}
-% ATOMLIST: list of central atoms
-% n : atom for n-position (e.g. 1==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \Ethylene{}{1==Cl;2==F}
-% \Ethylene{}{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylethylenepositiona},
-% \cs{ylethylenepositionb},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\Ethylene}
-% \begin{macro}{\@Ethylene}
-% \begin{macrocode}
-\def\Ethylene{\@ifnextchar[{\@ethylene}{\@ethylene[]}}
-\def\@ethylene[#1]#2#3{%
-\@reset@ylsw%
-\ylethylenepositiona{#3}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\else
-\ylethylenepositionb{#3}%
-\fi
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{-230}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
-\begin{picture}(800,600)(-300,-300)
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `ethylene' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-{\def\aaa{#1}\ifx\aaa\empty%
- \multiput(42,-13)(0,25){2}{\line(1,0){140}}\fi% double bond
-}%
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 1\relax {\putratom{-27}{60}{\scriptsize\@@tmpb}}%
- \else\if\@@tmpa 2\relax {\putratom{203}{60}{\scriptsize\@@tmpb}}%
- \else\if\@@tmpa d\relax%
- {\multiput(42,-13)(0,25){2}{\line(1,0){140}}}% double bond
- \else\if\@@tmpa t\relax%
- {\multiput(42,-20)(0,20){3}{\line(1,0){140}}}% triple bond right
- \fi\fi\fi\fi}%
-{\def\aaa{#2}%
-\ifx\aaa\empty%
-\putratom{-40}{-33}{C}%central atom
-\putratom{190}{-33}{C}%central atom
-\else%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifcase\@tmpa%
-\or\putratom{-40}{-33}{\@memberb}%central atom
-\or\putratom{190}{-33}{\@memberb}%central atom
-\fi\fi}%end of ifcase
-\fi%
-}%
-\@forsemicol\member:=#3\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa%
-\or\put(0,0){\NWBOND}%
-\or\put(0,0){\SWBOND}%
-\or\put(230,0){\SEBOND}%
-\or\put(230,0){\NEBOND}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro Ethylene
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\Ethyleneh}
-% \begin{macrocode}
-\let\Ethyleneh=\Ethylene
-% \end{macrocode}
-% \end{macro}
-%
-% \subsection{Vertical ethylene unit (narrow type)}
-%
-% The macro |\ethylenev| typesets ethylene derivatives in a
-% vatical manner.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% ****************************
-% * ethylene unit (vertical) *
-% ****************************
-%
-% The following numbering is adopted in this macro.
-%
-% 4 3
-% ` 90 /
-% ` /
-% (2)
-% ||
-% ||
-% (1) <== the original point
-% / `
-% / 90 `
-% 1 2
-%
-% \end{verbatim}
-%
-% \begin{verbatim}
-% \ethylenev[BONDLIST]{ATOMLIST}{SUBSLIST}
-% \end{verbatim}
-%
-% \begin{verbatim}
-% BONDLIST: list of inner bonds and charges
-%
-% {n+} : + charge (or another one chararacter) on n-atom
-% d : inner double bond (between (1) and (2))
-% t : inner triple bond (between (1) and (2))
-% \end{verbatim}
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 4
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-% \end{verbatim}
-%
-% \begin{verbatim}
-% ATOMLIST: list of central atoms
-% n : atom for n-position (e.g. 1==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \ethylenev{1==Cl;2==F}
-% \ethylenev{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylethylenevpositiona},
-% \cs{ylethylenevpositionb},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\ethylenev}
-% \begin{macro}{\@ethylenev}
-% \begin{macrocode}
-\def\ethylenev{\@ifnextchar[{\@ethylenev}{\@ethylenev[]}}
-\def\@ethylenev[#1]#2#3{%
-\@reset@ylsw%
-\ylethylenevpositiona{#3}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\else
-\ylethylenevpositionb{#3}%
-\fi
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{-230}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
-\begin{picture}(600,800)(-300,-300)
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `ethylenev' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\def\aaa{#1}\ifx\aaa\empty%
- \put(-20,47){\line(0,1){140}}% vertical
- \put(6,47){\line(0,1){140}}\fi% double bond
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 1\relax \putratom{37}{0}{\scriptsize\@@tmpb}
- \else\if\@@tmpa 2\relax \putratom{37}{216}{\scriptsize\@@tmpb}
- \else\if\@@tmpa d\relax%
- \put(-13,47){\line(0,1){140}}% vertical
- \put(13,47){\line(0,1){140}}% double bond
- \else\if\@@tmpa t\relax%
- \put(-20,47){\line(0,1){140}}% vertical
- \put(-0,47){\line(0,1){140}}% triple bond
- \put(20,47){\line(0,1){140}}%
- \fi\fi\fi\fi}%
-\def\aaa{#2}%
-\ifx\aaa\empty%
-\putratom{-40}{-33}{C}%central atom
-\putratom{-40}{197}{C}%central atom
-\else%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifcase\@tmpa%
-\or\putratom{-40}{-33}{\@memberb}%central atom
-\or\putratom{-40}{197}{\@memberb}%central atom
-\fi\fi}%end of ifcase
-\fi%
-\@forsemicol\member:=#3\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa%
-\or\put(0,0){\SWbond}%
-\or\put(0,0){\SEbond}%
-\or\put(0,230){\NEbond}%
-\or\put(0,230){\NWbond}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro ethylenev
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The commands |\ylethylenevpositiona| and |\ylethylenevpositiona|
-% are used in |\ethylenev| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command:
-% \cs{ylethylenevpositiona} and \cs{ylethylenevpositionb}}
-%
-% \begin{macro}{\ylethylenepositiona}
-% \begin{macro}{\ylethylenepositionb}
-% \begin{macrocode}
-\def\ylethylenevpositiona#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{50}\gdef\@yli{47}\global\@ylswtrue% SW subst. on 1
- \or \gdef\@ylii{-40}\gdef\@yli{47}\global\@ylswtrue% SE subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-\def\ylethylenevpositionb#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or%omit
- \or%omit
- \or \gdef\@ylii{-40}\gdef\@yli{-47}\global\@ylswtrue% NE subst. on 1
- \or \gdef\@ylii{50}\gdef\@yli{-47}\global\@ylswtrue% NW subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \subsection{Vertical ethylene unit (broad type)}
-%
-% The macro |\Ethylenev| typesets ethylene derivatives in a
-% vatical manner.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% ****************************
-% * ethylene unit (vertical) *
-% ****************************
-%
-% 4 3
-% ` 120 /
-% ` /
-% (2)
-% ||
-% ||
-% (1) <== the original point
-% / `
-% / 120 `
-% 1 2
-% \end{verbatim}
-%
-% \begin{verbatim}
-% \Ethylenev[BONDLIST]{ATOMLIST}{SUBSLIST}
-% \end{verbatim}
-%
-% \begin{verbatim}
-% BONDLIST: list of inner bonds and charges
-%
-% {n+} : + charge (or another one chararacter) on n-atom
-% d : inner double bond (between (1) and (2))
-% t : inner triple bond (between (1) and (2))
-% \end{verbatim}
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 4
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-% \end{verbatim}
-%
-% \begin{verbatim}
-% ATOMLIST: list of central atoms
-% n : atom for n-position (e.g. 1==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \Ethylenev{1==Cl;2==F}
-% \Ethylenev{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylethylenevpositiona},
-% \cs{ylethylenevpositionb},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\Ethylenev}
-% \begin{macro}{\@Ethylenev}
-% \begin{macrocode}
-\def\Ethylenev{\@ifnextchar[{\@Ethylenev}{\@Ethylenev[]}}
-\def\@Ethylenev[#1]#2#3{%
-\@reset@ylsw%
-\ylethylenevpositiona{#3}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\else
-\ylethylenevpositionb{#3}%
-\fi
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{-230}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
-\begin{picture}(600,800)(-300,-300)
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `Ethylenev' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\def\aaa{#1}\ifx\aaa\empty%
- \put(-20,47){\line(0,1){140}}% vertical
- \put(6,47){\line(0,1){140}}\fi% double bond
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 1\relax \putratom{37}{0}{\scriptsize\@@tmpb}
- \else\if\@@tmpa 2\relax \putratom{37}{216}{\scriptsize\@@tmpb}
- \else\if\@@tmpa d\relax%
- \put(-13,47){\line(0,1){140}}% vertical
- \put(13,47){\line(0,1){140}}% double bond
- \else\if\@@tmpa t\relax%
- \put(-20,47){\line(0,1){140}}% vertical
- \put(-0,47){\line(0,1){140}}% triple bond
- \put(20,47){\line(0,1){140}}%
- \fi\fi\fi\fi}%
-\def\aaa{#2}%
-\ifx\aaa\empty%
-\putratom{-40}{-33}{C}%central atom
-\putratom{-40}{197}{C}%central atom
-\else%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifcase\@tmpa%
-\or\putratom{-40}{-33}{\@memberb}%central atom
-\or\putratom{-40}{197}{\@memberb}%central atom
-\fi\fi}%end of ifcase
-\fi%
-\@forsemicol\member:=#3\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa%
-\or\put(0,0){\SWBond}%
-\or\put(0,0){\SEBond}%
-\or\put(0,230){\NEBond}%
-\or\put(0,230){\NWBond}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro Ethylenev
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \section{Square unit}
-%
-% The macro |\square| typesets a compound of tetravalency.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% ***************
-% * square unit *
-% ***************
-%
-% The following numbering is adopted in this macro.
-%
-% 4 1
-% ` /
-% ` /
-% (0) <== the original point
-% / `
-% / `
-% 3 2
-%
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \square[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+}: + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 4
-%
-% nT : triple bond at n-atom
-% nD : double bond at n-atom
-% n or nS : single bond at n-atom
-% nA : alpha single bond at n-atom
-% nB : beta single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \square{0==C;1==Cl;2==F}
-% \square{0==C;1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-% \changes{v1.02}{1998/10/31}{Adding \cs{ylsquareposition},
-% \cs{if@ylsw}, \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii},
-% \cs{yl@xdiff} and \cs{yl@ydiff}}
-%
-% \begin{macro}{\square}
-% \begin{macro}{\@square}
-% \begin{macrocode}
-\def\square{\@ifnextchar[{\@square[r}{\@square[r]}}
-\def\@square#1]#2{%
-\@reset@ylsw%
-\ylsquareposition{#2}%
-\if@ylsw \ifx\@@ylii\empty
-\def\@@ylii{0}\def\@@yli{0}\fi
-\fi
-\if@ylsw
- \yl@shiftii=\@ylii
- \yl@shifti=\@yli
- \advance\yl@shiftii\@@ylii
- \advance\yl@shifti\@@yli
- \advance\yl@shiftii\yl@xdiff
- \advance\yl@shifti\yl@ydiff
- \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
- \reset@yl@xydiff%1999/1/6 by S. Fujita
-\else
- \begin{picture}(600,600)(-300,-300)
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `square' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\fi
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax {\putratom{37}{0}{\scriptsize\@@tmpb}}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifx\@memberb\@yl\else
-\ifcase\@tmpa {\putlratom{-40}{-33}{\@memberb}}%central atom
-\or\put(0,0){\NEbond}%
-\or\put(0,0){\SEbond}%
-\or\put(0,0){\SWbond}%
-\or\put(0,0){\NWbond}%
-\fi%end of ifcase
-\fi\fi}%
-\end{picture}}%end of macro square
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% The commands |\ylsquarepositiona| and |\ylsquarepositiona|
-% are used in |\square| to adjust a substitution position.
-% \changes{v1.02}{1998/10/20}{Newly added command: \cs{ylsquareposition}}
-%
-% \begin{macro}{\ylsquareposition}
-% \begin{macrocode}
-\def\ylsquareposition#1{%
-\@@ylswfalse%%%\@reset@ylsw
-\@forsemicol\member:=#1\do{%
-\if@@ylsw\else
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax
-\expandafter\threech@r\@membera{}{}\relax
-\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
-\if@@ylsw
-\ifcase\@tmpa
- \or \gdef\@ylii{-40}\gdef\@yli{-47}\global\@ylswtrue% NE subst. on 1
- \or \gdef\@ylii{-40}\gdef\@yli{47}\global\@ylswtrue% SE subst. on 1
- \or \gdef\@ylii{50}\gdef\@yli{47}\global\@ylswtrue% SW subst. on 1
- \or \gdef\@ylii{50}\gdef\@yli{-47}\global\@ylswtrue% NW subst. on 1
-\fi%end of ifcase
-\fi\fi\fi}}%
-% \end{macrocode}
-% \end{macro}
-%
-% \section{Ball-stick models}
-% \subsection{Tetrahedral unit of stereo type}
-%
-% The macro |\tetrastereo| typesets a tetrahedral unit in a
-% ball-stick fashion.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% *****************************
-% * tetrahedral unit (stereo) *
-% *****************************
-%
-% The following numbering is adopted in this macro.
-%
-% 1
-%
-% |
-% 2 -- 0 -- 4 0 <== the original point
-% |
-%
-% 3
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \tetrastereo[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+} : + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 4
-%
-% n : single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \tetrastereo{1==Cl;2==F}
-% \tetrastereo{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-%
-% \begin{macro}{\tetrastereo}
-% \begin{macro}{\@tetrastero}
-% \begin{macrocode}
-\def\tetrastereo{\@ifnextchar[{\@tetrastereo[r}{\@tetrastereo[r]}}
-\def\@tetrastereo#1]#2{%
-\begin{picture}(600,600)(-300,-300)
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `tetrastero' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\put(0,0){\circle{200}}%
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax \putratom{87}{90}{\scriptsize\@@tmpb}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifcase\@tmpa \putlratom{-40}{-33}{\@memberb}%central atom
-\or%
- \put(0,100){\line(0,1){70}}% behind
- \putlratom{-30}{180}{\@memberb}% and up
-\or%
- {\thicklines%
- \put(-60,10){\line(-5,2){140}}% in front
- \putlatom{-205}{30}{\@memberb}}% and left
-\or%
- \put(0,-100){\line(0,-1){90}}% behind and
- \putlratom{-30}{-260}{\@memberb}% down
-\or%
- {\thicklines%
- \put(60,10){\line(5,2){140}}% in front
- \putratom{210}{30}{\@memberb}}% and right
-\fi\fi}%end of ifcase
-\end{picture}}%end of macro tetrastereo
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \subsection{Tetrahedral unit of inverse stereo type}
-%
-% The macro |\dtetrastereo| typesets another tetrahedral unit in a
-% ball-stick fashion.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% *****************************
-% * tetrahedral unit (stereo) *
-% *****************************
-%
-% The following numbering is adopted in this macro.
-%
-% 1
-%
-% |
-% 2 -- 0 -- 4 0 <== the original point
-% |
-%
-% 3
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \dtetrastereo[AUXLIST]{SUBSLIST}
-% \end{verbatim}
-%
-% The arugument |AUXLIST| designates an character on the central
-% atom of the formula drawn by this macro. It can be used a plus
-% or minus charge on the center.
-%
-% \begin{verbatim}
-% AUXLIST =
-%
-% {0+} : + charge (or another one chararacter) on the center
-% \end{verbatim}
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 4
-%
-% n : single bond at n-atom
-%
-% for 0 : cetral atom (e.g. 0==C)
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \dtetrastereo{1==Cl;2==F}
-% \dtetrastereo{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-%
-% \begin{macro}{\dtetrastereo}
-% \begin{macro}{\@dtetrastereo}
-% \begin{macrocode}
-\def\dtetrastereo{\@ifnextchar[{\@dtetrastereo[r}{\@dtetrastereo[r]}}
-\def\@dtetrastereo#1]#2{%
-\begin{picture}(600,600)(-300,-300)
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `dtetrastero' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\put(0,0){\circle{200}}%
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 0\relax \putratom{87}{90}{\scriptsize\@@tmpb}\fi}%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifcase\@tmpa \putlratom{-40}{-33}{\@memberb}%central atom
-\or%
- \put(0,100){\line(0,1){70}}% behind
- \putlratom{-30}{180}{\@memberb}% and up
-\or%
- \put(-94,-10){\line(-5,-2){108}}% in back
- \putlatom{-205}{-110}{\@memberb}% and left
-\or%
- {\thicklines%
- \put(0,-50){\line(0,-1){150}}% behind and
- \putlratom{-30}{-260}{\@memberb}}% down
-\or%
- \put(94,-10){\line(5,-2){108}}% in back
- \putratom{210}{-110}{\@memberb}% and right
-\fi\fi}%end of ifcase
-\end{picture}}%end of macro dtetrastereo
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \subsection{Ethane unit of stereo type}
-%
-% The macro |\ethanestereo| typesets an ethane molecule in a
-% ball-stick fashion.
-% The following numbering is adopted in this macro.
-%
-% \begin{verbatim}
-% **************************
-% * ethane unit (vertical) *
-% **************************
-%
-% 5
-% |
-% 6 -- (2) -- 4
-% |
-% |
-% 1 -- (1) -- 3 <== the original point
-% |
-% 2
-% \end{verbatim}
-%
-% This macro has an argument |SUBSLIST| as well as an optional
-% argument |AUXLIST|.
-%
-% \begin{verbatim}
-% \ethanestereo[AUXLIST]{ATOMLIST}{SUBSLIST}
-% \end{verbatim}
-%
-% \begin{verbatim}
-% AUXLIST: list of charges
-%
-% {n+} : + charge (or another one chararacter) on n-atom
-% \end{verbatim}
-%
-% \begin{verbatim}
-% SUBSLIST: list of substituents
-%
-% for n = 1 to 6
-%
-% n : single bond at n-atom
-%
-% \end{verbatim}
-%
-% \begin{verbatim}
-% ATOMLIST: list of central atoms
-%
-% n : atom for n-position (e.g. 1==C)
-%
-% \end{verbatim}
-%
-% \begin{verbatim}
-% e.g.
-%
-% \ethanestereo{1==Cl;2==F}
-% \ethanestereo{1==C;2==C}{1==Cl;4==F;2==CH$_{3}$}
-% \end{verbatim}
-%
-% \begin{macro}{\ethanestereo}
-% \begin{macro}{\@ethanestereo}
-% \begin{macrocode}
-\def\ethanestereo{\@ifnextchar[{\@ethanestereo}{\@ethanestereo[]}}
-\def\@ethanestereo[#1]#2#3{%
-\begin{picture}(600,800)(-300,-300)
- \iforigpt \put(-300,-300){\circle*{50}}%
- \put(-\noshift,-\noshift){\circle{50}}%
- \typeout{command `ethanestereo' origin: %
- (\the\noshift,\the\noshift) ---> (300,300)}\fi%
-\put(0,0){\circle{200}}%
-\put(0,270){\circle{200}}%
-\put(0,100){\line(0,1){70}}% central bond
-\@tfor\member:=#1\do{%
- \expandafter\twoch@@r\member{}{}%
- \if\@@tmpa 1\relax \putratom{87}{90}{\scriptsize\@@tmpb}
- \else\if\@@tmpa 2\relax \putratom{87}{360}{\scriptsize\@@tmpb}
- \fi\fi}%
-\def\aaa{#2}%
-\ifx\aaa\empty\else%
-\@forsemicol\member:=#2\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifcase\@tmpa%
-\or\putratom{-40}{-33}{\@memberb}%central atom
-\or\putratom{-40}{237}{\@memberb}%central atom
-\fi\fi}%end of ifcase
-\fi%
-\@forsemicol\member:=#3\do{%
-\ifx\member\empty\else
-\expandafter\@m@mb@r\member;\relax%
-\expandafter\threech@r\@membera{}{}%
-\ifcase\@tmpa \putlratom{-40}{-33}{\@memberb}%central atom
-\or%
- \put(-94,-10){\line(-5,-2){108}}% in back
- \putlatom{-205}{-110}{\@memberb}% and left
-\or%
- {\thicklines%
- \put(0,-50){\line(0,-1){150}}% behind and
- \putlratom{-30}{-260}{\@memberb}}% down
-\or%
- \put(94,-10){\line(5,-2){108}}% in back
- \putratom{210}{-110}{\@memberb}% and right
-% %%%%%%%%
-\or%
- {\thicklines%
- \put(60,280){\line(5,2){140}}% in front
- \putratom{210}{300}{\@memberb}}% and right
-\or%
- \put(0,370){\line(0,1){70}}% behind
- \putlratom{-30}{450}{\@memberb}% and up
-\or%
- {\thicklines%
- \put(-60,280){\line(-5,2){140}}% in front
- \putlatom{-205}{300}{\@memberb}}% and left
-\fi\fi}%end of ifcase
-\end{picture}}%end of macro ethanestereo
-%</aliphat>
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \Finale
-%
-\endinput
- \ No newline at end of file