diff options
Diffstat (limited to 'macros/latex/contrib/xymtex/base/carom.BAK')
-rw-r--r-- | macros/latex/contrib/xymtex/base/carom.BAK | 4172 |
1 files changed, 4172 insertions, 0 deletions
diff --git a/macros/latex/contrib/xymtex/base/carom.BAK b/macros/latex/contrib/xymtex/base/carom.BAK new file mode 100644 index 0000000000..750eb86b80 --- /dev/null +++ b/macros/latex/contrib/xymtex/base/carom.BAK @@ -0,0 +1,4172 @@ +% \iffalse meta-comment +%% File: carom.dtx +% +% Copyright 1993,1996,1998,2000,2001,2002, 2004 by Shinsaku Fujita +% +% This file is part of XyMTeX system. +% ------------------------------------- +% +% This file is a successor to: +% +% carom.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]. +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% This work has the LPPL maintenance status `maintained'. +% The Current Maintainer of this work is Shinsaku Fujita. +% +% This work consists of the files xymtx-pdf.dtx and xymtx-pdf.ins +% and the derived file xymtx-pdf.sty. +% +% Please report any bugs, comments, suggestions, etc. to: +% Shinsaku Fujita, +% Department of Chemistry and Materials Technology, +% Kyoto Institute of Technology, +% Matsugasaki, Sakyoku, Kyoto, 606, Japan +% +% New address: +% Shinsaku Fujita, +% Department of Chemistry and Materials Technology, +% Kyoto Institute of Technology, \\ +% Matsugasaki, Sakyoku, Kyoto, 606 Japan +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \def\j@urnalname{carom} +% \def\versi@ndate{August 16, 1996} +% \def\versi@nno{ver1.01} +% \def\copyrighth@lder{SF} % Shinsaku Fujita +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \def\j@urnalname{carom} +% \def\versi@ndate{December 01, 1993} +% \def\versi@nno{ver1.00} +% \def\copyrighth@lder{SF} % Shinsaku Fujita +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \def\j@urnalname{carom} +% \def\versi@ndate{August 16, 1996} +% \def\versi@nno{ver1.01} +% \def\copyrighth@lder{SF} % Shinsaku Fujita +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \def\j@urnalname{carom} +% \def\versi@ndate{October 31, 1998} +% \def\versi@nno{ver1.02} +% \def\copyrighth@lder{SF} % Shinsaku Fujita +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \def\j@urnalname{carom} +% \def\versi@ndate{December 25, 1998} +% \def\versi@nno{ver2.00} +% \def\copyrighth@lder{SF} % Shinsaku Fujita +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \def\j@urnalname{carom} +% \def\versi@ndate{June 14, 2000} +% \def\versi@nno{ver2.00a} +% \def\copyrighth@lder{SF} % Shinsaku Fujita +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \def\j@urnalname{carom} +% \def\versi@ndate{June 20, 2001} +% \def\versi@nno{ver2.01} +% \def\copyrighth@lder{SF} % Shinsaku Fujita +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \def\j@urnalname{carom} +% \def\versi@ndate{April 30, 2002} +% \def\versi@nno{ver3.00} +% \def\copyrighth@lder{SF} % Shinsaku Fujita +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \def\j@urnalname{carom} +% \def\versi@ndate{May 30, 2002} +% \def\versi@nno{ver4.00} +% \def\copyrighth@lder{SF} % Shinsaku Fujita +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \def\j@urnalname{carom} +% \def\versi@ndate{August 30, 2004} +% \def\versi@nno{ver4.01} +% \def\copyrighth@lder{SF} % Shinsaku Fujita +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% \fi +% +% \CheckSum{2982} +%% \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/08/16}{first edition for LaTeX2e} +% \changes{v1.02}{1998/10/31}{revised edition for LaTeX2e} +% \changes{v2.00}{1998/12/25}{enhanced edition for LaTeX2e} +% \changes{v2.00a}{2000/06/14}{bug fix} +% \changes{v2.01}{2001/06/30}{Size reduction} +% \changes{v3.00}{2002/04/30}{sfpicture enviromnent etc.} +% \changes{v4.00}{2002/05/30}{PostScript output and ShiftPicEnv} +% \changes{v4.01}{2002/08/30}{Minor additions} +% \changes{v5.00}{2010/10/01}{the LaTeX Project Public License} +% \fi +% +% \iffalse +%<*driver> +\NeedsTeXFormat{pLaTeX2e} +% \fi +\ProvidesFile{carom.dtx}[2010/10/01 v5.00 XyMTeX{} package file] +% \iffalse +\documentclass{ltxdoc} +\GetFileInfo{carom.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{Drawing carbocyclic compounds by {\sffamily carom.sty} +(\fileversion) of \XyMTeX{}} +\author{Shinsaku Fujita \\ +Shonan Institute of Chemoinformatics Mathematical Chemistry, \\ +Kaneko 479-7 Ooimachi, Ashigara-Kami-Gun, +Kanagawa-Ken, 258-0019 Japan +% % (old address) +% %Department of Chemistry and Materials Technology, \\ +% %Kyoto Institute of Technology, \\ +% %Matsugasaki, Sakyoku, Kyoto, 606-8585 Japan +% % (old address) +% % Ashigara Research Laboratories, +% % Fuji Photo Film Co., Ltd., \\ +% % Minami-Ashigara, Kanagawa, 250-01 Japan +} +\date{\filedate} +% +\begin{document} + \maketitle + \DocInput{carom.dtx} +\end{document} +%</driver> +% \fi +% +% \section{Introduction}\label{carom:intro} +% +% \subsection{Options for {\sffamily docstrip}} +% +% \DeleteShortVerb{\|} +% \begin{center} +% \begin{tabular}{|l|l|} +% \hline +% \emph{option} & \emph{function}\\ \hline +% carom & carom.sty \\ +% driver & driver for this dtx file \\ +% \hline +% \end{tabular} +% \end{center} +% \MakeShortVerb{\|} +% +% \subsection{Version Information} +% +% \begin{macrocode} +%<*carom> +\typeout{XyMTeX for Drawing Chemical Structural Formulas. Version 5.00} +\typeout{ -- Released October 01, 2010 by Shinsaku Fujita} +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\j@urnalname{carom} +\def\versi@ndate{October 01, 2010} +\def\versi@nno{ver5.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 carom.sty} +% +% \begin{verbatim} +% ******************************* +% * carom.sty: list of commands * +% ******************************* +% +% <VERTICAL TYPE> +% +% \cyclohexanev \@cyclohexanev +% \bzdrv \@bzdrv +% \decalinev \@decalinev +% \decalinevb \@decalinevb +% \decalinevt \@decalinevt +% \naphdrv \@naphdrv +% \naphdrvb \@naphdrvb +% \naphdrvt \@naphdrvt +% \tetralinev \@tetralinev +% \tetralinevb \@tetralinevb +% \tetralinevt \@tetralinevt +% \hanthracenev \@hanthracenev +% \anthracenev \@anthracenev +% \hphenanthrenev \@hphenanthrenev +% \phenanthrenev \@phenanthrenev +% \steroid \@steroid +% \steroidchain \@steroidchain +% \end{verbatim} +% +% \begin{verbatim} +% <HORIZONTAL TYPE> +% +% \cyclohexaneh \@cyclohexaneh +% \bzdrh \@bzdrh +% \decalineh \@decalineh +% \naphdrh \@naphdrh +% \tetralineh \@tetralineh +% +% \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 carom.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}{} +\@ifundefined{decaheterov}{\input hetarom.sty\relax}{} +\@ifundefined{decaheteroh}{\input hetaromh.sty\relax}{} +\unitlength=0.1pt +% \end{macrocode} +% +% \section{Cyclohexane derivatives} +% \subsection{Vertical cyclohexanes} +% +% The macro |\cyclohexanev| is used for drawing cyclohexane derivatives +% of vertical type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\setsixringv|. +% +% \begin{verbatim} +% *************************** +% * cyclohexane derivatives * +% * (vertical type) * +% *************************** +% The following numbering is adopted in this macro. +% +% 1 +% * +% 6 * * 2 +% | | +% | | +% 5 * * 3 +% * +% 4 <===== the original point +% +% \end{verbatim} +% +% The macro |\cyclohexanev| has an argument |SUBSLIST| as well as an optional +% argument |BONDLIST|. +% \begin{verbatim} +% \cyclohexanev[BONDLIST]{SUBSLIST} +% \end{verbatim} +% +% The |BONDLIST| argument contains one or more +% characters selected form a to f as well as A, each of which indicates +% the presence of an inner (endcyclic) double bond on the corresponding +% position. +% +% \begin{verbatim} +% BONDLIST = +% +% none : cyclohexane +% a : 1,2-double bond +% b : 2,3-double bond +% c : 4,3-double bond +% d : 4,5-double bond +% e : 5,6-double bond +% f : 6,1-double bond +% A : aromatic circle +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% SUBSLIST: list of substituents +% +% for n = 1 to 6 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specifed) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \cyclohexanev{1==Cl;2==F} +% \cyclohexanev[c]{1==Cl;4==F;2==CH$_{3}$} +% \cyclohexanev[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl} +% \end{verbatim} +% +% \begin{macro}{\cyclohexanev} +% \begin{macrocode} +\def\cyclohexanev{\@ifnextchar[{\@cyclohexanev[@}{\@cyclohexanev[@]}} +\def\@cyclohexanev[#1]#2{\sixheterov[#1]{}{#2}} +% \end{macrocode} +% \end{macro} +% +% The following definition has been deleted. +% +% \changes{v1.02}{1998/10/31}{Adding \cs{ylposition}, \cs{@ylsw}, +% \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii}, +% \cs{yl@xdiff} and \cs{yl@ydiff}} +% \changes{v2.00}{1998/11/23}{Adding \cs{set@fusionadd@sixv}} +% \changes{v3.00}{2002/04/30}{\cs{cyclohexanev}: Old definition deleted.} +% +% \subsection{Horizontal cyclohexanes} +% +% The macro |cyclohexaneh| is used for drawing cyclohexane derivatives +% of vertical type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\setsixringh|. +% +% \begin{verbatim} +% *************************** +% * cyclohexane derivatives * +% * (horizontal type) * +% *************************** +% The following numbering is adopted in this macro. +% +% 2 3 +% ----- +% * * +% the original point ===> 1 * * 4 +% (0,0) * * +% ----- +% 6 5 +% \end{verbatim} +% +% The macro |\cyclohexaneh| has an argument |SUBSLIST| as well as an optional +% argument |BONDLIST|. +% +% \begin{verbatim} +% \cyclohexaneh[BONDLIST]{SUBSLIST} +% \end{verbatim} +% +% The |BONDLIST| argument contains one or more +% characters selected form a to f as well as A, each of which indicates +% the presence of an inner (endcyclic) double bond on the corresponding +% position. +% +% \begin{verbatim} +% BONDLIST = +% +% none : cyclohexane +% a : 1,2-double bond +% b : 2,3-double bond +% c : 4,3-double bond +% d : 4,5-double bond +% e : 5,6-double bond +% f : 6,1-double bond +% A : aromatic circle +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% SUBSLIST: list of substituents +% +% for n = 1 to 6 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specifed) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \cyclohexaneh{1==Cl;2==F} +% \cyclohexaneh[c]{1==Cl;4==F;2==CH$_{3}$} +% \cyclohexaneh[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl} +% \end{verbatim} +% +% \changes{v2.00a}{2000/06/14}{bug fix: changed letter [r] to [@] +% in \cs{cycohexaneh} for horizontal cyclohexanes} +% +% \begin{macro}{\cyclohexaneh} +% \begin{macrocode} +\def\cyclohexaneh{\@ifnextchar[{\@cyclohexaneh[@}{\@cyclohexaneh[@]}} +\def\@cyclohexaneh[#1]#2{\sixheteroh[#1]{}{#2}} +% \end{macrocode} +% \end{macro} +% +% The following definition has been deleted. +% +% \changes{v1.02}{1998/10/31}{Adding \cs{ylpositionh}, \cs{if@ylsw}, +% \cs{yl@shifti}, \cs{@ylii}, \cs{yl@shiftii}, \cs{@ylii}, +% \cs{yl@xdiff} and \cs{yl@ydiff}} +% \changes{v2.00}{1998/11/29}{Adding \cs{set@fusionadd@sixv} for +% fused rings} +% \changes{v3.00}{2002/04/30}{\cs{cyclohexaneh}: Old definition deleted.} +% +% \section{Benzene and benzoquinone derivatives} +% \subsection{Vertical type} +% +% The macro |\bzdrv| (|\benzenev|) is used for drawing benzene derivatives +% of vertical type as well as benzoquinone derivatives of +% vertical type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\cyclohexanev| defined above. +% +% The macro |\bzdrv| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \changes{v3.00}{2002/04/30}{\cs{benzenev} added} +% +% \begin{verbatim} +% **************************************** +% * benzene and benzoquinone derivatives * +% * (vertical type) * +% **************************************** +% +% \bzdrv[OPT]{SUBSLIST} +% \benzenev[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one character (r, l or c) for designate +% aromatic bond patterns or two characters (p? or o?) for quinone +% bond patterns. +% +% \begin{verbatim} +% +% OPT: (bond pattern) +% +% none or r : right-handed set of double bonds +% l : left-handed set of double bonds +% c : aromatic circle +% +% p or pa : p-quinone (A) +% pb : p-quinone (B) +% pc : p-quinone (C) +% +% o or oa : o-quinone (A) +% ob : o-quinone (B) +% oc : o-quinone (C) +% od : o-quinone (D) +% oe : o-quinone (E) +% of : o-quinone (F) +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 6 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% \bzdrv{1==Cl;2==F} +% \bzdrv[c]{1==Cl;4==F;2==CH$_{3}$} +% \bzdrv[pa]{1D==O;4D==O;2==CH$_{3}$} +% \end{verbatim} +% +% \begin{macro}{\bzdrv} +% \begin{macro}{\benzenev} +% \begin{macrocode} +\def\bzdrv{\@ifnextchar[{\@bzdrv}{\@bzdrv[r]}} +\def\@bzdrv[#1]#2{% +\iforigpt \typeout{command `bzdrv' is based on `cyclohexanev'.}\fi% +%\expandafter\twoch@r#1{}% +\expandafter\twoCH@R#1//% +\if\@tmpa r% right-handed set of double bonds + \ifx\@tmpb\empty + \cyclohexanev[bdf]{#2}% + \fi +\else\if\@tmpa l%left-handed set of double bonds + \ifx\@tmpb\empty + \cyclohexanev[ace]{#2}% + \fi +\else\if\@tmpa c%aromatic circle + \ifx\@tmpb\empty + \cyclohexanev[A]{#2}% + \fi +\else\if\@tmpa p%p-quinone + \if\@tmpb a% (A) + \cyclohexanev[be]{#2}% + \else\ifx\@tmpb\empty% (A) + \cyclohexanev[be]{#2}% + \else\if\@tmpb b% (B) + \cyclohexanev[cf]{#2}% + \else\if\@tmpb c% (C) + \cyclohexanev[ad]{#2}% + \fi\fi\fi\fi% +\else\if\@tmpa o%o-quinone + \if\@tmpb a% (A)% + \cyclohexanev[ce]{#2}% + \else\ifx\@tmpb\empty% (A) + \cyclohexanev[ce]{#2}% + \else\if\@tmpb b%o-quinone (B) + \cyclohexanev[df]{#2}% + \else\if\@tmpb c%o-quinone (C) + \cyclohexanev[ae]{#2}% + \else\if\@tmpb d%o-quinone (D) + \cyclohexanev[bf]{#2}% + \else\if\@tmpb e%o-quinone (E) + \cyclohexanev[ac]{#2}% + \else\if\@tmpb f%o-quinone (F) + \cyclohexanev[bd]{#2}% + \fi\fi\fi\fi\fi\fi\fi% +\else% added 1998/11/15 by S. Fujita + \cyclohexanev[@#1]{#2}% +\fi\fi\fi\fi\fi% +}% %end of \bzdrv macro +\let\benzenev=\bzdrv +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \subsection{Horizontal type} +% +% The macro |\bzdrh| (|\benzeneh|) is used for drawing benzene derivatives +% of vertical type as well as benzoquinone derivatives of +% vertical type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\cyclohexanev| defined above. +% +% The macro |\bzdrh| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \changes{v3.00}{2002/04/30}{\cs{benzeneh} added} +% +% \begin{verbatim} +% **************************************** +% * benzene and benzoquinone derivatives * +% * (horizontal type) * +% **************************************** +% +% \bzdrh[OPT]{SUBSLIST} +% \benzeneh[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one character (r, l or c) for designate +% aromatic bond patterns or two characters (p? or o?) for quinone +% bond patterns. +% +% \begin{verbatim} +% +% OPT: (bond pattern) +% +% none or r : right-handed set of double bonds +% l : left-handed set of double bonds +% c : aromatic circle +% +% p or pa : p-quinone (A) +% pb : p-quinone (B) +% pc : p-quinone (C) +% +% o or oa : o-quinone (A) +% ob : o-quinone (B) +% oc : o-quinone (C) +% od : o-quinone (D) +% oe : o-quinone (E) +% of : o-quinone (F) +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 6 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% \begin{verbatim} +% +% e.g. +% \bzdrh{1==Cl;2==F} +% \bzdrh[c]{1==Cl;4==F;2==CH$_{3}$} +% \bzdrh[pa]{1D==O;4D==O;2==CH$_{3}$} +% +% \end{verbatim} +% +% \begin{macro}{\bzdrh} +% \begin{macro}{\benzeneh} +% \begin{macrocode} +\def\bzdrh{\@ifnextchar[{\@bzdrh}{\@bzdrh[r]}} +\def\@bzdrh[#1]#2{% +\iforigpt \typeout{command `bzdrh' is based on `cyclohexaneh'.}\fi% +%\expandafter\twoch@r#1{}% +\expandafter\twoCH@R#1//% +%\begin{sfpicture}(800,880)(-\noshift,-\noshift) +\if\@tmpa r% right-handed set of double bonds + \cyclohexaneh[bdf]{#2}% +\else\if\@tmpa l%left-handed set of double bonds + \cyclohexaneh[ace]{#2}% +\else\if\@tmpa c%aromatic circle + \cyclohexaneh[A]{#2}% +\else\if\@tmpa p%p-quinone + \if\@tmpb a% (A) + \cyclohexaneh[be]{#2}% + \else\ifx\@tmpb\empty% (A) + \cyclohexaneh[be]{#2}% + \else\if\@tmpb b% (B) + \cyclohexaneh[cf]{#2}% + \else\if\@tmpb c% (C) + \cyclohexaneh[ad]{#2}% + \fi\fi\fi\fi% +\else\if\@tmpa o%o-quinone + \if\@tmpb a% (A)% + \cyclohexaneh[ce]{#2}% + \else\ifx\@tmpb\empty% (A) + \cyclohexaneh[ce]{#2}% + \else\if\@tmpb b%o-quinone (B) + \cyclohexaneh[df]{#2}% + \else\if\@tmpb c%o-quinone (C) + \cyclohexaneh[ae]{#2}% + \else\if\@tmpb d%o-quinone (D) + \cyclohexaneh[bf]{#2}% + \else\if\@tmpb e%o-quinone (E) + \cyclohexaneh[ac]{#2}% + \else\if\@tmpb f%o-quinone (F) + \cyclohexaneh[bd]{#2}% + \fi\fi\fi\fi\fi\fi\fi% +\else% added 1998/11/15 by S. Fujita + \cyclohexaneh[@#1]{#2}% +\fi\fi\fi\fi\fi% +%\end{sfpicture} +}% %end of \bzdrh macro +\let\benzeneh=\bzdrh +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \section{Decaline derivatives} +% \subsection{Vertical type} +% +% The macro |\decalinev| is used for drawing decaline derivatives +% of vertical type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\setdecaringv|. +% +% \begin{verbatim} +% ************************ +% * decaline derivatives * +% * (vertical type) * +% ************************ +% The following numbering is adopted in this macro. +% +% 8 (0G)1 +% * 8a * +% 7 * * * * 2 +% | | | +% | | | +% 6 * * * * 3 +% * 4a * +% 5 (0F)4 +% ^ +% | +% the original point +% \end{verbatim} +% +% The macro |\decalinev| has an argument |SUBSLIST| as well as an optional +% argument |BONDLIST|. +% +% \begin{verbatim} +% \decalinev[BONDLIST]{SUBSLIST} +% \end{verbatim} +% +% The |BONDLIST| argument contains one or more +% characters selected form a to k, each of which indicates +% the presence of an inner (endcyclic) double bond on the corresponding +% position. The character A or B indicates aromatic bond patterns (circles). +% \changes{v1.02}{1998/10/14}{BONDLIST: k and K at the fused bond} +% +% \begin{verbatim} +% BONDLIST = +% +% none : decaline +% a : 1,2-double bond +% b : 2,3-double bond +% c : 3,4-double bond +% d : 4,4a-double bond +% e : 5,4a-double bond +% f : 5,6-double bond +% g : 6,7-double bond +% h : 8,7-double bond +% i : 8,8a-double bond +% j : 1,8a-double bond +% k : 4a,8a-double bond +% K : 4a,8a-double bond in the other ring +% A : left aromatic circle +% B : right aromatic circle +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 8 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% +% for 0 (fused positions) +% +% 0FA : alpha single bond at 8a +% 0FB : beta single bond at 8a +% 0FU : unspecified single bond at 8a +% 0GA : alpha single bond at 4a +% 0GB : beta single bond at 4a +% 0GU : unspecified single bond at 4a +% \end{verbatim} +% +% \begin{verbatim} +% +% e.g. +% +% \decalinev{1==Cl;2==F;0FA==;0GA==} +% \decalinev[c]{1==Cl;4==F;2==CH$_{3}$} +% \decalinev[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl;7==Cl;8==Cl} +% +% \end{verbatim} +% +% The macro |\decalinev| has been changed into a subsidiary macro +% of |\decaheterov| (version 2.00). +% +% \begin{macro}{\decalinev} +% \begin{macrocode} +\def\decalinev{\@ifnextchar[{\@decalinev[@}{\@decalinev[@]}} +\def\@decalinev[#1]#2{% +\iforigpt \typeout{command `decalinev' is based on `decaheterov'.}\fi% +\decaheterov[#1]{}{#2}} +% \end{macrocode} +% \end{macro} +% +% The following definition has been stopped using. +% \changes{v1.02}{1998/10/31}{Adding \cs{ylposition}, \cs{if@ylsw} +% \cs{ylfusedposition}, +% \cs{yl@shiftii}, \cs{@ylii}, \cs{@@ylii}, \cs{yl@shifti}, \cs{@yli}, +% \cs{@yli}, \cs{yl@xdiff} and \cs{yl@ydiff}} +% \changes{v2.00}{1998/12/5}{Add: fused rings} +% \changes{v3.00}{2002/04/30}{\cs{decalinev}: Old definition deleted.} +% +% \subsection{Vertical-bottom type} +% +% The macro |\decalinevb| is used for drawing decaline derivatives +% of vertical-bottom type (numbering from the bottom to the left-upper part). +% The word ``vertical'' means that each benzene ring is a vertical type. +% The word ``bottom'' means that the benzene ring with young locant numbers +% is located at the bottom. +% The skeleton and endocyclic double bonds are drawn directly, +% while substituents and exocyclic bonds are placed by useing +% the inner macro |\setsixringv|. +% \changes{v1.02}{1998/10/13}{Newly added command} +% +% \begin{verbatim} +% *************************** +% * decaline derivatives * +% * (vertical bottom type) * +% *************************** +% The following numbering is adopted in this macro. +% +% 7 +% * +% 6 * * 8 +% | | +% | | 0G (4a) +% 5 * * * +% 0F(4a) * * 1 +% | | +% | | +% 4 * * 2 +% * +% 3 +% ^ +% | +% the original point +% \end{verbatim} +% +% The macro |\decalinevb| has an argument |SUBSLIST| as well as an optional +% argument |BONDLIST|. +% +% \begin{verbatim} +% \decalinevb[BONDLIST]{SUBSLIST} +% \end{verbatim} +% +% The |BONDLIST| argument contains one or more +% characters selected form a to k, each of which indicates +% the presence of an inner (endcyclic) double bond on the corresponding +% position. The character A or B indicates aromatic bond patterns (circles). +% \changes{v1.02}{1998/10/14}{BONDLIST: k and K at the fused bond} +% +% \begin{verbatim} +% BONDLIST = +% +% none : decaline +% a : 1,2-double bond +% b : 2,3-double bond +% c : 3,4-double bond +% d : 4,4a-double bond +% e : 5,4a-double bond +% f : 5,6-double bond +% g : 6,7-double bond +% h : 8,7-double bond +% i : 8,8a-double bond +% j : 1,8a-double bond +% k : 4a,8a-double bond +% K : 4a,8a-double bond in the other ring +% A : left aromatic circle +% B : right aromatic circle +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 8 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% +% for 0 (fused positions) +% +% 0FA : alpha single bond at 8a +% 0FB : beta single bond at 8a +% 0FU : unspecified single bond at 8a +% 0GA : alpha single bond at 4a +% 0GB : beta single bond at 4a +% 0GU : unspecified single bond at 4a +% \end{verbatim} +% +% \begin{verbatim} +% +% e.g. +% +% \decalinevb{1==Cl;2==F;0FA==;0GA==} +% \decalinevb[c]{1==Cl;4==F;2==CH$_{3}$} +% \decalinevb[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl;7==Cl;8==Cl} +% +% \end{verbatim} +% +% The macro |\decalinevb| has been changed into a subsidiary macro +% of |\decaheterovb| (version 2.00). +% +% \begin{macro}{\decalinevb} +% \begin{macrocode} +\def\decalinevb{\@ifnextchar[{\@decalinevb[@}{\@decalinevb[@]}} +\def\@decalinevb[#1]#2{% +\iforigpt \typeout{command `decalinevb' is based on `decaheterovb'.}\fi% +\decaheterovb[#1]{}{#2}} +% \end{macrocode} +% \end{macro} +% +% The following old definition has been stopped using. +% \changes{v1.02}{1998/10/31}{Adding \cs{ylposition}, \cs{if@ylsw} +% \cs{ylfusedposition}, +% \cs{yl@shiftii}, \cs{@ylii}, \cs{@@ylii}, \cs{yl@shifti}, \cs{@yli}, +% \cs{@yli}, \cs{yl@xdiff} and \cs{yl@ydiff}} +% \changes{v2.00}{1998/12/25}{Add: Fused rings} +% \changes{v3.00}{2002/04/30}{\cs{decalinevb}: Old definition deleted.} +% +% \subsection{Vertical-top type} +% +% The macro |\decalinevt| is used for drawing decaline derivatives +% of vertical-bottom type (numbering from the top to the left-down part). +% The word ``vertical'' means that each benzene ring is a vertical type. +% The word ``top'' means that the benzene ring with young locant numbers +% is located at the top. +% The skeleton and endocyclic double bonds are drawn directly, +% while substituents and exocyclic bonds are placed by useing +% the inner macro |\setsixringv|. +% \changes{v1.02}{1998/10/13}{Newly added command} +% +% \begin{verbatim} +% ************************ +% * decaline derivatives * +% * (vertical-top type) * +% ************************ +% The following numbering is adopted in this macro. +% +% 2 +% * +% 1 * * 3 +% | | +% | | +% 0G (8a) * * 4 +% 8 * * 0F(4a) +% | | +% | | +% 7 * * 5 +% * +% 6 +% ^ +% | +% the original point +% \end{verbatim} +% +% The macro |\decalinevt| has an argument |SUBSLIST| as well as an optional +% argument |BONDLIST|. +% +% \begin{verbatim} +% \decalinevt[BONDLIST]{SUBSLIST} +% \end{verbatim} +% +% The |BONDLIST| argument contains one or more +% characters selected form a to k, each of which indicates +% the presence of an inner (endcyclic) double bond on the corresponding +% position. The character A or B indicates aromatic bond patterns (circles). +% \changes{v1.02}{1998/10/14}{BONDLIST: k and K at the fused bond} +% +% \begin{verbatim} +% BONDLIST = +% +% none : decaline +% a : 1,2-double bond +% b : 2,3-double bond +% c : 3,4-double bond +% d : 4,4a-double bond +% e : 5,4a-double bond +% f : 5,6-double bond +% g : 6,7-double bond +% h : 8,7-double bond +% i : 8,8a-double bond +% j : 1,8a-double bond +% k : 4a,8a-double bond +% K : 4a,8a-double bond in the other ring +% A : left aromatic circle +% B : right aromatic circle +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 8 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% +% for 0 (fused positions) +% +% 0FA : alpha single bond at 8a +% 0FB : beta single bond at 8a +% 0FU : unspecified single bond at 8a +% 0GA : alpha single bond at 4a +% 0GB : beta single bond at 4a +% 0GU : unspecified single bond at 4a +% \end{verbatim} +% +% \begin{verbatim} +% +% e.g. +% +% \decalinevt{1==Cl;2==F;0FA==;0GA==} +% \decalinevt[c]{1==Cl;4==F;2==CH$_{3}$} +% \decalinevt[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl;7==Cl;8==Cl} +% +% \end{verbatim} +% +% The macro |\decalinevt| has been changed into a subsidiary macro +% of |\decaheterovt| (version 2.00). +% +% \begin{macro}{\decalinevt} +% \begin{macrocode} +\def\decalinevt{\@ifnextchar[{\@decalinevt[@}{\@decalinevt[@]}} +\def\@decalinevt[#1]#2{% +\iforigpt \typeout{command `decalinevt' is based on `decaheterovt'.}\fi% +\decaheterovt[#1]{}{#2}} +% \end{macrocode} +% \end{macro} +% +% The following old definition has been stopped using. +% \changes{v1.02}{1998/10/31}{Adding \cs{ylposition}, \cs{if@ylsw}, +% \cs{ylfusedposition}, +% \cs{yl@shiftii}, \cs{@ylii}, \cs{@@ylii}, \cs{yl@shifti}, \cs{@yli}, +% \cs{@yli}, \cs{yl@xdiff} and \cs{yl@ydiff}} +% \changes{v2.00}{1998/12/5}{Add: fused rings} +% \changes{v3.00}{2002/04/30}{\cs{decalinevt}: Old definition deleted.} +% +% \subsection{Horizontal type} +% +% The macro |\decalineh| is used for drawing decaline derivatives +% of vertical type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macros |\setsixringh| and |\setfusedbond|. +% +% \begin{verbatim} +% ************************ +% * decaline derivatives * +% * (horizontal type) * +% ************************ +% The following numbering is adopted in this macro. +% +% 2 3 +% ----- +% * * +% 1 * * 4 +% * * +% 8a (0G) ----- 4a (0F) +% * * +% the original point ===> 8 * * 5 +% (0,0) * * +% ----- +% 7 6 +% \end{verbatim} +% +% The macro |\decalineh| has an argument |SUBSLIST| as well as an optional +% argument |BONDLIST|. +% +% \begin{verbatim} +% \decalineh[BONDLIST]{SUBSLIST} +% \end{verbatim} +% +% The |BONDLIST| argument contains one or more +% characters selected form a to k, each of which indicates +% the presence of an inner (endcyclic) double bond on the corresponding +% position. The character A or B indicates aromatic bond patterns (circles). +% \changes{v1.02}{1998/10/14}{BONDLIST: k and K at the fused bond} +% +% \begin{verbatim} +% +% BONDLIST = +% +% none : decaline +% a : 1,2-double bond +% b : 2,3-double bond +% c : 3,4-double bond +% d : 4,4a-double bond +% e : 5,4a-double bond +% f : 5,6-double bond +% g : 6,7-double bond +% h : 8,7-double bond +% i : 8,8a-double bond +% j : 1,8a-double bond +% k : 4a,8a-double bond +% K : 4a,8a-double bond in the other ring +% A : left aromatic circle +% B : right aromatic circle +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 8 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% +% for 0 (fused positions) +% +% 0FA : alpha single bond at 8a +% 0FB : beta single bond at 8a +% 0FU : unspecified single bond at 8a +% 0GA : alpha single bond at 4a +% 0GB : beta single bond at 4a +% 0GU : unspecified single bond at 4a +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \decalineh{1==Cl;2==F;0FA==;0GA==} +% \decalineh[c]{1==Cl;4==F;2==CH$_{3}$} +% \decalineh[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl;7==Cl;8==Cl} +% \end{verbatim} +% +% The macro |\decalineh| has been changed into a subsidiary macro +% of |\decaheteroh| (version 2.00). +% +% \begin{macro}{\decalineh} +% \begin{macrocode} +\def\decalineh{\@ifnextchar[{\@decalineh[@}{\@decalineh[@]}} +\def\@decalineh[#1]#2{% +\iforigpt \typeout{command `decalineh' is based on `decaheteroh'.}\fi% +\decaheteroh[#1]{}{#2}} +% \end{macrocode} +% \end{macro} +% +% The following old definition has been stopped using. +% \changes{v1.02}{1998/10/31}{Adding \cs{ylpositionh}, \cs{if@ylsw} +% \cs{ylfusedposition}, +% \cs{yl@shiftii}, \cs{@ylii}, \cs{@@ylii}, \cs{yl@shifti}, \cs{@yli}, +% \cs{@yli}, \cs{yl@xdiff} and \cs{yl@ydiff}} +% \changes{v2.00}{1998/11/30}{Add: fused rings} +% \changes{v3.00}{2002/04/30}{\cs{decalineh}: Old definition deleted.} +% +% \section{Naphthalene and naphtoquinone derivatives} +% \subsection{Vertical type} +% +% The macro |\naphdrv| (|\naphthalenev|) is used for drawing +% naphthalene derivatives +% of vertical type as well as naphthoquinone derivatives of +% vertical type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\decalinev|. +% +% The macro |\naphdrv| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \changes{v3.00}{2002/04/30}{\cs{naphthalenev} added} +% +% \begin{verbatim} +% ********************************************** +% * naphthalene and naphthoquinone derivatives * +% * (vertical type) * +% ********************************************** +% +% \naphdrv[OPT]{SUBSLIST} +% \naphthalenev[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one or two characters. +% +% The character `A' is used for designating an aromatic bond pattern, in +% which each of the six-membered rings has a central circle. +% +% \begin{verbatim} +% OPT (bond pattern) +% +% none : naphthalene +% A : aromatic circle +% \end{verbatim} +% +% One character `p' or two characters (p?) in the |OPT| argument +% designate a p-quinone nucleus, which is present in the +% right-hand ring for the case of `p' or `pa' and in the +% left-hand ring for the case of `pb'. +% +% \begin{verbatim} +% p or pa : 1,4-quinone (A) left aromatic, right quinone +% pb : 1,4-quinone (B) right aromatic, left quinone +% \end{verbatim} +% +% One character `o' or two characters (o?) in the |OPT| argument +% designate an o-quinone nucleus in either side of the fused ring. +% The second character of each argument indicates one of the possible +% type of bond patterns. +% +% \begin{verbatim} +% o or oa : o-quinone (A) +% ob : o-quinone (B) +% oc : o-quinone (C) +% od : o-quinone (D) +% oe : o-quinone (E) +% of : o-quinone (F) +% \end{verbatim} +% +% One character `q' or two characters (q?) in the |OPT| argument +% designate an 2,6-, 1,5- or 1,7-quinone nucleus. +% The second character of each argument indicates one of the possible +% type of bond patterns. +% +% \begin{verbatim} +% +% q or qa : 2,6-quinone (A) +% qb : 2,6-quinone (B) 3,7 +% qc : 1,5-quinone (C) +% qd : 1,5-quinone (D) 4,8 +% qe : 1,7-quinone (E) +% qf : 1,7-quinone (F) 2,8 +% qg : 1,7-quinone (G) 4,6 +% qh : 1,7-quinone (H) 3,5 +% \end{verbatim} +% +% One character `P' or two characters (P?) in the |OPT| argument +% designate a 1,4,5,8- or 1,2,5,8-quinone nucleus. +% +% \begin{verbatim} +% +% P or Pa : 1,4,5,8-quinone (A) +% Pb : 1,2,5,8-quinone (B) +% \end{verbatim} +% +% One character `Q' or `O' or two characters (O?) in the |OPT| argument +% designate quinone nuclei of remaining types. +% +% \begin{verbatim} +% Q : 1,2,3,4-quinone +% +% O or Oa : 1,2,5,6-quinone (A) +% Ob : 1,2,7,8-quinone (B) +% Oc : 1,2,3,5-quinone (C) +% Od : 1,2,3,7-quinone (D) +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 8 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% \naphdrv{1==Cl;2==F} +% \naphdrv[A]{1==Cl;4==F;2==CH$_{3}$} +% \end{verbatim} +% +% \begin{macro}{\naphdrv} +% \begin{macro}{\naphthalenev} +% \begin{macrocode} +\def\naphdrv{\@ifnextchar[{\@naphdrv}{\@naphdrv[r]}} +\def\@naphdrv[#1]#2{% +\iforigpt \typeout{command `naphdrv' is based on `decalinev'.}\fi% + \expandafter\threech@r#1{}{}% +\if\@tmpa r% right-handed set of double bonds + \decalinev[acfhk]{#2}% +\else\if\@tmpa A%aromatic circle + \decalinev[AB]{#2}% +% +\else\if\@tmpa p%p-quinone + \if\@tmpb a% (A) + \decalinev[bfhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalinev[bfhk]{#2}% + \else\if\@tmpb b% (B) + \decalinev[acgk]{#2}% + \fi\fi\fi% +\else% + \if\@tmpa o%o-quinone + \if\@tmpb a% (A) + \decalinev[cfhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalinev[cfhk]{#2}% + \else\if\@tmpb b%o-quinone (B) + \decalinev[dfhj]{#2}% + \else\if\@tmpb c%o-quinone (C) + \decalinev[afhk]{#2}% + \else\if\@tmpb d%o-quinone (D) + \decalinev[achk]{#2}% + \else\if\@tmpb e%o-quinone (E) + \decalinev[acei]{#2}% + \else\if\@tmpb f%o-quinone (F) + \decalinev[acfk]{#2}% + \fi\fi\fi\fi\fi\fi% + \fi% +%%% +\else\if\@tmpa q%various quinone + \if\@tmpb a% (A)2,6-type + \decalinev[cehj]{#2}% + \else\ifx\@tmpb\empty% (A)2,6-type + \decalinev[cehj]{#2}% + \else\if\@tmpb b%2,6-quinone (B) + \decalinev[adfi]{#2}% + \else\if\@tmpb c%1,5-quinone (C) + \decalinev[bdgi]{#2}% + \else\if\@tmpb d%1,5-quinone (D) + \decalinev[begj]{#2}% + \else\if\@tmpb e%1,7-quinone (E) + \decalinev[bdfi]{#2}% + \else\if\@tmpb f%1,7-quinone (F) + \decalinev[cegj]{#2}% + \else\if\@tmpb g%1,7-quinone (G) + \decalinev[behj]{#2}% + \else\if\@tmpb h%1,7-quinone (H) + \decalinev[adgi]{#2}% + \fi\fi\fi\fi\fi\fi\fi\fi\fi% +\else\if\@tmpa P%quinone having 4 carbonyl groups + \if\@tmpb a% (A)1,4,5,8-type + \decalinev[bgk]{#2}% + \else\ifx\@tmpb\empty% (A)1,4,5,8-type + \decalinev[bgk]{#2}% + \else\if\@tmpb b% (B)1,2,5,8-type + \decalinev[cgk]{#2}% + \fi\fi\fi% +\else\if\@tmpa Q%1,2,3,4 + \decalinev[fhk]{#2}% +\else\if\@tmpa O%quinone having 4 carbonyl groups + \if\@tmpb a% (A)1,2,5,6-type + \decalinev[chk]{#2}% + \else\ifx\@tmpb\empty% (A)1,2,5,6-type + \decalinev[chk]{#2}% + \else\if\@tmpb b% (B)1,2,7,8-type + \decalinev[cfk]{#2}% + \else\if\@tmpb c% (C)1,2,3,5-type + \decalinev[dgi]{#2}% + \else\if\@tmpb d% (D)1,2,3,7-type + \decalinev[dfi]{#2}% + \fi\fi\fi\fi\fi% +\else% added 1998/11/23 by S. Fujita + \decalinev[@#1]{#2}% +\fi\fi\fi\fi\fi\fi\fi\fi% +}% %end of \naphdrv macro +\let\naphthalenev=\naphdrv +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \subsection{Vertical-bottom type} +% +% The macro |\naphdrvb| (|\naphthalenevb|) is used for drawing +% naphthalene derivatives +% of vertical-bottom type as well as naphthoquinone derivatives of +% vertical-bottom type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\decalinevb|. +% \changes{v1.02}{1998/10/14}{Newly added command} +% +% The macro |\naphdrvb| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \changes{v3.00}{2002/04/30}{\cs{naphthalenevb} added} +% +% \begin{verbatim} +% ********************************************** +% * naphthalene and naphthoquinone derivatives * +% * (vertical-bottom type) * +% ********************************************** +% +% \naphdrvb[OPT]{SUBSLIST} +% \naphthalenevb[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one or two characters. +% +% The character `A' is used for designating an aromatic bond pattern, in +% which each of the six-membered rings has a central circle. +% +% \begin{verbatim} +% OPT (bond pattern) +% +% none : naphthalene +% A : aromatic circle +% \end{verbatim} +% +% One character `p' or two characters (p?) in the |OPT| argument +% designate a p-quinone nucleus, which is present in the +% right-hand ring for the case of `p' or `pa' and in the +% left-hand ring for the case of `pb'. +% +% \begin{verbatim} +% p or pa : 1,4-quinone (A) left aromatic, right quinone +% pb : 1,4-quinone (B) right aromatic, left quinone +% \end{verbatim} +% +% One character `o' or two characters (o?) in the |OPT| argument +% designate an o-quinone nucleus in either side of the fused ring. +% The second character of each argument indicates one of the possible +% type of bond patterns. +% +% \begin{verbatim} +% o or oa : o-quinone (A) +% ob : o-quinone (B) +% oc : o-quinone (C) +% od : o-quinone (D) +% oe : o-quinone (E) +% of : o-quinone (F) +% \end{verbatim} +% +% One character `q' or two characters (q?) in the |OPT| argument +% designate an 2,6-, 1,5- or 1,7-quinone nucleus. +% The second character of each argument indicates one of the possible +% type of bond patterns. +% +% \begin{verbatim} +% +% q or qa : 2,6-quinone (A) +% qb : 2,6-quinone (B) 3,7 +% qc : 1,5-quinone (C) +% qd : 1,5-quinone (D) 4,8 +% qe : 1,7-quinone (E) +% qf : 1,7-quinone (F) 2,8 +% qg : 1,7-quinone (G) 4,6 +% qh : 1,7-quinone (H) 3,5 +% \end{verbatim} +% +% One character `P' or two characters (P?) in the |OPT| argument +% designate a 1,4,5,8- or 1,2,5,8-quinone nucleus. +% +% \begin{verbatim} +% +% P or Pa : 1,4,5,8-quinone (A) +% Pb : 1,2,5,8-quinone (B) +% \end{verbatim} +% +% One character `Q' or `O' or two characters (O?) in the |OPT| argument +% designate quinone nuclei of remaining types. +% +% \begin{verbatim} +% Q : 1,2,3,4-quinone +% +% O or Oa : 1,2,5,6-quinone (A) +% Ob : 1,2,7,8-quinone (B) +% Oc : 1,2,3,5-quinone (C) +% Od : 1,2,3,7-quinone (D) +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 8 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% \naphdrvb{1==Cl;2==F} +% \naphdrvb[A]{1==Cl;4==F;2==CH$_{3}$} +% \end{verbatim} +% +% \begin{macro}{\naphdrvb} +% \begin{macro}{\napphathaleneb} +% \begin{macrocode} +\def\naphdrvb{\@ifnextchar[{\@naphdrvb}{\@naphdrvb[r]}} +\def\@naphdrvb[#1]#2{% +\iforigpt \typeout{command `naphdrvb' is based on `decalinevb'.}\fi% + \expandafter\threech@r#1{}{}% +\if\@tmpa r% right-handed set of double bonds + \decalinevb[acfhk]{#2}% +\else\if\@tmpa A%aromatic circle + \decalinevb[AB]{#2}% +% +\else\if\@tmpa p%p-quinone + \if\@tmpb a% (A) + \decalinevb[bfhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalinevb[bfhk]{#2}% + \else\if\@tmpb b% (B) + \decalinevb[acgk]{#2}% + \fi\fi\fi% +\else% + \if\@tmpa o%o-quinone + \if\@tmpb a% (A) + \decalinevb[cfhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalinevb[cfhk]{#2}% + \else\if\@tmpb b%o-quinone (B) + \decalinevb[dfhj]{#2}% + \else\if\@tmpb c%o-quinone (C) + \decalinevb[afhk]{#2}% + \else\if\@tmpb d%o-quinone (D) + \decalinevb[achk]{#2}% + \else\if\@tmpb e%o-quinone (E) + \decalinevb[acei]{#2}% + \else\if\@tmpb f%o-quinone (F) + \decalinevb[acfk]{#2}% + \fi\fi\fi\fi\fi\fi% + \fi% +%%% +\else\if\@tmpa q%various quinone + \if\@tmpb a% (A)2,6-type + \decalinevb[cehj]{#2}% + \else\ifx\@tmpb\empty% (A)2,6-type + \decalinevb[cehj]{#2}% + \else\if\@tmpb b%2,6-quinone (B) + \decalinevb[adfi]{#2}% + \else\if\@tmpb c%1,5-quinone (C) + \decalinevb[bdgi]{#2}% + \else\if\@tmpb d%1,5-quinone (D) + \decalinevb[begj]{#2}% + \else\if\@tmpb e%1,7-quinone (E) + \decalinevb[bdfi]{#2}% + \else\if\@tmpb f%1,7-quinone (F) + \decalinevb[cegj]{#2}% + \else\if\@tmpb g%1,7-quinone (G) + \decalinevb[behj]{#2}% + \else\if\@tmpb h%1,7-quinone (H) + \decalinevb[adgi]{#2}% + \fi\fi\fi\fi\fi\fi\fi\fi\fi% +\else\if\@tmpa P%quinone having 4 carbonyl groups + \if\@tmpb a% (A)1,4,5,8-type + \decalinevb[bgk]{#2}% + \else\ifx\@tmpb\empty% (A)1,4,5,8-type + \decalinevb[bgk]{#2}% + \else\if\@tmpb b% (B)1,2,5,8-type + \decalinevb[cgk]{#2}% + \fi\fi\fi% +\else\if\@tmpa Q%1,2,3,4 + \decalinevb[fhk]{#2}% +\else\if\@tmpa O%quinone having 4 carbonyl groups + \if\@tmpb a% (A)1,2,5,6-type + \decalinevb[chk]{#2}% + \else\ifx\@tmpb\empty% (A)1,2,5,6-type + \decalinevb[chk]{#2}% + \else\if\@tmpb b% (B)1,2,7,8-type + \decalinevb[cfk]{#2}% + \else\if\@tmpb c% (C)1,2,3,5-type + \decalinevb[dgi]{#2}% + \else\if\@tmpb d% (D)1,2,3,7-type + \decalinevb[dfi]{#2}% + \fi\fi\fi\fi\fi% +\else% added 1998/11/23 by S. Fujita + \decalinevb[@#1]{#2}% +\fi\fi\fi\fi\fi\fi\fi\fi% +}% %end of \naphdrvb macro +\let\naphthalenevb=\naphdrvb +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \subsection{Vertical-top type} +% +% The macro |\naphdrvt| (|\naphthalenevt|) is used for drawing +% naphthalene derivatives +% of vertical-top type as well as naphthoquinone derivatives of +% vertical-top type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\decalinevt|. +% \changes{v1.02}{1998/10/14}{Newly added command} +% +% The macro |\naphdrvt| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \changes{v3.00}{2002/04/30}{\cs{naphthalenevt} added} +% +% \begin{verbatim} +% ********************************************** +% * naphthalene and naphthoquinone derivatives * +% * (vertical-top type) * +% ********************************************** +% +% \naphdrvt[OPT]{SUBSLIST} +% \naphthalenevt[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one or two characters. +% +% The character `A' is used for designating an aromatic bond pattern, in +% which each of the six-membered rings has a central circle. +% +% \begin{verbatim} +% OPT (bond pattern) +% +% none : naphthalene +% A : aromatic circle +% \end{verbatim} +% +% One character `p' or two characters (p?) in the |OPT| argument +% designate a p-quinone nucleus, which is present in the +% right-hand ring for the case of `p' or `pa' and in the +% left-hand ring for the case of `pb'. +% +% \begin{verbatim} +% p or pa : 1,4-quinone (A) left aromatic, right quinone +% pb : 1,4-quinone (B) right aromatic, left quinone +% \end{verbatim} +% +% One character `o' or two characters (o?) in the |OPT| argument +% designate an o-quinone nucleus in either side of the fused ring. +% The second character of each argument indicates one of the possible +% type of bond patterns. +% +% \begin{verbatim} +% o or oa : o-quinone (A) +% ob : o-quinone (B) +% oc : o-quinone (C) +% od : o-quinone (D) +% oe : o-quinone (E) +% of : o-quinone (F) +% \end{verbatim} +% +% One character `q' or two characters (q?) in the |OPT| argument +% designate an 2,6-, 1,5- or 1,7-quinone nucleus. +% The second character of each argument indicates one of the possible +% type of bond patterns. +% +% \begin{verbatim} +% +% q or qa : 2,6-quinone (A) +% qb : 2,6-quinone (B) 3,7 +% qc : 1,5-quinone (C) +% qd : 1,5-quinone (D) 4,8 +% qe : 1,7-quinone (E) +% qf : 1,7-quinone (F) 2,8 +% qg : 1,7-quinone (G) 4,6 +% qh : 1,7-quinone (H) 3,5 +% \end{verbatim} +% +% One character `P' or two characters (P?) in the |OPT| argument +% designate a 1,4,5,8- or 1,2,5,8-quinone nucleus. +% +% \begin{verbatim} +% +% P or Pa : 1,4,5,8-quinone (A) +% Pb : 1,2,5,8-quinone (B) +% \end{verbatim} +% +% One character `Q' or `O' or two characters (O?) in the |OPT| argument +% designate quinone nuclei of remaining types. +% +% \begin{verbatim} +% Q : 1,2,3,4-quinone +% +% O or Oa : 1,2,5,6-quinone (A) +% Ob : 1,2,7,8-quinone (B) +% Oc : 1,2,3,5-quinone (C) +% Od : 1,2,3,7-quinone (D) +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 8 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% \naphdrvt{1==Cl;2==F} +% \naphdrvt[A]{1==Cl;4==F;2==CH$_{3}$} +% \end{verbatim} +% +% \begin{macro}{\naphdrvt} +% \begin{macro}{\naphthalenevt} +% \begin{macrocode} +\def\naphdrvt{\@ifnextchar[{\@naphdrvt}{\@naphdrvt[r]}} +\def\@naphdrvt[#1]#2{% +\iforigpt \typeout{command `naphdrvt' is based on `decalinevt'.}\fi% + \expandafter\threech@r#1{}{}% +\if\@tmpa r% right-handed set of double bonds + \decalinevt[acfhk]{#2}% +\else\if\@tmpa A%aromatic circle + \decalinevt[AB]{#2}% +% +\else\if\@tmpa p%p-quinone + \if\@tmpb a% (A) + \decalinevt[bfhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalinevt[bfhk]{#2}% + \else\if\@tmpb b% (B) + \decalinevt[acgk]{#2}% + \fi\fi\fi% +\else% + \if\@tmpa o%o-quinone + \if\@tmpb a% (A) + \decalinevt[cfhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalinevt[cfhk]{#2}% + \else\if\@tmpb b%o-quinone (B) + \decalinevt[dfhj]{#2}% + \else\if\@tmpb c%o-quinone (C) + \decalinevt[afhk]{#2}% + \else\if\@tmpb d%o-quinone (D) + \decalinevt[achk]{#2}% + \else\if\@tmpb e%o-quinone (E) + \decalinevt[acei]{#2}% + \else\if\@tmpb f%o-quinone (F) + \decalinevt[acfk]{#2}% + \fi\fi\fi\fi\fi\fi% + \fi% +%%% +\else\if\@tmpa q%various quinone + \if\@tmpb a% (A)2,6-type + \decalinevt[cehj]{#2}% + \else\ifx\@tmpb\empty% (A)2,6-type + \decalinevt[cehj]{#2}% + \else\if\@tmpb b%2,6-quinone (B) + \decalinevt[adfi]{#2}% + \else\if\@tmpb c%1,5-quinone (C) + \decalinevt[bdgi]{#2}% + \else\if\@tmpb d%1,5-quinone (D) + \decalinevt[begj]{#2}% + \else\if\@tmpb e%1,7-quinone (E) + \decalinevt[bdfi]{#2}% + \else\if\@tmpb f%1,7-quinone (F) + \decalinevt[cegj]{#2}% + \else\if\@tmpb g%1,7-quinone (G) + \decalinevt[behj]{#2}% + \else\if\@tmpb h%1,7-quinone (H) + \decalinevt[adgi]{#2}% + \fi\fi\fi\fi\fi\fi\fi\fi\fi% +\else\if\@tmpa P%quinone having 4 carbonyl groups + \if\@tmpb a% (A)1,4,5,8-type + \decalinevt[bgk]{#2}% + \else\ifx\@tmpb\empty% (A)1,4,5,8-type + \decalinevt[bgk]{#2}% + \else\if\@tmpb b% (B)1,2,5,8-type + \decalinevt[cgk]{#2}% + \fi\fi\fi% +\else\if\@tmpa Q%1,2,3,4 + \decalinevt[fhk]{#2}% +\else\if\@tmpa O%quinone having 4 carbonyl groups + \if\@tmpb a% (A)1,2,5,6-type + \decalinevt[chk]{#2}% + \else\ifx\@tmpb\empty% (A)1,2,5,6-type + \decalinevt[chk]{#2}% + \else\if\@tmpb b% (B)1,2,7,8-type + \decalinevt[cfk]{#2}% + \else\if\@tmpb c% (C)1,2,3,5-type + \decalinevt[dgi]{#2}% + \else\if\@tmpb d% (D)1,2,3,7-type + \decalinevt[dfi]{#2}% + \fi\fi\fi\fi\fi% +\else% added 1998/11/23 by S. Fujita + \decalinevt[@#1]{#2}% +\fi\fi\fi\fi\fi\fi\fi\fi% +}% %end of \naphdrvt macro +\let\naphthalenevt=\naphdrvt +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \subsection{Horizontal type} +% +% The macro |\naphdrh| is used for drawing naphthalene derivatives +% of horizontal type as well as naphtoquinone derivatives of +% horizontal type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\decalineh|. +% +% The macro |\naphdrh| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \changes{v3.00}{2002/04/30}{\cs{naphthaleneh} added} +% +% \begin{verbatim} +% ********************************************** +% * naphthalene and naphthoquinone derivatives * +% * (horizontal type) * +% ********************************************** +% +% \naphdrh[OPT]{SUBSLIST} +% \naphthaleneh[OPT]{SUBSLIST} +% +% \end{verbatim} +% +% The |OPT| argument contains one or two characters for designate +% aromatic bond patterns or for naphthoquinone bond patterns. +% The meaning of these characters is the same as described in +% the definition of the macro |\naphdrv|. +% +% \begin{verbatim} +% OPT (bond pattern) +% +% none : naphthalene +% A : aromatic circle +% +% p or pa : 1,4-quinone (A) left aromatic, right quinone +% pb : 1,4-quinone (B) right aromatic, left quinone +% +% o or oa : o-quinone (A) +% ob : o-quinone (B) +% oc : o-quinone (C) +% od : o-quinone (D) +% oe : o-quinone (E) +% of : o-quinone (F) +% +% q or qa : 2,6-quinone (A) +% qb : 2,6-quinone (B) 3,7 +% qc : 1,5-quinone (C) +% qd : 1,5-quinone (D) 4,8 +% qe : 1,7-quinone (E) +% qf : 1,7-quinone (F) 2,8 +% qg : 1,7-quinone (G) 4,6 +% qh : 1,7-quinone (H) 3,5 +% +% P or Pa : 1,4,5,8-quinone (A) +% Pb : 1,2,5,8-quinone (B) +% +% Q : 1,2,3,4-quinone +% +% O or Oa : 1,2,5,6-quinone (A) +% Ob : 1,2,7,8-quinone (B) +% Oc : 1,2,3,5-quinone (C) +% Od : 1,2,3,7-quinone (D) +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 8 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% \naphdrh{1==Cl;2==F} +% \naphdrh[A]{1==Cl;4==F;2==CH$_{3}$} +% \end{verbatim} +% +% \begin{macro}{\naphdrh} +% \begin{macro}{\naphthaleneh} +% \begin{macrocode} +\def\naphdrh{\@ifnextchar[{\@naphdrh}{\@naphdrh[r]}} +\def\@naphdrh[#1]#2{% +\iforigpt \typeout{command `nathdrh' is based on `decalineh'.}\fi% + \expandafter\threech@r#1{}{}% +\if\@tmpa r% right-handed set of double bonds + \decalineh[acfhk]{#2}% +\else\if\@tmpa A%aromatic circle + \decalineh[AB]{#2}% +% +\else\if\@tmpa p%p-quinone + \if\@tmpb a% (A) + \decalineh[bfhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalineh[bfhk]{#2}% + \else\if\@tmpb b% (B) + \decalineh[acgk]{#2}% + \fi\fi\fi% +\else% + \if\@tmpa o%o-quinone + \if\@tmpb a% (A) + \decalineh[cfhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalineh[cfhk]{#2}% + \else\if\@tmpb b%o-quinone (B) + \decalineh[dfhj]{#2}% + \else\if\@tmpb c%o-quinone (C) + \decalineh[afhk]{#2}% + \else\if\@tmpb d%o-quinone (D) + \decalineh[achk]{#2}% + \else\if\@tmpb e%o-quinone (E) + \decalineh[acei]{#2}% + \else\if\@tmpb f%o-quinone (F) + \decalineh[acfk]{#2}% + \fi\fi\fi\fi\fi\fi% + \fi% +% %% +\else\if\@tmpa q%various quinone + \if\@tmpb a% (A)2,6-type + \decalineh[cehj]{#2}% + \else\ifx\@tmpb\empty% (A)2,6-type + \decalineh[cehj]{#2}% + \else\if\@tmpb b%2,6-quinone (B) + \decalineh[adfi]{#2}% + \else\if\@tmpb c%1,5-quinone (C) + \decalineh[bdgi]{#2}% + \else\if\@tmpb d%1,5-quinone (D) + \decalineh[begj]{#2}% + \else\if\@tmpb e%1,7-quinone (E) + \decalineh[bdfi]{#2}% + \else\if\@tmpb f%1,7-quinone (F) + \decalineh[cegj]{#2}% + \else\if\@tmpb g%1,7-quinone (G) + \decalineh[behj]{#2}% + \else\if\@tmpb h%1,7-quinone (H) + \decalineh[adgi]{#2}% + \fi\fi\fi\fi\fi\fi\fi\fi\fi% +\else\if\@tmpa P%quinone having 4 carbonyl groups + \if\@tmpb a% (A)1,4,5,8-type + \decalineh[bgk]{#2}% + \else\ifx\@tmpb\empty% (A)1,4,5,8-type + \decalineh[bgk]{#2}% + \else\if\@tmpb b% (B)1,2,5,8-type + \decalineh[cgk]{#2}% + \fi\fi\fi% +\else\if\@tmpa Q%1,2,3,4 + \decalineh[fhk]{#2}% +\else\if\@tmpa O%quinone having 4 carbonyl groups + \if\@tmpb a% (A)1,2,5,6-type + \decalineh[chk]{#2}% + \else\ifx\@tmpb\empty% (A)1,2,5,6-type + \decalineh[chk]{#2}% + \else\if\@tmpb b% (B)1,2,7,8-type + \decalineh[cfk]{#2}% + \else\if\@tmpb c% (C)1,2,3,5-type + \decalineh[dgi]{#2}% + \else\if\@tmpb d% (D)1,2,3,7-type + \decalineh[dfi]{#2}% + \fi\fi\fi\fi\fi% +\else% added 1998/11/23 by S. Fujita + \decalineh[@#1]{#2}% +\fi\fi\fi\fi\fi\fi\fi\fi% +}% %end of \naphdrh macro +\let\naphthaleneh=\naphdrh +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \section{Tetraline derivatives} +% \subsection{Vertical type} +% +% The macro |\tetralinev| is used for drawing naphthalene derivatives +% of vertical type as well as naphthoquinone derivatives of +% vertical type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\decalinev|. +% +% The macro |\tetralinev| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \begin{verbatim} +% ************************* +% * tetraline derivatives * +% * (vertical type) * +% ************************* +% +% \tetralinev[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one or two characters for designate +% aromatic bond patterns or for naphthoquinone bond patterns. +% +% \begin{verbatim} +% +% OPT = none : tetraline +% A : aromatic circle +% +% e or ea : 1,2-double bond +% eb : 2,3-double bond +% ec : 3,4-double bond +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 4 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% +% for n=5 or 8 +% +% nSa : bias bond +% This option can be used to avoid over-crowding +% betweem 1 and 8 or between 4 and 5. +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \tetralinev{1==Cl;2==F} +% \tetralinev[A]{1==Cl;4==F;2==CH$_{3}$} +% \tetralinev[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl;7==Cl;8==Cl} +% \end{verbatim} +% +% \begin{macro}{\tetralinev} +% \begin{macrocode} +\def\tetralinev{\@ifnextchar[{\@tetralinev}{\@tetralinev[r]}} +\def\@tetralinev[#1]#2{% + \iforigpt \typeout{command `tetralinev' is based on `decalinev'.}\fi% + \expandafter\threech@r#1{}{}% + \if\@tmpa r% right-handed set of double bonds + \decalinev[fhk]{#2}% + \else\if\@tmpa A%aromatic circle + \decalinev[A]{#2}% + \else\if\@tmpa e%inner double bond + \if\@tmpb a% (A)% + \decalinev[afhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalinev[afhk]{#2}% + \else\if\@tmpb b% (B) + \decalinev[bfhk]{#2}% + \else\if\@tmpb c% (C) + \decalinev[cfhk]{#2}% + \fi\fi\fi\fi% + \else%1998/11/23 by Shinsaku Fujita + \decalinev[@#1]{#2}% + \fi\fi\fi% +}% %end of \tetralinev macro +% \end{macrocode} +% \end{macro} +% +% \subsection{Vertical-bottom type} +% +% The macro |\tetralinevb| is used for drawing naphthalene derivatives +% of vertical-bottom type as well as naphthoquinone derivatives of +% vertical type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\decalinevb|. +% \changes{v1.02}{1998/10/14}{Newly added command} +% +% The macro |\tetralinevb| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \begin{verbatim} +% ******************************** +% * tetraline derivatives * +% * (vertical-bottom type) * +% ******************************** +% +% \tetralinevb[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one or two characters for designate +% aromatic bond patterns or for naphthoquinone bond patterns. +% +% \begin{verbatim} +% +% OPT = none : tetraline +% A : aromatic circle +% +% e or ea : 1,2-double bond +% eb : 2,3-double bond +% ec : 3,4-double bond +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 4 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% +% for n=5 or 8 +% +% nSa : bias bond +% This option can be used to avoid over-crowding +% betweem 1 and 8 or between 4 and 5. +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \tetralinevb{1==Cl;2==F} +% \tetralinevb[A]{1==Cl;4==F;2==CH$_{3}$} +% \tetralinevb[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl;7==Cl;8==Cl} +% \end{verbatim} +% +% \begin{macro}{\tetralinevb} +% \begin{macrocode} +\def\tetralinevb{\@ifnextchar[{\@tetralinevb}{\@tetralinevb[r]}} +\def\@tetralinevb[#1]#2{% + \iforigpt \typeout{command `tetralinevb' is based on `decalinevb'.}\fi% + \expandafter\threech@r#1{}{}% + \if\@tmpa r% right-handed set of double bonds + \decalinevb[fhK]{#2}% %[fhK] in place of [fhk] + \else\if\@tmpa A%aromatic circle + \decalinevb[A]{#2}% + \else\if\@tmpa e%inner double bond + \if\@tmpb a% (A)% + \decalinevb[afhK]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalinevb[afhK]{#2}% + \else\if\@tmpb b% (B) + \decalinevb[bfhK]{#2}% + \else\if\@tmpb c% (C) + \decalinevb[cfhK]{#2}% + \fi\fi\fi\fi% + \else%1998/11/23 by Shinsaku Fujita + \decalinevb[@#1]{#2}% + \fi\fi\fi% +}% %end of \tetralinevb macro +% \end{macrocode} +% \end{macro} +% +% \subsection{Vertical-top type} +% +% The macro |\tetralinevt| is used for drawing naphthalene derivatives +% of vertical-top type as well as naphthoquinone derivatives of +% vertical type. The skeleton and endocyclic double bonds are +% drawn directly, while substituents and exocyclic bonds are placed by +% useing the inner macro |\decalinevt|. +% \changes{v1.02}{1998/10/14}{Newly added command} +% +% The macro |\tetralinevt| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \begin{verbatim} +% ******************************** +% * tetraline derivatives * +% * (vertical-bottom type) * +% ******************************** +% +% \tetralinevt[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one or two characters for designate +% aromatic bond patterns or for naphthoquinone bond patterns. +% +% \begin{verbatim} +% +% OPT = none : tetraline +% A : aromatic circle +% +% e or ea : 1,2-double bond +% eb : 2,3-double bond +% ec : 3,4-double bond +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 4 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% +% for n=5 or 8 +% +% nSa : bias bond +% This option can be used to avoid over-crowding +% betweem 1 and 8 or between 4 and 5. +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \tetralinevt{1==Cl;2==F} +% \tetralinevt[A]{1==Cl;4==F;2==CH$_{3}$} +% \tetralinevt[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl;7==Cl;8==Cl} +% \end{verbatim} +% +% \begin{macro}{\tetralinevt} +% \begin{macrocode} +\def\tetralinevt{\@ifnextchar[{\@tetralinevt}{\@tetralinevt[r]}} +\def\@tetralinevt[#1]#2{% + \iforigpt \typeout{command `tetralinevt' is based on `decalinevt'.}\fi% + \expandafter\threech@r#1{}{}% + \if\@tmpa r% right-handed set of double bonds + \decalinevt[fhk]{#2}% + \else\if\@tmpa A%aromatic circle + \decalinevt[A]{#2}% + \else\if\@tmpa e%inner double bond + \if\@tmpb a% (A)% + \decalinevt[afhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalinevt[afhk]{#2}% + \else\if\@tmpb b% (B) + \decalinevt[bfhk]{#2}% + \else\if\@tmpb c% (C) + \decalinevt[cfhk]{#2}% + \fi\fi\fi\fi% + \else%1998/11/23 by Shinsaku Fujita + \decalinevt[@#1]{#2}% + \fi\fi\fi% +}% %end of \tetralinevt macro +% \end{macrocode} +% \end{macro} +% +% \subsection{Horizontal type} +% +% The macro |\tetralineh| is used for drawing tetraline derivatives +% of horizontal type. +% +% The macro |\tetralineh| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \begin{verbatim} +% ************************* +% * tetraline derivatives * +% * (horizontal type) * +% ************************* +% +% \tetralineh[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one or two characters for designate +% aromatic bond patterns or for naphthoquinone bond patterns. +% +% \begin{verbatim} +% OPT = none : tetraline +% A : aromatic circle +% +% e or ea : 1,2-double bond +% eb : 2,3-double bond +% ec : 3,4-double bond +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% SUBSLIST: list of substituents +% +% for n = 1 to 4 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% +% for n=5 or 8 +% +% nSa : bias bond +% This option can be used to avoid over-crowding +% betweem 1 and 8 or between 4 and 5. +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \tetralineh{1==Cl;2==F} +% \tetralineh[A]{1==Cl;4==F;2==CH$_{3}$} +% \tetralineh[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl;7==Cl;8==Cl} +% \end{verbatim} +% +% \begin{macro}{\tetralineh} +% \begin{macrocode} +\def\tetralineh{\@ifnextchar[{\@tetralineh}{\@tetralineh[r]}} +\def\@tetralineh[#1]#2{% + \iforigpt \typeout{command `tetralineh' is based on `decalineh'.}\fi% + \expandafter\threech@r#1{}{}% + \if\@tmpa r% right-handed set of double bonds + \decalineh[fhk]{#2}% + \else\if\@tmpa A%aromatic circle + \decalineh[A]{#2}% + \else\if\@tmpa e%inner double bond + \if\@tmpb a% (A)% + \decalineh[afhk]{#2}% + \else\ifx\@tmpb\empty% (A) + \decalineh[afhk]{#2}% + \else\if\@tmpb b% (B) + \decalineh[bfhk]{#2}% + \else\if\@tmpb c% (C) + \decalineh[cfhk]{#2}% + \fi\fi\fi\fi% +\else% added 1998/11/23 by S. Fujita + \decalineh[@#1]{#2}% + \fi\fi\fi% +}% %end of \tetralineh macro +% \end{macrocode} +% \end{macro} +% +% \section{Anthracene derivatives} +% \subsection{Perhydro-anthracene derivatives of Vertical type} +% +% The macro |\hanthracenev| is used for drawing perhydroanthracene +% derivatives of vertical type. +% +% The macro |\hanthracenev| has an argument |SUBSLIST| as well as an optional +% argument |BONDLIST|. +% +% \begin{verbatim} +% *********************************** +% * perhydro anthracene derivatives * +% * (vertical type) * +% *********************************** +% +% \hanthracenev[BONDLIST]{SUBSLIST} +% \end{verbatim} +% +% The |BONDLIST| argument contains one or more +% characters selected form a to p, each of which indicates +% the presence of an inner (endcyclic) double bond on the corresponding +% position. The character A, B, or C indicates an aromatic bond +% pattern (circle). +% \changes{v1.02}{1998/10/14}{BONDLIST: o, O, p and P at the fused bond} +% +% \begin{verbatim} +% BONDLIST = +% +% none : hanthracene +% a : 1,2-double bond +% b : 2,3-double bond +% c : 3,4-double bond +% d : 4,4a-double bond +% e : 10,4a-double bond +% f : 10,10a-double bond +% g : 5,10a-double bond +% h : 5,6-double bond +% i : 6,7-double bond +% j : 8,7-double bond +% k : 8,8a-double bond +% l : 9,8a-double bond +% m : 9,9a-double bond +% n : 1,9a-double bond +% o : 4a,9a-double bond +% O : 4a,9a-double bond in the other ring +% p : 10a,8a-double bond +% P : 10a,8a-double bond in the other ring +% A : right aromatic circle +% B : central aromatic circle +% C : left aromatic circle +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 10 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% \begin{verbatim} +% +% for 11 (fused positions, 9a and 4a) +% +% 11FA : alpha single bond at 9a +% 11FB : beta single bond at 9a +% 11FU : unspecified single bond at 9a +% 11GA : alpha single bond at 4a +% 11GB : beta single bond at 4a +% 11GU : unspecified single bond at 4a +% \end{verbatim} +% +% \begin{verbatim} +% +% for 12 (fused positions, 8a and 10a) +% +% 12FA : alpha single bond at 8a +% 12FB : beta single bond at 8a +% 12FU : unspecified single bond at 8a +% 12GA : alpha single bond at 10a +% 12GB : beta single bond at 10a +% 12GU : unspecified single bond at 10a +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \hanthracenev{1==Cl;2==F;{{10}}==OH} +% \hanthracenev[c]{1==Cl;4==F;2==CH$_{3}$; +% {{11}FA}==OH;{{11}FB}==OH} +% \hanthracenev[eb]{1D==O;4SA==MeO;4SB==OMe;5W==Cl;6==Cl;7==Cl;8==Cl} +% \end{verbatim} +% +% \changes{v1.02}{1998/10/31}{The command \cs{setdecaringv} has +% been stopped to use.} +% \changes{v1.02}{1998/10/31}{Adding \cs{ylpositionh}, \cs{if@ylsw} +% \cs{ylfusedposition}, +% \cs{yl@shiftii}, \cs{@ylii}, \cs{@@ylii}, \cs{yl@shifti}, \cs{@yli}, +% \cs{@yli}, \cs{yl@xdiff} and \cs{yl@ydiff}} +% \changes{v2.00}{1998/12/25}{Added: fused rings} +% +% \begin{macro}{\hanthracenev} +% \begin{macrocode} +\def\hanthracenev{\@ifnextchar[{\@hanthracenev[@}{\@hanthracenev[r]}} +\def\@hanthracenev[#1]#2{% +% bonds for outer skeleton +\@reset@ylsw\reset@@yl +\ylposition{#2}{-7}{0}{2}{0}% %for 8 positions +\if@ylsw \ifx\@@ylii\empty +\def\@@ylii{0}\def\@@yli{0}\fi +\else\ylposition{#2}{-1}{3}{7}{0}% for 5 to 7 positions +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{0}\def\@@yli{0}\fi\else +\ylposition{#2}{0}{0}{5}{0}% for 1 to 4 positions +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-684}\def\@@yli{0}\fi\else +\ylposition{#2}{-8}{0}{2}{0}%for 9-position +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-342}\def\@@yli{0}\fi\else +\ylposition{#2}{-6}{3}{5}{0}%for 10-position +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-342}\def\@@yli{0}\fi\else +\ylfusedposition{#2}{-11}{-1}{1}{0}% for 9a and 4a +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-342}\def\@@yli{0}\fi\else +\ylfusedposition{#2}{-12}{-1}{1}{0}% for 8a and 10a +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{0}\def\@@yli{0}\fi\fi +\if@ylsw + \yl@shiftii=\@ylii + \ifx\@@ylii\empty\else + \advance\yl@shiftii\@@ylii\fi + \yl@shifti=\@yli + \ifx\@@yli\empty\else + \advance\yl@shifti\@@yli\fi + \advance\yl@shiftii\yl@xdiff + \advance\yl@shifti\yl@ydiff + \begin{sfpicture}(0,0)(-\yl@shiftii,-\yl@shifti)% + \reset@yl@xydiff%1999/1/6 by S. Fujita +\else + \begin{sfpicture}(1200,880)(-\shiftii,-\shifti)% + \origptoutput{hanthracenev}% +\fi + \Put@Line(0,406)(-5,-3){171}% %bond 8-7 + \Put@Line(0,406)(5,-3){171}% %bond 8-8a + \Put@Line(0,0)(-5,3){171}% %bond 5-6 + \Put@Line(0,0)(5,3){171}% %bond 5-10a + \Put@Line(171,103)(0,1){200}% %bond 10a-8a + \Put@Line(-171,103)(0,1){200}% %bond 6-7 + \Put@Line(342,406)(-5,-3){171}% %bond 9-8a + \Put@Line(342,406)(5,-3){171}% %bond 9-9a + \Put@Line(342,0)(-5,3){171}% %bond 10-10a + \Put@Line(342,0)(5,3){171}% %bond 10-4a + \Put@Line(513,103)(0,1){200}% %bond 4a-9a + %%%% + \Put@Line(684,406)(-5,-3){171}% %bond 1-9a 1-6 + \Put@Line(684,406)(5,-3){171}% %bond 1-2 1-2 + \Put@Line(855,103)(0,1){200}% %bond 3-2 3-2 + \Put@Line(684,0)(5,3){171}% %bond 4-3 4-3 + \Put@Line(684,0)(-5,3){171}% %bond 4-4a 4-5 +% inner double bonds +\@tfor\member:=#1\do{% +\if\member r%no endcyclic double bonds +\else\if\member a% + \Put@Line(690,364)(5,-3){126}% %double bond 1-2 +\else\if\member b% + \Put@Line(822,129)(0,1){148}% %double bond 3-2 +\else\if\member c% + \Put@Line(690,42)(5,3){126}% %double bond 4-3 +\else\if\member d% + \Put@Line(690,42)(-5,3){126}% %double bond 4-4a +\else\if\member e% + \Put@Line(348,42)(5,3){126}% %double bond 10-4a +\else\if\member f% + \Put@Line(348,42)(-5,3){126}% %double bond 10-10a +\else\if\member g% + \Put@Line(6,42)(5,3){126}% %double bond 5-10a +\else\if\member h% + \Put@Line(-6,42)(-5,3){126}% %double bond 5-6 +\else\if\member i% + \Put@Line(-138,129)(0,1){148}% %double bond 6-7 +\else\if\member j% + \Put@Line(-6,364)(-5,-3){126}% %double bond 8-7 +\else\if\member k% + \Put@Line(6,364)(5,-3){126}% %double bond 8-8a +\else\if\member l% + \Put@Line(348,364)(-5,-3){126}% %double bond 9-8a +\else\if\member m% + \Put@Line(348,364)(5,-3){126}% %double bond 9-9a +\else\if\member n% + \Put@Line(690,364)(-5,-3){126}% %double bond 1-9a +\else\if\member o% + \Put@Line(544,129)(0,1){148}% %double bond 4a-9a +\else\if\member O% + \Put@Line(482,129)(0,1){148}% %double bond 4a-9a at the other ring +\else\if\member p% + \Put@Line(138,129)(0,1){148}% %double bond 10a-8a +\else\if\member P% + \Put@Line(204,129)(0,1){148}% %double bond 10a-8a at the other ring +\else\if\member C%left aromatic circle + \Put@oCircle(0,203){240}% %circle +\else\if\member B%right aromatic circle + \Put@oCircle(342,203){240}% %circle +\else\if\member A%right aromatic circle + \Put@oCircle(684,203){240}% %circle +\else +%setting fused rings + \expandafter\twoCH@R\member//% + \set@fusion@hanthrav +\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}% +%exocyclic bonds and substituents +\global\drawsamesubsttrue%2002/05/30 warning on +\Put@Direct(0,0){\setsixringv{#2}{-7}{0}{2}{0}}% %for 8 positions +\global\drawsamesubstfalse%2002/05/30 warning off +\Put@Direct(0,0){\setsixringv{#2}{-1}{3}{7}{0}}% %for 5 to 7 positions +\Put@Direct(684,0){\setsixringv{#2}{0}{0}{5}{0}}% %for 1 to 4 positions +\Put@Direct(342,0){\setsixringv{#2}{-8}{0}{2}{0}}%for 9-position +\Put@Direct(342,0){\setsixringv{#2}{-6}{3}{5}{0}}%for 10-position +%bonds and substituents for fused positions +\Put@Direct(0,0){\setfusedbond{#2}{-12}{-1}{1}{0}}% for 8a and 10a +\Put@Direct(342,0){\setfusedbond{#2}{-11}{-1}{1}{0}}% for 9a and 4a +\end{sfpicture}}% %end of \hanthracenev macro% +% \end{macrocode} +% \end{macro} +% +% \subsection{Anthracene and anthraquinone derivatives} +% +% The macro |\anthracenev| is used for drawing anthracene derivatives +% of vertical type. +% +% The macro |\anthracenev| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \begin{verbatim} +% ******************************************** +% * anthracene and anthraquinone derivatives * +% * (vertical type) * +% ******************************************** +% +% \anthracenev[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one or two characters for designate +% aromatic bond patterns or for naphthoquinone bond patterns. +% +% \begin{verbatim} +% OPT (bond pattern) +% +% none or r : right-handed double bonds +% l : left-handed double bonds +% A : aromatic circle +% +% p or pa : 9,10-anthraquinone (A) +% pA : 9,10-anthraquinone (circle type) +% +% o : 1,2-anthraquinone (A) +% oa : 1,2-anthraquinone (A') +% oA : 1,2-anthraquinone (circle type) +% ob : 2,3-antharquinone (B) +% oc : 1,2-anthraquinone (C) +% +% q : 1,4-anthraquinone (A) +% qa : 1,4-anthraquinone (A') +% qA : 1,4-anthraquinone (circle type) +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% SUBSLIST: list of substituents +% +% for n = 1 to 10 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \anthracenev{1==Cl;2==F;0FA==;0GA==} +% \anthracenev[A]{1==Cl;4==F;2==CH$_{3}$} +% \anthracenev[eb]{1D==O;4SA==MeO;4SB==OMe;% +% 5W==Cl;6==Cl;7==Cl;8==Cl} +% \end{verbatim} +% +% \begin{macro}{\anthracenev} +% \begin{macrocode} +\def\anthracenev{\@ifnextchar[{\@anthracenev}{\@anthracenev[r]}} +\def\@anthracenev[#1]#2{% + \iforigpt \typeout{command `anthracenev' is % + based on `hanthracenev'.}\fi% +%% \expandafter\threech@r#1{}{}%error1998/11/23 by Shinsaku Fujita + \expandafter\twoCH@R#1//% + \if\@tmpa r% right-handed set of double bonds + \hanthracenev[acflhjo]{#2}% + \else\if\@tmpa l% left-handed set of double bonds + \hanthracenev[acehjmp]{#2}% + \else\if\@tmpa A%aromatic circle + \hanthracenev[ABC]{#2}% + \else\if\@tmpa p%9,10-quinone + \if\@tmpb a% (A)% + \hanthracenev[achjop]{#2}% + \else\ifx\@tmpb\empty% (A) + \hanthracenev[achjop]{#2}% + \else\if\@tmpb A% circle type + \hanthracenev[AC]{#2}% + \else + \hanthracenev[achjop]{#2}% + \fi\fi\fi% + \else\if\@tmpa o%o-quinone + \if\@tmpb a% (A)% + \hanthracenev[cfjhlo]{#2}% + \else\ifx\@tmpb\empty% (A) + \hanthracenev[cehjmp]{#2}% + \else\if\@tmpb b% (B) + \hanthracenev[dfhjln]{#2}% + \else\if\@tmpb c% (C) + \hanthracenev[aehjmp]{#2}% + \else\if\@tmpb A% cicle type + \hanthracenev[cBC]{#2}% + \fi\fi\fi\fi\fi% + \else\if\@tmpa q%1,4-quinone + \if\@tmpb a% (A)% + \hanthracenev[bfhjlo]{#2}% + \else\ifx\@tmpb\empty% (A) + \hanthracenev[behjmp]{#2}% + \else\if\@tmpb A% circle type + \hanthracenev[AB]{#2}% + \else% + \hanthracenev[behjmp]{#2}% + \fi\fi\fi% + \else + \hanthracenev[@#1]{#2}% + \fi\fi\fi\fi\fi\fi% +}% %end of \anthracenev macro% +% \end{macrocode} +% \end{macro} +% +% \section{Phenanthrene derivatives} +% \subsection{Perhydro-phenanthrene derivatives of Vertical type} +% +% The macro |\hphenanthrenev| is used for drawing perhydrophenanthrene +% derivatives of vertical type. +% +% The macro |\hphenanthrenev| has an argument |SUBSLIST| as well as an +% optional argument |BONDLIST|. +% +% \begin{verbatim} +% ************************************* +% * perhydro phenanthrene derivatives * +% * (vertical type) * +% ************************************* +% +% \hphenanthrenev[BONDLIST]{SUBSLIST} +% \end{verbatim} +% +% The |BONDLIST| argument contains one or more +% characters selected form a to p, each of which indicates +% the presence of an inner (endcyclic) double bond on the corresponding +% position. The character A, B, or C indicates an aromatic bond +% pattern (circle). +% \changes{v1.02}{1998/10/14}{BONDLIST: o, O, p and P at the fused bond} +% +% \begin{verbatim} +% +% BONDLIST = +% +% none : hphenanthrene +% a : 1,2-double bond +% b : 2,3-double bond +% c : 3,4-double bond +% d : 4,4a-double bond +% e : 4a,4b-double bond +% f : 4b,5-double bond +% g : 5,6-double bond +% h : 6,7-double bond +% i : 7,8-double bond +% j : 8,8a-double bond +% k : 8a,9-double bond +% l : 9,10-double bond +% m : 10,10a-double bond +% n : 1,10a-double bond +% o : 4a,10a-double bond +% O : 4a,10a-double bond in the other ring +% p : 4b,8a-double bond +% P : 4b,8a-double bond in the other ring +% A : right aromatic circle +% B : central aromatic circle +% C : left aromatic circle +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% SUBSLIST: list of substituents +% +% for n = 1 to 10 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% +% for 11 (fused positions, 4a and 10a) +% +% 11FA : alpha single bond at 4a +% 11FB : beta single bond at 4a +% 11FC : alpha single bond (downward) at 4a +% 11FD : beta single bond (downward) at 4a +% 11FU : unspecified single bond at 4a +% 11GA : alpha single bond at 10a +% 11GB : beta single bond at 10a +% 11FC : alpha single bond (upward) at 10a +% 11FD : beta single bond (upward) at 10a +% 11GU : unspecified single bond at 10a +% +% for 12 (fused positions, 4b and 8a) +% +% 12FA : alpha single bond at 4b +% 12FB : beta single bond at 4b +% 12FU : unspecified single bond at 4b +% 12GA : alpha single bond at 8a +% 12GB : beta single bond at 8a +% 12GU : unspecified single bond at 8a +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \hphenanthrenev{1==Cl;2==F;{{10}}==OH} +% \hphenanthrenev[c]{1==Cl;4==F;2==CH$_{3}$; +% {{11}FA}==OH;{{11}FB}==OH} +% \hphenanthrenev[eb]{1D==O;4SA==MeO;4SB==OMe; +% 5W==Cl;6==Cl;7==Cl;8==Cl} +% \end{verbatim} +% \changes{v1.02}{1998/10/15}{The command \cs{setdecaringv} has +% been stopped to use.} +% \changes{v1.02}{1998/10/31}{Adding \cs{ylpositionh}, \cs{if@ylsw} +% \cs{ylfusedposition}, +% \cs{yl@shiftii}, \cs{@ylii}, \cs{@@ylii}, \cs{yl@shifti}, \cs{@yli}, +% \cs{@yli}, \cs{yl@xdiff} and \cs{yl@ydiff}} +% \changes{v2.00}{1998/11/23}{Added: Fused rings} +% +% \begin{macro}{\hphenanthrenev} +% \begin{macrocode} +\def\hphenanthrenev{% + \@ifnextchar[{\@hphenanthrenev[@}{\@hphenanthrenev[r]}} +\def\@hphenanthrenev[#1]#2{% +% bonds for outer skeleton +\@reset@ylsw\reset@@yl +\ylposition{#2}{-4}{0}{2}{0}% %for 5 position +\if@ylsw \ifx\@@ylii\empty +\def\@@ylii{0}\def\@@yli{0}\fi +\else +\ylposition{#2}{12}{3}{7}{-1}% %for 6 to 8 positions +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{0}\def\@@yli{0}\fi\else +\ylposition{#2}{13}{2}{5}{-1}% %for 9 to 10 positions +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-342}\def\@@yli{0}\fi\else +\ylposition{#2}{4}{0}{4}{-1}% %for 1 to 3 positions +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-513}\def\@@yli{-303}\fi\else +\ylposition{#2}{2}{5}{7}{0}% %for 4-position +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-513}\def\@@yli{-303}\fi\else +\ylfusedposition{#2}{-12}{-1}{1}{0}% % for 4b and 8a +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{0}\def\@@yli{0}\fi\else +\ylfusedposition{#2}{-10}{0}{2}{0}% % for 4a and 10a +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-342}\def\@@yli{0}\fi\fi +\if@ylsw + \yl@shiftii=\@ylii + \ifx\@@ylii\empty\else + \advance\yl@shiftii\@@ylii\fi + \yl@shifti=\@yli + \ifx\@@yli\empty\else + \advance\yl@shifti\@@yli\fi + \advance\yl@shiftii\yl@xdiff + \advance\yl@shifti\yl@ydiff + \begin{sfpicture}(0,0)(-\yl@shiftii,-\yl@shifti) + \reset@yl@xydiff%1999/1/6 by S. Fujita +\else + \begin{sfpicture}(1200,1200)(-\shiftii,-\shifti) + \origptoutput{hphenanthrenev}% +\fi + \Put@Line(0,406)(-5,-3){171}% %bond 6-5 + \Put@Line(0,406)(5,-3){171}% %bond 5-4a + \Put@Line(0,0)(-5,3){171}% %bond 8-7 + \Put@Line(0,0)(5,3){171}% %bond 8-8a + \Put@Line(171,103)(0,1){200}% %bond 8a-4b + \Put@Line(-171,103)(0,1){200}% %bond 7-6 + \Put@Line(342,406)(-5,-3){171}% %bond 4a-4b + \Put@Line(342,406)(5,-3){171}% %bond 4a-10a + \Put@Line(342,0)(-5,3){171}% %bond 9-8a + \Put@Line(342,0)(5,3){171}% %bond 9-10 + \Put@Line(513,103)(0,1){200}% %bond 10-10a + %%%% + \Put@Line(342,406)(0,1){200}% %bond 4a-4 + \Put@Line(513,709)(-5,-3){171}% %bond 3-4 + \Put@Line(513,709)(5,-3){171}% %bond 3-2 + \Put@Line(684,406)(0,1){200}% %bond 1-2 + \Put@Line(513,303)(5,3){171}% %bond 10a-1 +% inner double bonds +\@tfor\member:=#1\do{% +\if\member r%no endcyclic double bonds +\else\if\member a% + \Put@Line(651,432)(0,1){148}% %double bond 1-2 +\else\if\member b% + \Put@Line(519,667)(5,-3){126}% %double bond 3-2 +\else\if\member c% + \Put@Line(519,667)(-5,-3){126}% %double bond 3-4 +\else\if\member d% + \Put@Line(375,432)(0,1){148}% %double bond 4a-4 +\else\if\member e% + \Put@Line(348,364)(-5,-3){126}% %double bond 4a-4b +\else\if\member f% + \Put@Line(6,364)(5,-3){126}% %double bond 5-4b +\else\if\member g% + \Put@Line(-6,364)(-5,-3){126}% %double bond 5-6 +\else\if\member h% + \Put@Line(-138,129)(0,1){148}% %double bond 6-7 +\else\if\member i% + \Put@Line(-6,42)(-5,3){126}% %double bond 8-7 +\else\if\member j% + \Put@Line(6,42)(5,3){126}% %double bond 8-8a +\else\if\member k% + \Put@Line(348,42)(-5,3){126}% %double bond 9-8a +\else\if\member l% + \Put@Line(348,42)(5,3){126}% %double bond 9-10 +\else\if\member m% + \Put@Line(482,129)(0,1){148}% %double bond 10-10a +\else\if\member n% + \Put@Line(519,345)(5,3){126}% %double bond 10a-1 +\else\if\member o% + \Put@Line(507,345)(-5,3){126}% %double bond 10a-4a +\else\if\member O% + \Put@Line(348,364)(5,-3){126}% %double bond 4a-10a +\else\if\member p% + \Put@Line(138,129)(0,1){148}% %double bond 8a-4b +\else\if\member P% + \Put@Line(204,129)(0,1){148}% %double bond 8a-4b +\else\if\member C%left aromatic circle + \Put@oCircle(0,203){240}% %circle +\else\if\member B%right aromatic circle + \Put@oCircle(342,203){240}% %circle +\else\if\member A%right aromatic circle + \Put@oCircle(513,506){240}% %circle +\else +% setting fused rings + \expandafter\twoCH@R\member//% + \set@fusion@hphenanv +\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}% +%exocyclic bonds and substituents +\global\drawsamesubsttrue%2002/05/30 warning on +\Put@Direct(0,0){\setsixringv{#2}{-4}{0}{2}{0}}% %for 5 position +\global\drawsamesubstfalse%2002/05/30 warning off +\Put@Direct(0,0){\setsixringv{#2}{12}{3}{7}{-1}}% %for 6 to 8 positions +\Put@Direct(342,0){\setsixringv{#2}{13}{2}{5}{-1}}% %for 9 to 10 positions +\Put@Direct(513,303){\setsixringv{#2}{4}{0}{4}{-1}}% %for 1 to 3 positions +\Put@Direct(513,303){\setsixringv{#2}{2}{5}{7}{0}}% %for 4-position +%bonds and substituents for fused positions +\Put@Direct(0,0){\setfusedbond{#2}{-12}{-1}{1}{0}}% % for 4b and 8a +\Put@Direct(342,0){\setfusedbond{#2}{-10}{0}{2}{0}}% % for 4a and 10a +\end{sfpicture}}% %end of \hphenanthrenev macro% +% \end{macrocode} +% \end{macro} +% +% \subsection{Phenanthrene and phenanthroquinone derivatives} +% +% The macro |\phenanthrenev| is used for drawing phenanthrene derivatives +% of vertical type. +% +% The macro |\anthracenev| has an argument |SUBSLIST| as well as an optional +% argument |OPT|. The latter designates a bond pattern in place of +% individual exocyclic bonds. +% +% \begin{verbatim} +% ********************************* +% * phenanthrene and derivatives * +% * (vertical type) * +% ********************************* +% +% \phenanthrenev[OPT]{SUBSLIST} +% \end{verbatim} +% +% The |OPT| argument contains one or two characters for designate +% aromatic bond patterns or for naphthoquinone bond patterns. +% +% \begin{verbatim} +% OPT (bond pattern) +% +% none or r : right-handed double bonds +% A : aromatic circle +% +% p or pa : 1,4-quinone (A) +% pA : 1,4-quinone (circle type) +% +% o or oa : 1,2-quinone (A) +% oA : 1,2-quinone (circle type) +% ob : 2,3-quinone (B) +% oc : 3,4-anthraquinone (C) +% +% q or qa : 9,10-quinone +% qA : 9,10-quinone (circle type) +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% SUBSLIST: list of substituents +% +% for n = 1 to 10 +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom +% nB : beta single bond at n-atom +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \phenanthrenev{1==Cl;2==F} +% \phenanthrenev[A]{1==Cl;4==F;2==CH$_{3}$} +% \phenanthrenev[eb]{1D==O;4SA==MeO;4SB==OMe;% +% 5W==Cl;6==Cl;7==Cl;8==Cl} +% \end{verbatim} +% +% \begin{macro}{\phenanthrenev} +% \begin{macrocode} +\def\phenanthrenev{\@ifnextchar[{\@phenanthrenev}{\@phenanthrenev[r]}} +\def\@phenanthrenev[#1]#2{% + \iforigpt \typeout{command `phenanthrenev' is % + based on `hphenantherenv'.}\fi% + \expandafter\threech@r#1{}{}% + \if\@tmpa r% right-handed set of double bonds + \hphenanthrenev[acgilop]{#2}% + \else\if\@tmpa A%aromatic circle + \hphenanthrenev[ABC]{#2}% + \else\if\@tmpa p%1,4-quinone + \if\@tmpb a% (A)% + \hphenanthrenev[bgilop]{#2}% + \else\ifx\@tmpb\empty% (A) + \hphenanthrenev[bgilop]{#2}% + \else\if\@tmpb A% circle type + \hphenanthrenev[BCb]{#2}% + \else + \hphenanthrenev[bgilop]{#2}% + \fi\fi\fi% + \else\if\@tmpa o%o-quinone + \if\@tmpb a% (A)% + \hphenanthrenev[cgilop]{#2}% + \else\ifx\@tmpb\empty% (A) + \hphenanthrenev[cgilop]{#2}% + \else\if\@tmpb b% (B) + \hphenanthrenev[dgilnp]{#2}% + \else\if\@tmpb c% (C) + \hphenanthrenev[agilop]{#2}% + \else\if\@tmpb A% cicle type + \hphenanthrenev[cBC]{#2}% + \fi\fi\fi\fi\fi% + \else\if\@tmpa q%9,10-quinone + \if\@tmpb a% (A)% + \hphenanthrenev[acgiop]{#2}% + \else\ifx\@tmpb\empty% (A) + \hphenanthrenev[acgiop]{#2}% + \else\if\@tmpb A% circle type + \hphenanthrenev[AC]{#2}% + \else + \hphenanthrenev[acgiop]{#2}% + \fi\fi\fi% + \else + \hphenanthrenev[@#1]{#2}% + \fi\fi\fi\fi\fi% +}% %end of \phenanthrenev macro% +% \end{macrocode} +% \end{macro} +% +% \section{Steroids} +% \subsection{Steroids without a chain} +% +% The macro |\steroid| is used for drawing steroids. +% +% The macro |\steroid| has an argument |SUBSLIST| as well as an +% optional argument |BONDLIST|. +% +% \begin{verbatim} +% *********************** +% * steroid derivatives * +% *********************** +% +% \steroid[BONDLIST]{SUBSLIST} +% \end{verbatim} +% +% The |BONDLIST| argument contains one or more +% characters selected form a to t, each of which indicates +% the presence of an inner (endcyclic) double bond on the corresponding +% position. The character A, B, or C indicates an aromatic bond +% pattern (circle). +% \changes{v1.02}{1998/10/15}{BONDLIST: k, K, h, H, o and O +% at the fused bond} +% +% \begin{verbatim} +% BONDLIST = +% +% none: steroid skeleton +% a : 1,2-double bond b : 2,3-double bond +% c : 3,4-double bond d : 4,5-double bond +% e : 6,5-double bond f : 6,7-double bond +% g : 7,8-double bond +% h : 9,8-double bond +% h : 9,8-double bond in the other bond +% i : 9,10-double bond j : 1,10-double bond +% k : 5,10-double bond +% K : 5,10-double bond in the other bond +% l : 9,11-double bond +% m : 12,11-double bond n : 12,13-double bond +% o : 14,13-double bond +% O : 14,13-double bond in the other bond +% p : 8,14-double bond +% q : 14,15-double bond r : 15,16-double bond +% s : 17,16-double bond t : 17,13-double bond +% A : aromatic A ring B : aromatic B ring +% C : aromatic C ring +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% +% SUBSLIST: list of substituents +% +% for n = 1 to 17 (execpt fused positions) +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom (boldface) +% nB : beta single bond at n-atom (dotted line) +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% For numbers larger than 9 (two digits), you should designate +% the SUBSLIST as +% +% \begin{verbatim} +% {{11}A}==Cl;{{12}SA}==H;{{12}SB}==Cl; +% \end{verbatim} +% +% \begin{verbatim} +% for n = 5,8,9,10,13 and 14 (fused positions) +% +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom (boldface) +% nB : beta single bond at n-atom (dotted line) +% nU : unspecified single bond at n-atom +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \steroid{1==Cl;2==F;{{10}}==OH} +% \steroid[c]{1==Cl;4==F;2==CH$_{3}$; +% {{11}SA}==OH;{{11}SB}==OH} +% \steroid[eb]{1D==O;4SA==MeO;4SB==OMe; +% 5==Cl;6==Cl;7==Cl;8==Cl} +% \end{verbatim} +% \changes{v1.02}{1998/10/15}{The command \cs{setdecaringv} has +% been stopped to use.} +% \changes{v1.02}{1998/10/31}{Adding \cs{ylpositionh}, \cs{if@ylsw} +% \cs{ylfusedposition}, +% \cs{yl@shiftii}, \cs{@ylii}, \cs{@@ylii}, \cs{yl@shifti}, \cs{@yli}, +% \cs{@yli}, \cs{yl@xdiff} and \cs{yl@ydiff}} +% \changes{v1.02}{1998/10/31}{Inner commands \cs{yl@steroidposition} +% and \cs{@steroidskeleton} are separated from the \cs{@steroid} command.} +% \changes{v2.00}{1998/12/5}{Add: fused rings} +% +% \begin{macro}{\steroid} +% \begin{macro}{\yl@steroidposition} +% \begin{macro}{\@steroidskeleton} +% \begin{macrocode} +\def\steroid{\@ifnextchar[{\@steroid[@}{\@steroid[Z]}} +\def\@steroid[#1]#2{% +%initialize bug fix 2010/10/01 +\iniatom\iniflag%initialize +% bonds for outer skeleton +\@reset@ylsw\reset@@yl +\yl@steroidposition{#2}% +\if@ylsw + \yl@shiftii=\@ylii + \ifx\@@ylii\empty\else + \advance\yl@shiftii\@@ylii\fi + \yl@shifti=\@yli + \ifx\@@yli\empty\else + \advance\yl@shifti\@@yli\fi + \advance\yl@shiftii\yl@xdiff + \advance\yl@shifti\yl@ydiff + \begin{sfpicture}(0,0)(-\yl@shiftii,-\yl@shifti) + \reset@yl@xydiff%1999/1/6 by S. Fujita +\else + \begin{sfpicture}(1600,1300)(-\shiftii,-\shifti) + \origptoutput{steroid}% +\fi + \Put@Direct(0,0){\@steroidskeleton{#1}{#2}}% +\end{sfpicture}}% %end of \steroid macro% +% \end{macrocode} +% +% The |\yl@steroidposition| is derived from |\ylposition| and +% |\ylatombondposition| to use in the |\steroid| command as well as +% in the |\steroidchain| command. +% \changes{v1.02}{1998/10/31}{Inner commands \cs{yl@steroidposition} +% and \cs{@steroidskeleton} are separated from the \cs{@steroid} command.} +% +% \begin{macrocode} +\def\yl@steroidposition#1{% +\ylposition{#1}{0}{0}{2}{0}% %for 1 +\if@ylsw \ifx\@@ylii\empty +\def\@@ylii{0}\def\@@yli{0}\fi +\else +\ylposition{#1}{8}{3}{7}{-1}% %for 2 to 4 positions +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{0}\def\@@yli{0}\fi\else +\ylposition{#1}{10}{2}{5}{-1}% %for 6 to 7 positions +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-342}\def\@@yli{0}\fi\else +\ylposition{#1}{-11}{0}{2}{0}%for 12 position +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-513}\def\@@yli{-303}\fi\else +\ylposition{#1}{-5}{5}{7}{0}% %for 11 position +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-513}\def\@@yli{-303}\fi\else +\ylposition{#1}{18}{0}{4}{-1}%for 15 to 17 positions +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-855}\def\@@yli{-303}\fi\else +\ylatombondposition{#1}{-4}{7}% % for 5 +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-171}\def\@@yli{-103}\fi\else +\ylatombondposition{#1}{-9}{1}% % for 10 +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-171}\def\@@yli{-303}\fi\else +\ylatombondposition{#1}{-7}{1}% % for 8 +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-513}\def\@@yli{-303}\fi\else +\ylatombondposition{#1}{-8}{7}% % for 9 +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-342}\def\@@yli{-406}\fi\else +\ylatombondposition{#1}{-13}{7}% % for 14 +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-684}\def\@@yli{-406}\fi\else +\ylatombondposition{#1}{-12}{1}% % for 13 +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-684}\def\@@yli{-606}\fi\fi% +}% end of \yl@steroidposition +% \end{macrocode} +% +% The |\@steroidskeleton| is separated from the definition of |\steroid| +% so as to be used also in the definition of |\steroidchain|. +% \changes{v1.02}{1998/10/31}{Inner commands \cs{yl@steroidposition} +% and \cs{@steroidskeleton} are separated from the \cs{@steroid} command.} +% \changes{v2.00}{1998/11/23}{Added: fused rings} +% +% \begin{macrocode} +\def\@steroidskeleton#1#2{% + \Put@Line(0,406)(-5,-3){171}% %bond 1-2 + \Put@Line(0,406)(5,-3){171}% %bond 1-10 + \Put@Line(0,0)(-5,3){171}% %bond 4-3 + \Put@Line(0,0)(5,3){171}% %bond 4-5 + \Put@Line(171,103)(0,1){200}% %bond 5-10 + \Put@Line(-171,103)(0,1){200}% %bond 3-2 + \Put@Line(342,406)(-5,-3){171}% %bond 9-10 + \Put@Line(342,406)(5,-3){171}% %bond 9-8 + \Put@Line(342,0)(-5,3){171}% %bond 6-5 + \Put@Line(342,0)(5,3){171}% %bond 6-7 + \Put@Line(513,103)(0,1){200}% %bond 7-8 + %%%% + \Put@Line(342,406)(0,1){200}% %bond 9-11 + \Put@Line(513,709)(-5,-3){171}% %bond 12-11 + \Put@Line(513,709)(5,-3){171}% %bond 12-13 + \Put@Line(684,406)(0,1){200}% %bond 14-13 + \Put@Line(513,303)(5,3){171}% %bond 8-14 + %%%% + \Put@Line(855,709)(-5,-3){171}% %bond 17-13 + \Put@Line(855,709)(5,-3){171}% %bond 17-16 + \Put@Line(1026,406)(0,1){200}% %bond 15-16 + \Put@Line(684,406)(1,0){342}% %bond 14-15 +% inner double bonds +\@tfor\member:=#1\do{% +\if\member Z%no endcyclic double bonds +\else\if\member a% + \Put@Line(-6,364)(-5,-3){126}% %double bond 1-2 5-6 +\else\if\member b% + \Put@Line(-138,129)(0,1){148}% %double bond 3-2 6-7 +\else\if\member c% + \Put@Line(-6,42)(-5,3){126}% %double bond 4-3 8-7 +\else\if\member d% + \Put@Line(6,42)(5,3){126}% %double bond 4-5 8-8a +\else\if\member e% + \Put@Line(348,42)(-5,3){126}% %double bond 6-5 9-8a +\else\if\member f% + \Put@Line(348,42)(5,3){126}% %double bond 6-7 9-10 +\else\if\member g% + \Put@Line(482,129)(0,1){148}% %double bond 7-8 10-10a +\else\if\member h% + \Put@Line(507,345)(-5,3){126}% %double bond 8-9 10a-4a +\else\if\member H% + \Put@Line(348,364)(5,-3){126}% %double bond 9-8 4a-10a +\else\if\member i% + \Put@Line(348,364)(-5,-3){126}% %double bond 9-10 4a-4b +\else\if\member j% + \Put@Line(6,364)(5,-3){126}% %double bond 1-10 5-4b +\else\if\member k% + \Put@Line(138,129)(0,1){148}% %double bond 5-10 8a-4b +\else\if\member K% + \Put@Line(204,129)(0,1){148}% %double bond 5-10 8a-4b +\else\if\member l% + \Put@Line(375,432)(0,1){148}% %double bond 9-11 4-5 +\else\if\member m% + \Put@Line(519,667)(-5,-3){126}% %double bond 12-11 3-4 +\else\if\member n% + \Put@Line(519,667)(5,-3){126}% %double bond 12-13 3-2 +\else\if\member o% + \Put@Line(651,432)(0,1){148}% %double bond 13-14 1-2 +\else\if\member O% + \Put@Line(717,432)(0,1){148}% %double bond 13-14 1-2 +\else\if\member p% + \Put@Line(519,345)(5,3){126}% %double bond 8-14 10a-1 +\else\if\member q% + \Put@Line(720,439)(1,0){260}% %double bond 14-15 +\else\if\member r% + \Put@Line(993,432)(0,1){148}% %double bond 15-16 1-2 +\else\if\member s% + \Put@Line(861,667)(5,-3){126}% %double bond 17-16 3-2 +\else\if\member t% + \Put@Line(861,667)(-5,-3){126}% %double bond 17-13 3-4 +\else\if\member A%left aromatic circle + \Put@oCircle(0,203){240}% %circle +\else\if\member B%right aromatic circle + \Put@oCircle(342,203){240}% %circle +\else\if\member C%right aromatic circle + \Put@oCircle(513,506){240}% %circle +\else +% setting fused rings + \expandafter\twoCH@R\member//% + \set@fusion@steroid +\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% +\fi\fi\fi\fi\fi\fi\fi\fi\fi}% +%exocyclic bonds and substituents +\iniflag +\global\drawsamesubsttrue%2002/05/30 warning on +\Put@Direct(0,0){\setsixringv{#2}{0}{0}{2}{0}}% %for 1 +\global\drawsamesubstfalse%2002/05/30 warning off +\Put@Direct(0,0){\setsixringv{#2}{8}{3}{7}{-1}}% %for 2 to 4 positions +\Put@Direct(342,0){\setsixringv{#2}{10}{2}{5}{-1}}% %for 6 to 7 positions +\Put@Direct(513,303){\setsixringv{#2}{-11}{0}{2}{0}}%for 12 position +\Put@Direct(513,303){\setsixringv{#2}{-5}{5}{7}{0}}% %for 11 position +\Put@Direct(855,303){\setsixringv{#2}{18}{0}{4}{-1}}%for 15 to 17 positions +%bonds and substituents for fused positions +\Put@Direct(171,103){\setatombond{#2}{-4}{7}}% % for 5 +\Put@Direct(171,303){\setatombond{#2}{-9}{1}}% % for 10 +\Put@Direct(513,303){\setatombond{#2}{-7}{1}}% % for 8 +\Put@Direct(342,406){\setatombond{#2}{-8}{7}}% % for 9 +\Put@Direct(684,406){\setatombond{#2}{-13}{7}}% % for 14 +\Put@Direct(684,606){\setatombond{#2}{-12}{1}}% % for 13 +}% end of \@steroidskeleton +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% The macro |\set@fusion@steroid| is an inner command contained +% in the definition of |\steroidskeleton|, where +% the macro is used for setting an additive +% or a fused ring at each bond (designated by |\@@tmpa|). The +% fused ring is typeset by the inner command |\set@fusionadd@sixv|. +% +% \begin{macro}{\set@fusion@steroid} +% \changes{v2.00}{1998/11/23}{New command: \cs{set@fusion@steroid}} +% \begin{macrocode} +\def\set@fusion@steroid{% + \let\@@tmpa=\@tmpa + \let\@@tmpb=\@tmpb + \if\@tmpa a% + \edef\@@tmpa{f}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \else\if\@tmpa A% + \edef\@@tmpa{F}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \else\if\@tmpa b% + \edef\@@tmpa{e}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \else\if\@tmpa B% + \edef\@@tmpa{E}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \else\if\@tmpa c% + \edef\@@tmpa{d}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \else\if\@tmpa C% + \edef\@@tmpa{D}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \else\if\@tmpa d% + \edef\@@tmpa{c}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `d'}% + \fi + \else\if\@tmpa D% + \edef\@@tmpa{C}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `D'}% + \fi + \else\if\@tmpa e% + \edef\@@tmpa{d}% + \Put@Direct(342,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `e'}% + \fi + \else\if\@tmpa E% + \edef\@@tmpa{D}% + \Put@Direct(342,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `E'}% + \fi + \else\if\@tmpa f% + \edef\@@tmpa{c}% + \Put@Direct(342,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `f'}% + \fi + \else\if\@tmpa F% + \edef\@@tmpa{C}% + \Put@Direct(342,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `f'}% + \fi + \else\if\@tmpa g% + \edef\@@tmpa{b}% + \Put@Direct(342,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `g'}% + \fi + \else\if\@tmpa G% + \edef\@@tmpa{B}% + \Put@Direct(342,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `g'}% + \fi + \else\if\@tmpa h% + \edef\@@tmpa{a}% + \Put@Direct(342,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Forbidden Fusion for bond `h'}% + \fi + \else\if\@tmpa H% + \edef\@@tmpa{A}% + \Put@Direct(342,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Forbidden Fusion for bond `H'}% + \fi + \else\if\@tmpa i% + \edef\@@tmpa{f}% + \Put@Direct(342,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `i'}% + \fi + \else\if\@tmpa I% + \edef\@@tmpa{F}% + \Put@Direct(342,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `I'}% + \fi + \else\if\@tmpa j% + \edef\@@tmpa{a}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `j'}% + \fi + \else\if\@tmpa J% + \edef\@@tmpa{A}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `J'}% + \fi + \else\if\@tmpa k% + \edef\@@tmpa{b}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Forbidden Fusion for bond `k'}% + \fi + \else\if\@tmpa K% + \edef\@@tmpa{B}% + \Put@Direct(0,0){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Forbidden Fusion for bond `K'}% + \fi + \else\if\@tmpa l% + \edef\@@tmpa{e}% + \Put@Direct(513,303){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `l'}% + \fi + \else\if\@tmpa L% + \edef\@@tmpa{E}% + \Put@Direct(513,303){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `L'}% + \fi + \else\if\@tmpa m% + \edef\@@tmpa{f}% + \Put@Direct(513,303){\set@fusionadd@sixv}% + \else\if\@tmpa M% + \edef\@@tmpa{F}% + \Put@Direct(513,303){\set@fusionadd@sixv}% + \else\if\@tmpa n% + \edef\@@tmpa{a}% + \Put@Direct(513,303){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `n'}% + \fi + \else\if\@tmpa N% + \edef\@@tmpa{A}% + \Put@Direct(513,303){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `N'}% + \fi + \else\if\@tmpa o% + \edef\@@tmpa{b}% + \Put@Direct(513,303){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Forbidden Fusion for bond `o'}% + \fi + \else\if\@tmpa O% + \edef\@@tmpa{B}% + \Put@Direct(513,303){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Forbidden Fusion for bond `O'}% + \fi + \else\if\@tmpa p% + \edef\@@tmpa{c}% + \Put@Direct(513,303){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `N'}% + \fi + \else\if\@tmpa P% + \edef\@@tmpa{C}% + \Put@Direct(513,303){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `N'}% + \fi + \else\if\@tmpa q% + \XyMTeXWarning{Mismatched dimension for bond `q'}% + \else\if\@tmpa Q% + \XyMTeXWarning{Mismatched dimension for bond `Q'}% + \else\if\@tmpa r% + \edef\@@tmpa{b}% + \Put@Direct(855,303){\set@fusionadd@sixv}% + \else\if\@tmpa R% + \edef\@@tmpa{B}% + \Put@Direct(855,303){\set@fusionadd@sixv}% + \else\if\@tmpa s% + \edef\@@tmpa{a}% + \Put@Direct(855,303){\set@fusionadd@sixv}% + \else\if\@tmpa S% + \edef\@@tmpa{A}% + \Put@Direct(855,303){\set@fusionadd@sixv}% + \else\if\@tmpa t% + \edef\@@tmpa{f}% + \Put@Direct(855,303){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `t'}% + \fi + \else\if\@tmpa T% + \edef\@@tmpa{F}% + \Put@Direct(855,303){\set@fusionadd@sixv}% + \if@smallringsw\else + \XyMTeXWarning{Unfavorable Fusion for bond `T'}% + \fi + \fi\fi\fi\fi\fi\fi\fi\fi% + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% +}% end of the macro \set@fusion@steroid +% \end{macrocode} +% \end{macro} +% +% \subsection{Steroids with a chain} +% +% The macro |\steroidchain| is used for drawing steroids. +% +% The macro |\steroidchain| has an argument |SUBSLIST| as well as an +% optional argument |BONDLIST|. +% +% \begin{verbatim} +% ************************************** +% * steroid derivatives having a chain * +% ************************************** +% +% \steroidchain[BONDLIST]{SUBSLIST} +% \end{verbatim} +% +% The |BONDLIST| argument contains one or more +% characters selected form a to t, each of which indicates +% the presence of an inner (endcyclic) double bond on the corresponding +% position. The character A, B, or C indicates an aromatic bond +% pattern (circle). A two-character string `Z?' indicates +% a double bond in the side-chain. +% +% \begin{verbatim} +% BONDLIST = +% +% (double bonds for the steroid skeleton) +% none: no action on the steroid skeleton +% a : 1,2-double bond b : 2,3-double bond +% c : 3,4-double bond d : 4,5-double bond +% e : 6,5-double bond f : 6,7-double bond +% g : 7,8-double bond h : 9,8-double bond +% i : 9,10-double bond j : 1,10-double bond +% k : 5,10-double bond l : 9,11-double bond +% m : 12,11-double bond n : 12,13-double bond +% o : 14,13-double bond p : 8,14-double bond +% q : 14,15-double bond r : 15,16-double bond +% s : 17,16-double bond t : 17,13-double bond +% A : aromatic A ring B : aromatic B ring +% C : aromatic C ring +% \end{verbatim} +% +% \begin{verbatim} +% (double bonds for the side chain) +% Z : no action +% Za : 17,20-double bond Zb : 20,22-double bond +% Zc : 22,23-double bond Zd : 23,24-double bond +% Ze : 24,25-double bond Zf : 25,26-double bond +% Zg : 25,27-double bond +% \end{verbatim} +% +% For a two-character indicator, you should write the BONDLIST +% as, e.g. +% +% \begin{verbatim} +% [b{Za}{Zc}...] +% \end{verbatim} +% +% The |SUBSLIST| argument contains one or more substitution descriptors +% which are separated from each other by a semicolon. Each substitution +% descriptor has a locant number with a bond modifier and a substituent, +% where these are separated with a double equality symbol. +% +% \begin{verbatim} +% SUBSLIST: list of substituents +% +% for n = 1 to 24 (execpt fused positions) +% +% nD : exocyclic double bond at n-atom +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom (boldface) +% nB : beta single bond at n-atom (dotted line) +% nSA : alpha single bond at n-atom (boldface) +% nSB : beta single bond at n-atom (dotted line) +% nSa : alpha (not specified) single bond at n-atom +% nSb : beta (not specified) single bond at n-atom +% +% nSd : alpha single bond at n-atom (dotted line) +% with an alternative direction to nSA +% nSu : beta single bond at n-atom (boldface) +% with an alternative direction to nSB +% nFA : alpha single bond at n-atom (dotted line) +% for ring fusion +% nFB : beta single bond at n-atom (boldface) +% for ring fusion +% nGA : alpha single bond at n-atom (dotted line) +% for the other ring fusion +% nGB : beta single bond at n-atom (boldface) +% for the other ring fusion +% \end{verbatim} +% +% For numbers larger than 9 (two digits), you should designate +% the SUBSLIST as +% +% \begin{verbatim} +% {{11}A}==Cl;{{12}SA}==H;{{12}SB}==Cl; ... +% \end{verbatim} +% +% \begin{verbatim} +% for n = 5,8,9,10,13,14,and 25 (fused positions etc.) +% +% n or nS : exocyclic single bond at n-atom +% nA : alpha single bond at n-atom (boldface) +% nB : beta single bond at n-atom (dotted line) +% nU : unspecified single bond at n-atom +% \end{verbatim} +% +% \begin{verbatim} +% e.g. +% +% \steroidchain{1==Cl;2==F;{{10}}==OH} +% \steroidchain[c]{1==Cl;4==F;2==CH$_{3}$;% +% {{11}SA}==OH;{{11}SB}==OH} +% \steroidchain[b]{1D==O;4SA==MeO;4SB==OMe;% +% ;6==Cl;7==Cl;11==Cl} +% \end{verbatim} +% +% \changes{v1.02}{1998/10/31}{Adding \cs{ylpositionh}, \cs{if@ylsw} +% \cs{ylfusedposition}, +% \cs{yl@shiftii}, \cs{@ylii}, \cs{@@ylii}, \cs{yl@shifti}, \cs{@yli}, +% \cs{@yli}, \cs{yl@xdiff} and \cs{yl@ydiff}} +% \changes{v1.02}{1998/10/31}{The inner commands \cs{yl@steroidposition} +% is used. The old \cs{steroid} is replaced by \cs{@steroidskeleton}.} +% \changes{v2.00}{1998/11/31}{Add: fused rings} +% +% \begin{macro}{\steroidchain} +% \begin{macrocode} +\def\steroidchain{\@ifnextchar[{\@steroidchain[@}{\@steroidchain[Z]}} +\def\@steroidchain[#1]#2{% +%shift due to the steroid skeleton +\@reset@ylsw\reset@@yl +\yl@steroidposition{#2}% +%shift due to the side chain +\ylposition{#2}{-21}{0}{3}{0}%for 22 and 23 positions +\if@ylsw \ifx\@@ylii\empty +\def\@@ylii{-1026}\def\@@yli{-606}\fi +\else +\ylposition{#2}{-14}{5}{7}{0}%for 20 position +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-1026}\def\@@yli{-606}\fi\else +\ylposition{#2}{-20}{3}{5}{0}%for 24 position +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-1197}\def\@@yli{-709}\fi\else +\ylatombondposition{#2}{-24}{4}% % for 5 +\fi +\if@ylsw\ifx\@@ylii\empty +\def\@@ylii{-1397}\def\@@yli{-709}\fi\fi +\if@ylsw + \yl@shiftii=\@ylii + \ifx\@@ylii\empty\else + \advance\yl@shiftii\@@ylii\fi + \yl@shifti=\@yli + \ifx\@@yli\empty\else + \advance\yl@shifti\@@yli\fi + \advance\yl@shiftii\yl@xdiff + \advance\yl@shifti\yl@ydiff + \begin{sfpicture}(0,0)(-\yl@shiftii,-\yl@shifti)% + \reset@yl@xydiff%1999/1/6 by S. Fujita +\else + \begin{sfpicture}(2000,1500)(-\shiftii,-\shifti)% + \iforigpt \typeout{command `steroidchain' is based on `steroid'.}\fi% +\fi +% steroid skeleton + \Put@Direct(0,0){\@steroidskeleton{#1}{#2}}% +% bonds for the side chain (carbons 20 to 27 (except 21)) + \Put@Line(855,709)(0,1){200}% %bond 17-20 + \Put@Line(1026,1012)(-5,-3){171}% %bond 22-20 + \Put@Line(1026,1012)(5,-3){171}% %bond 22-23 + \Put@Line(1197,709)(0,1){200}% %bond 24-23 + \Put@Line(1197,709)(1,0){200}% %bond 24-25 + \Put@Line(1397,709)(3,5){103}% %bond 25-26 + \Put@Line(1397,709)(3,-5){103}% %bond 25-27 +% double bonds along the side chain +\@tfor\member:=#1\do{% +\expandafter\twoCH@R\member//\relax% +\if\@tmpa Z\relax% + \ifx\@tmpb\empty%no action + \else\if\@tmpb a% + \Put@Line(888,735)(0,1){148}% %double bond 17-20 + \else\if\@tmpb b% + \Put@Line(1020,970)(-5,-3){126}% %double bond 22-20 + \else\if\@tmpb c% + \Put@Line(1032,970)(5,-3){126}% %double bond 22-23 + \else\if\@tmpb d% + \Put@Line(1164,735)(0,1){148}% %double bond 24-23 + \else\if\@tmpb e% + \Put@Line(1233,742)(1,0){140}% %double bond 24-25 + \else\if\@tmpb f% + \Put@Line(1433,715)(3,5){72}% %double bond 25-26 + \else\if\@tmpb g% + \Put@Line(1433,697)(3,-5){72}% %double bond 25-27 + \fi\fi\fi\fi\fi\fi\fi\fi\fi}% +% substitution on the side chain +%\global\drawsamesubsttrue%2002/05/30 warning on +\Put@Direct(1026,606){\setsixringv{#2}{-21}{0}{3}{0}}%for 22 and 23 positions +%\global\drawsamesubstfalse%2002/05/30 warning off +\Put@Direct(1026,606){\setsixringv{#2}{-14}{5}{7}{0}}%for 20 position +\Put@Direct(1197,709){\setsixringv{#2}{-20}{3}{5}{0}}%for 24 position +\Put@Direct(1397,709){\setatombond{#2}{-24}{4}}% % for 5 +\end{sfpicture}}% %end of \steroidchain macro% +%</carom> +% \end{macrocode} +% \end{macro} +% +% \Finale +% +\endinput |