diff options
author | Karl Berry <karl@freefriends.org> | 2023-01-09 20:52:40 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-01-09 20:52:40 +0000 |
commit | e8fab6d0b1923994df43adba23f21581b66aea35 (patch) | |
tree | d190e99cccd2e39d8944a09914461899edcb97dc /Master/texmf-dist/doc/metapost | |
parent | eea2c7341836ef410204f22c23f64e647f155c8a (diff) |
mcf2graph (9jan23)
git-svn-id: svn://tug.org/texlive/trunk@65499 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/metapost')
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG | 10 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/README | 21 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.pdf | bin | 78850 -> 78844 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp | 6 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf | bin | 449474 -> 449779 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp | 1270 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf | bin | 289192 -> 321662 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex | 1988 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf | bin | 195740 -> 0 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex | 328 |
13 files changed, 1792 insertions, 1843 deletions
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG b/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG index a166130976b..04139ae9ce0 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG +++ b/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG @@ -1,6 +1,14 @@ ******************************************************************************* - Changelog of mcf2graph software package by Akira Yamaji 2022-11-12 + Changelog of mcf2graph software package by Akira Yamaji 2023-01-09 ******************************************************************************* +[ver. 4.91 / 2023-01-09] + -update MCF manual + from this version typeset with LuaTeX + include mcf_man_soc.mp,mcf_mplib_exa.tex + -delete mcf_man_soc.mp + -delete mcf_mplib_exa.tex + -delete mcf_mplib_exa.pdf + [ver. 4.90 / 2022-11-12] -change syntax of fused ring {a--b}=?n => a--b=?n (n:4,5,6) diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/README b/Master/texmf-dist/doc/metapost/mcf2graph/README index 617ece4e822..c896fb17aa6 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/README +++ b/Master/texmf-dist/doc/metapost/mcf2graph/README @@ -1,7 +1,7 @@ ******************************************************************************** mcf2graph : Convert Molecular Coding Format to graphics with MetaPost Author : Akira Yamaji - version : 4.90 2022-11-12 + version : 4.91 2023-01-09 E-mail : mcf2graph@gmail.com Located at : http://www.ctan.org/pkg/mcf2graph ******************************************************************************** @@ -20,17 +20,12 @@ ( 3) mcf2graph.mp Main macro of Metapost ( 4) mcf_library.mcf Molecular data library ( 5) mcf_exa_soc.mp Molecular difinition file example - ( 6) mcf_manual.tex MCF syntax manual(LaTeX file) - make files 'mcf_man_soc-***.mps' before typeset - >mpost mcf_man_soc.mf - ( 7) mcf_man_soc.mp Molecular definition file for mcf_manual.tex - ( 8) mcf_manual.pdf PDF of (6) (typeset with pdftex(LaTeX),makeindex) - ( 9) mcf_example.tex MCF example - (10) mcf_example.pdf PDF of (9) typeset with LuaLaTeX - (11) mcf_exa_code.tex MCF example include code - (12) mcf_exa_code.pdf PDF of (11) typeset with LuaLaTeX - (13) mcf_mplib_exa.tex luamplib(LuaLaTeX) example - (14) mcf_mplib_exa.pdf PDF of (13) typeset with LuaLaTeX + ( 6) mcf_manual.tex MCF syntax manual + ( 7) mcf_manual.pdf PDF of ( 6) typeset with LuaLaTeX,makeindex + ( 8) mcf_example.tex MCF example + ( 9) mcf_example.pdf PDF of ( 8) typeset with LuaLaTeX + (10) mcf_exa_code.tex MCF example include code + (11) mcf_exa_code.pdf PDF of (10) typeset with LuaLaTeX 3. How to use mcf2graph with MetaPost Minimum requirement to use mcf2graph : mpost.exe,mpost.dll,mpost.mp,plain.mp @@ -48,7 +43,7 @@ (11) >mpost -s ahlength=7 filename => output report file 4. License - mcf2graph ver 4.88 Copyright (c) 2013-2022 Akira Yamaji + mcf2graph ver 4.91 Copyright (c) 2013-2023 Akira Yamaji Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp b/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp index 53db36ab098..87238a21325 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp @@ -1,5 +1,5 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% mcf2graph ver 4.90 Copyright (c) 2013-2022 Akira Yamaji +% mcf2graph ver 4.91 Copyright (c) 2013-2023 Akira Yamaji % % Permission is hereby granted, free of charge, to any person obtaining a copy of this software % and associated documentation files (the "Software"), to deal in the Software without restriction, @@ -33,7 +33,7 @@ % Set output MOL file (V3000) : mpost -s ahlength=6 FILENAME % Set output report : mpost -s ahlength=7 FILENAME %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -message "* This is mcf2graph ver 4.90 2022.11.12"; +message "* This is mcf2graph ver 4.91 2023.01.09"; tracingstats:=1; prologues:=3; warningcheck:=0; %------------------------------------------------------------------------------------------------- newinternal string EN_; diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.pdf Binary files differindex 585eb015d12..46afc3a048a 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.pdf +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.pdf diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex index 31b8ac14c88..d55a0e5e790 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Print out mcf data list by A.Yamaji 2022.11.12 +% Print out mcf data list by A.Yamaji 2023.01.09 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% ** mcf2graph.mf must be version 4.90 +% ** mcf2graph.mf must be version 4.91 % ** use mcf_library.mcf % ** typeset by LuaLaTeX(luamplib) \documentclass{article} diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp index bb049b6b6f7..f983c24ec67 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp @@ -1,8 +1,8 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Molecular Coding Format by Akira Yamaji 2022.11.12 +% Molecular Coding Format by Akira Yamaji 2023.01.09 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -input mcf2graph; %%% it must be version 4.90 -message "* mcf_exa_soc 2022.11.12"; +if unknown Ph1: input mcf2graph; fi %%% it must be version 4.91 +message "* mcf_exa_soc 2023.01.09"; message ""; %------------------------------------------------------------------------------ %%%%sw_frame:=Outside; diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf Binary files differindex f510fc9ec25..3fe7e90c23f 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex index e2c8fcae1e5..aedff395a3c 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Example of MCF Typeset with LuaLaTeX(luamplib) by A.Yamaji 2022.11.12 +% Example of MCF Typeset with LuaLaTeX(luamplib) by A.Yamaji 2023.01.09 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% ** mcf2graph.mf must be version 4.90 +% ** mcf2graph.mf must be version 4.91 % ** use mcf_library.mcf % ** typeset by LuaLaTeX(luamplib) \documentclass{article} diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp deleted file mode 100644 index edb7d19b9f0..00000000000 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp +++ /dev/null @@ -1,1270 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% MCF file for mcf_manual.tex by Akira.Yamaji 2022.11.12 -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -input mcf2graph; %% it must be version 4.90 -% ** use library file 'mcf_library.mcf' -message "mcf_man_soc 2022.11.12"; message ""; -%------------------------------------------------------------------------ -sw_mframe:=0; -sw_expand:=0; -%%ext(defaultscale:=.5; label.bot(decimal(fig_num)&":"&inf_EN,(.5w,0));) -%*********************************************************************** -fsize:=(40mm,25mm); -blength:=6mm; -%*********************************************************************** -beginfigm("EN:Glycine",":<30,NH2,!2,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Alanine",":<30,NH2,!~wb,/_,!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Valine",":<30,NH2,!~wb,/?!,!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Leucine",":<30,NH2,!~wb,/'(!,?!),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Isoleucine",":<30,NH2,!~wb,/'(/*_,!2),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Serine",":<30,NH2,!~wb,/!OH,!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Threonine",":<30,NH2,!~wb,/'(/_,!~wf,OH),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Cysteine",":<30,NH2,!~wb,/!SH,!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Methionine",":<30,NH2,!~wb,/'(!2,S,!),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Phenylalanine",":<30,NH2,!~wb,/!Ph,!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Tyrosine",":<30,NH2,!~wb,/'(!Ph,-3:/OH),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Triptophan", - ":<30,NH2,!~wb,!,COOH,@2,\,!,<24,|,?5,-4=Ph,2=dr,5=dl,4:NH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Prorine",":<18,?5,3:NH,4:*/COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Glutamine", - ":<30,NH2,!~wb,!,COOH,@2,\`1,!`1,!,//O,!,NH2") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Asparagine",":<30,NH2,!~wb,/'(!,//O,!,NH2),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Aspartic acid",":<30,NH2,!~wb,/!COOH,!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Glutamic acid",":<30,NH2,!~wb,/'(!2,COOH),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Lysine",":<30,NH2,!~wb,/'(!4,NH2),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Arginine", - ":<30,NH2,!~wb,!,COOH,@2,\`1,!`1,!2,NH,!,//NH,!,NH2") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Hystidine", - ":<30,NH2,!~wb,!,COOH,@2,\,!,|,?5,{1,3}=dl,3:N,5:NH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-DOPA",":<30,NH2,!~wb,!,COOH,@2,\,!,Ph,{-3,-4}:/OH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:Ornithine",":<30,NH2,!~wb,/'(!3,NH2),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:Citrulline",":<30,NH2,!~wb,/'(!3,NH,!,//O,!,NH2),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:GABA",":<30,NH2,!4,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:amino Levulinic acid",":<30,NH2,!2,//O,!3,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:4-amino benzoic acid",":<30,Ph,1:/NH2,4:/COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Carboxyl glutamic acid", - ":<30,NH2,!~wb,/'(!,/COOH,!,COOH),!,COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:L-Hydroxy Prorine",":<18,?5,1:/OH,3:NH,4:*/COOH") - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -fsize:=(60mm,35mm); -blength:=0mm; -max_blength:=10mm; -ratio_thickness_bond:=0.015; -ratio_atom_bond:=0.36; -sw_frame:=Outside; -fmargin:=(2mm,1mm); -%*********************************************************************** -beginfigm("EN:Chain 1") - fsize:=(60mm,17mm); - sw_numbering:=Bond; - numbering_end:=6; - ratio_chain_ring:=1; -%---------------------------------------------------------------------- - MC(<15,-30,45,-45,60,$300,$0, - {1^$15,2^$345,3^$30,4^$345}:/_~dt,{5,6}=vf, - ) - add( - defaultscale:=0.5; - labeloffset:=2bp; - drawarrow B7/*.7{B7right}..{B1right}B1/*.7; label.ulft("-30",B7/*.7); - drawarrow B8/*.7{B8left}..{B2left}B2/*.7; label.llft("45",B8/*.7); - drawarrow B9/*.7{B9right}..{B3right}B3/*.7; label.ulft("-45",B9/*.7); - drawarrow B10/*.7{B10left}..{B4left}B4/*.7; label.llft("60",B10/*.7); - ) -endfigm -%*********************************************************************** -beginfigm("EN:Chain 2") - fsize:=(60mm,17mm); - sw_numbering:=Bond; - numbering_end:=6; - ratio_chain_ring:=1; -%---------------------------------------------------------------------- - MC(<-30,!6, - {1^-120,2^60,3^-60,4^60,5^-60,6^60}:/_~dt - ) - add( - defaultscale:=0.5; - labeloffset:=2bp; - drawarrow B7/*.7{B7right}..{B1right}B1/*.7; label.ulft("-60",B7/*.7); - drawarrow B8/*.7{B8left}..{B2left}B2/*.7; label.llft("60",B8/*.7); - drawarrow B9/*.7{B7right}..{B3right}B3/*.7; label.ulft("-60",B9/*.7); - drawarrow B10/*.7{B10left}..{B4left}B4/*.7; label.llft("60",B10/*.7); - drawarrow B11/*.7{B11right}..{B5right}B5/*.7; label.ulft("-60",B11/*.7); - drawarrow B12/*.7{B12left}..{B6left}B6/*.7; label.llft("60",B12/*.7); - ) -endfigm -%*********************************************************************** -beginfigm("EN:Jump and Branch") - fsize:=(60mm,16mm); - fmargin:=(2mm,2mm); - sw_trimming:=1; - sw_numbering:=Atom; - ratio_chain_ring:=1; -%---------------------------------------------------------------------- - MC(<-30,!6,@3,0,!,@5,-30) -endfigm -%*********************************************************************** -beginfigm("EN:Jump and Branch") - fsize:=(60mm,16mm); - fmargin:=(2mm,2mm); - sw_numbering:=Atom; - sw_trimming:=1; - ratio_chain_ring:=1; -%---------------------------------------------------------------------- - MC(<-30,!6,@3,\,!) -endfigm -%*********************************************************************** -beginfigm("EN:branch1") - fsize:=(60mm,16mm); - fmargin:=(2mm,2mm); - sw_numbering:=Atom; - sw_trimming:=1; - numbering_end:=10; - ratio_chain_ring:=1; -%---------------------------------------------------------------------- - MC(<30,!10,@2,\,!,@4,*\,!,@6,\*,!,@8,\\,!,@10,*\*,!) -endfigm -%*********************************************************************** -beginfigm("EN:branch2") - fsize:=(60mm,20mm); - fmargin:=(2mm,2mm); - sw_trimming:=1; - sw_numbering:=Atom; - numbering_end:=7; - ratio_chain_ring:=1; -%---------------------------------------------------------------------- - MC(<30,!6,@2,\~dr,!,@4,\`1.5,-90,@6,15,-60) -endfigm -%*********************************************************************** -beginfigm("EN:Connect atom") - fsize:=(60mm,20mm); - fmargin:=(2mm,2mm); - sw_trimming:=1; - sw_numbering:=Atom; - ratio_chain_ring:=1; -%---------------------------------------------------------------------- - MC(<-30,!6,@3,\,!3,&6~bd,@9,&4~bz) -endfigm -%*********************************************************************** -beginfigm("EN:ring") - fsize:=(60mm,20mm); - sw_trimming:=1; - fmargin:=(2mm,3mm); - sw_numbering:=Bond; -%---------------------------------------------------------------------- - MC(?6) -endfigm -%*********************************************************************** -beginfigm("EN:rotate 1") - fsize:=(60mm,20mm); - fmargin:=(2mm,3mm); - sw_trimming:=1; - sw_numbering:=Bond; - ratio_chain_ring:=1; - numbering_end:=7; - defaultscale:=0.5; - labeloffset:=2bp; - MC(#1,0,0,<90,0,<-90,0,<$315,0,<$90,0,<$0,0,{1:7}=vf, - {3,4^180}:/_~dt) - add( - drawarrow B8/*.7{B8left}..{B3left}B3/*.7; label.urt("90",B8/*.7); - drawarrow B9/*.7{B9right}..{B4right}B4/*.7; label.urt("-90",B9/*.7); - ) -endfigm -%*********************************************************************** -beginfigm("EN:change bond 1") - fsize:=(70mm,10mm); - fmargin:=(2mm,2mm); - sw_trimming:=0; - ratio_chain_ring:=1; - MC(<-30,!~dm,!,!~dl,!,!~dr,!~db,!~db,!,!~tm) - add(defaultscale:=0.6; labeloffset:=0; - label.rt("(dm)",A1+(0,-0.7l)); - label.rt("(dl)",A3+(0,-0.7l)); - label.rt("(dr)",A5+(0,-0.7l)); - label.rt("(db)",A6+(0,-0.2l)); - label.rt("(db)",A7+(0,-0.7l)); - label.rt("(tm)",A9+(0,-0.7l)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:change bond 2") - fsize:=(70mm,10mm); - fmargin:=(2mm,2mm); - sw_trimming:=0; - ratio_chain_ring:=1; - MC(<-30,!~wf,!,!~wb,!,!~zf,!,!~zb,!,!~vf,!,!~vb) - add(defaultscale:=0.6; labeloffset:=0; - label.rt("(wf)",A1+(0,-0.7l)); - label.rt("(wb)",A3+(0,-0.7l)); - label.rt("(zf)",A5+(0,-0.7l)); - label.rt("(zb)",A7+(0,-0.7l)); - label.rt("(vf)",A9+(0,-0.7l)); - label.rt("(vb)",A11+(0,-0.7l)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:change bond 3") - fsize:=(70mm,10mm); - fmargin:=(2mm,2mm); - blength:=9mm; - sw_trimming:=1; - ratio_chain_ring:=1; - MC(<-30,!7,1=dt,3=wv,5=bd,7=bz) - add(defaultscale:=0.6; labeloffset:=0; - label.rt("(dt)",A1+(0,-0.6l)); - label.rt("(wv)",A3+(0,-0.6l)); - label.rt("(bd)",A5+(0,-0.6l)); - label.rt("(bz)",A7+(0,-0.6l)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:over line") - sw_trimming:=1; - fsize:=(75mm,20mm); - ratio_chain_ring:=1; - MC(<30,!18,$90`1.5,90`15.5, - {2~si_,4~wf_,6~wb_,8~zf_,10~zb_, - 12~bd_,14~dl_,16~dr_,18~dm_}:/_`2) -endfigm -%*********************************************************************** -beginfigm("EN:Steric ring") - fsize:=(75mm,16mm); - MCat(0.05,0.5)(#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##, - #.5,{1^$-90,2^$90,3^$-90,4^$90}:/OH,6^$90:/!OH) - defaultscale:=0.6; - MCat(0.5,0.7)(0~wf_r) add(label.lft("wf_r:",A1);) - MCat(0.5,0.2)(0~wf) add(label.lft("wf:",A1);) - MCat(0.75,0.7)(0~bd_r) add(label.lft("bd_r:",A1);) - MCat(0.75,0.2)(0~bd) add(label.lft("bd:",A1);) - MCat(1,0.7)(0~wb_r) add(label.lft("wb_r:",A1);) - MCat(1,0.2)(0~wb) add(label.lft("wb:",A1);) -endfigm -%*********************************************************************** -beginfigm("EN:change multi bond") - fsize:=(60mm,8mm); - fmargin:=(2mm,3mm); - ratio_chain_ring:=1; - MC(<30,!9,{2,4,6,8'}=dl) -endfigm -%*********************************************************************** -beginfigm("EN:change bond length1") - fsize:=(55mm,8mm); - sw_numbering:=Bond; - MC(<-30,!2,!4`1.2,!2) -endfigm -%*********************************************************************** -beginfigm("EN:change bond length2") - fsize:=(55mm,8mm); - sw_numbering:=Bond; - MC(<-30,!2,#1.2,!4,##,!2) -endfigm -%*********************************************************************** -beginfigm("EN:change ring length") - fsize:=(60mm,16mm); - fmargin:=(2mm,2mm); - sw_trimming:=1; - sw_numbering:=Bond; - MC(?6,@4,\,?6`1.2) -endfigm -%*********************************************************************** -beginfigm("EN:Insert atom") - sw_trimming:=1; - fsize:=(50mm,7mm); - MC(<-30,!2,O,!2,N,!2) -endfigm -%*********************************************************************** -beginfigm("EN:change atom",":<30,!5,2:O,{3:5}:N") - fsize:=(70mm,10mm); - msize:=(0.48,1); - MCat(0,0.5)(scantokens(mc)) - sw_numbering:=Atom; - MCat(1,0.5)(scantokens(mc)) -endfigm -%*********************************************************************** -beginfigm("EN:change atom brock address 1",":?6,@4,\,|,?6,2:O") - fsize:=(70mm,14mm); - fmargin:=(3mm,1.5mm); - MCat(0,.5)(scantokens(mc)) - sw_numbering:=Atom; - msize:=(1,.88); - MCat(1,.5)(scantokens(mc)) -endfigm -%*********************************************************************** -beginfigm("EN:change atom brock address 2",":?6,@4,\,|,?6,||,2:N") - fsize:=(70mm,14mm); - fmargin:=(3mm,1.5mm); - MCat(0,.5)(scantokens(mc)) - sw_numbering:=Atom; - msize:=(1,.88); - MCat(1,.5)(scantokens(mc)) -endfigm -%*********************************************************************** -beginfigm("EN:change atom absolute address",":?6,@4,\,?6,$2:N") - fsize:=(70mm,14mm); - fmargin:=(3mm,1.5mm); - MCat(0,.5)(scantokens(mc)) - sw_numbering:=Atom; - msize:=(1,.88); - MCat(1,.5)(scantokens(mc)) -endfigm -%*********************************************************************** -beginfigm("EN:change atom relative adress",":?6,@4,\,?6,-2:N") - fsize:=(70mm,14mm); - fmargin:=(3mm,1.5mm); - MCat(0,.5)(scantokens(mc)) - sw_numbering:=Atom; - msize:=(1,.88); - MCat(1,.5)(scantokens(mc)) -endfigm -%*********************************************************************** -beginfigm("EN:Charged atom") - sw_trimming:=1; - fsize:=(60mm,12mm); - MC(<-30,!2,N,??,p_,!2,S,n_^180,!6,7:N,7:??,9:S,7:p_,9:n_^180) -endfigm -%*********************************************************************** -beginfigm("EN:fused ring") - fsize:=(60mm,18mm); - fmargin:=(2mm,1.5mm); - sw_trimming:=1; - sw_numbering:=Bond; - MC(<30,?6,3=?6,3=dt,{7:11}=bd_r) -endfigm -%----------------------------------------------------------------------- -beginfigm("EN:change ring length") - fsize:=(60mm,25mm); - fmargin:=(2mm,2mm); - sw_trimming:=1; - sw_numbering:=Bond; - MC(?6,@4,\,?6`1.2,5=?6,11=?6, - {14:23}=bd_r,{5,11}=dt) -endfigm -%----------------------------------------------------------------------- -beginfigm("EN:fused large 6 ring") - fsize:=(60mm,18mm); - fmargin:=(2mm,1.5mm); - margin_top_bottom:=1.5mm; - sw_numbering:=Bond; - sw_trimming:=1; - MC(<30,?6,3=?6[13],3=dt,{7:11}=bd_r) -endfigm -%----------------------------------------------------------------------- -beginfigm("EN:fuse multi ring") - fsize:=(70mm,20mm); - fmargin:=(2mm,2mm); - sw_numbering:=Bond; - sw_trimming:=1; - MC(<30,?6,{-3,-4,-4,-2,-2,-4,-4}=?6,{4,8,13,20,25,28,33}=dt) -endfigm -%*********************************************************************** -beginfigm("EN:fused ring 2") - fsize:=(75mm,20mm); - fmargin:=(2mm,2mm); - sw_numbering:=Bond; - msize:=(1,.9); - MCat( 0,.5)(<30,?6,{3,11--4}=?6,{11,4}=dt,{12:15}=bd_r) - add(defaultscale:=0.4; label("(1)",p0);) - msize:=(1,.9); - MCat(.5,.5)(<30,?6,3=?6,{11--4}=?5,{11,4}=dt,{12:14}=bd_r) - add(defaultscale:=0.4; label("(2)",p0);) - msize:=(1,.9); - MCat( 1,.5)(<30,?6,3=?6,{11--4}=?4,{11,4}=dt,{12,13}=bd_r) - add(defaultscale:=0.4; label("(3)",p0);) -endfigm -%*********************************************************************** -beginfigm("EN:fused ring 3") - fsize:=(60mm,20mm); - fmargin:=(2mm,2mm); - sw_numbering:=Bond; - MCat(0,1)(?6,{3,10}=?6,16---4=?6,{16,4}=dt,{17:19}=bd_r) - add(defaultscale:=0.4; label("(1)",p0);) - MCat(1,0)(?6,{3,10}=?6,16---4=?5,{16,4}=dt,{17,18}=bd_r) - add(defaultscale:=0.4; label("(2)",p0);) -endfigm -%*********************************************************************** -beginfigm("EN:fused ring 4") - fsize:=(60mm,20mm); - fmargin:=(2mm,2mm); - sw_numbering:=Bond; - MC(<-30,?6,{3,10,15}=?6,21----4=?6,{21,4}=dt,{22,23}=bd_r) -endfigm -%*********************************************************************** -beginfigm("EN:Spiro ring ") - fsize:=(40mm,15mm); - sw_numbering:=Atom; - numbering_end:=7; - ratio_chain_ring:=1; - MC(<30,!6,@4,?5) -endfigm -%*********************************************************************** -beginfigm("EN:group 1") - fsize:=(75mm,18mm); - MC(<30,!,/_,!2,/!,!2,/!,!4,/?!,!4,/??!,!2,/'(Ph`0.8)^-60,!) -endfigm -%*********************************************************************** -beginfigm("EN:group 2") - fsize:=(70mm,14mm); - MC(<30,!`1,//O,!2`1,*/H,!2`1,/*H,!2`1,*/*H,!2`1,**?3,!`1) - add(defaultscale:=0.75; - label("//",A2-(0,0.45l)); - label("*/",A4-(0,0.45l)); - label("/*",A6-(0,0.45l)); - label("*/*",A8-(0,0.45l)); - label("**",A10-(0,0.45l)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:group 3") - fsize:=(60mm,16mm); - sw_trimming:=1; - MC(<-30,#1,!2,/_`2^30,!2,/!2>lr,!2,/!2>rl,!) -endfigm -%*********************************************************************** -beginfigm("EN:group 3") - fsize:=(75mm,25mm); - fmargin:=(2mm,2mm); - sw_numbering:=Atom; - numbering_end:=17; - MC(<30,!17,2:/_,3:/!,4:/!2,7:/iPr,8:/tBu,10:/'(Ph`0.6)^-15, - {11,12,13'}:*/_,{15,16,17'}:/*_) -endfigm -%*********************************************************************** -beginfigm("EN:group 4") - fsize:=(60mm,18mm); - sw_trimming:=1; - fmargin:=(2mm,2mm); - sw_numbering:=Atom; numbering_end:=9; - MC(<30,!8`1,{2~wf,4~zf,6^-30,8^$120}:/_) -endfigm -%*********************************************************************** -beginfigm("EN:group 5") - fsize:=(60mm,16mm); - sw_trimming:=1; - sw_numbering:=Atom; numbering_end:=8; - MC(<-30,!7`1,3:/_`2^30,5:/!2>lr,7:/!2>rl) -endfigm -%*********************************************************************** -beginfigm("EN:chain strech direction mode 1") - fsize:=(50mm,25mm); - sw_trimming:=1; - ratio_chain_ring:=1; - MC(?4,{3^-90,3^-30,3^90}:/!3>hz, - {1^-60,1,1^60}:/!3>vt - ) - add(defaultscale:=0.5; labeloffset:=2bp; - label.rt(">hz",A8); - label.top(">hz",A12); - label.top(">hz",A16); - label.rt(">vt",A20); - label.top(">vt",A24); - label.rt(">vt",A28); - ) -endfigm -%*********************************************************************** -beginfigm("EN:chain strech direction mode 2") - fsize:=(60mm,20mm); - sw_trimming:=1; - ratio_chain_ring:=1; - MC(<-30,!6,{3^-30,3,3^30}:/!3>lr, - {5^-30,5,5^30}:/!3>rl - ) - add(defaultscale:=0.6; labeloffset:=2bp; - label.lft(">lr",A11); - label.lft(">lr",A15); - label.top(">lr",A19); - label.top(">rl",A23); - label.rt(">rl",A27); - label.rt(">rl",A31); - ) -endfigm -%*********************************************************************** -beginfigm("EN:chain strech direction mode 3") - fsize:=(40mm,20mm); - sw_trimming:=1; - MC(<30,!4,2:/!6>30,4:/!4>-45) -endfigm -%*********************************************************************** -beginfigm("EN:chain strech direction mode 4") - fsize:=(60mm,20mm); - sw_trimming:=1; - MC(<30,!6,6>'(90,-90,90,-90,90):/!5) -endfigm -%*********************************************************************** -beginfigm("EN:change atom and group") - fsize:=(60mm,12mm); - sw_trimming:=1; - MC(<-30,!2,NH,!2,N!,!2,N!2,!2,SO,!2,SOO,!) -endfigm -%*********************************************************************** -beginfigm("EN:methyl*2,isopropyl,tert-butyl") - fsize:=(60mm,12mm); - sw_trimming:=1; - MC(<30,!9`1,?!,!,??,!,2:??,4:/?!,6:/??!,8:/N?!) -endfigm -%*********************************************************************** -beginfigm("EN:User definition") - fsize:=(60mm,13mm); - sw_trimming:=1; - iBuOH:='(!,/_,!,OH); - MC(<30,?6,{4,6}:/iBuOH) -endfigm -%*********************************************************************** -beginfigm("EN:Inline definition") - fsize:=(60mm,13mm); - fmargin:=(2mm,1mm); - sw_trimming:=1; - MC(<30,!8,{2,6}:/'(!,/_,!,OH)) -endfigm -%*********************************************************************** -beginfigm("EN:Move position") - fsize:=(70mm,16mm); - fmargin:=(2mm,1mm); - sw_trimming:=1; - MC(<30,?6,@3,\,!3,//O,!,O,n_^60,@$(6,1),H,p_^15) - add(drawdot A1 withpen pencircle scaled 2bp; - pickup pencircle scaled 0.1bp; - for i=0 upto 6: - draw (A1+(l*i,l-3bp))--(l*i,l+3bp); - endfor - draw A1--(A1+(0,1l))--A1+(6l,1l); - draw (A1+(0,1l))--(A1+(-3bp,1l)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:Serial number") - fsize:=(75mm,14mm); - max_blength:=8mm; - sw_numbering:=Atom; numbering_end:=15; - MC(<30,!14,{2,6:10,14}:/_~bd_r`0.5) -endfigm -%*********************************************************************** -beginfigm("EN:Change color") - fsize:=(50mm,20mm); - max_blength:=8mm; - MC( - <30,Ph,{2,5}:N,3:/NH2,4:/COOH, - 2:red,5:blue,3=green - ) -endfigm -%*********************************************************************** -beginfigm("EN:Change font") - fsize:=(50mm,20mm); - max_blength:=8mm; - atomfont:="cmr8"; - MC(<30,Ph,{2,5}:N,3:/NH2,4:/COOH) -endfigm -%*********************************************************************** -beginfigm("EN:mangle") - fsize:=(50mm,15mm); - blength:=6mm; - mangle:=0; - MCat(0.2,0.5)(Ph) - add(drawarrow((A1 shifted (aw,0)) rotated A1ang..A1);) - mangle:=30; - MCat(0.8,0.5)(Ph) - add(drawarrow((A1 shifted (aw,0)) rotated A1ang..A1);) -endfigm -%*********************************************************************** -beginfigm("EN:blength=0") - sw_frame:=Bothside; - fsize:=(40mm,15mm); - MC(<30,Ph) - ext(pickup pencircle scaled 0.2pt; - for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor - for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor - for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor - for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor - ) -endfigm -%----------------------------------------------------------------------- -beginfigm("EN:0<blength=<1") - sw_frame:=Bothside; - fsize:=(40mm,15mm); - blength:=0.1; - MC(<30,Ph) - ext(pickup pencircle scaled 0.2pt; - for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor - for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor - for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor - for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor - ) -endfigm -%----------------------------------------------------------------------- -beginfigm("EN:blength>1") - sw_frame:=Bothside; - fsize:=(40mm,15mm); - blength:=8mm; - MC(<30,Ph) - ext(pickup pencircle scaled 0.2pt; - for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor - for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor - for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor - for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor - ) -endfigm -%*********************************************************************** -beginfigm("EN:msize=(1)") - sw_frame:=Bothside+Mol; - fsize:=(40mm,15mm); - msize:=(1,1); - MC(<30,Ph) - ext(pickup pencircle scaled 0.2pt; - for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor - for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor - for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor - for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor - ) -endfigm -%------------------------------------------------------ -beginfigm("EN:msize=(0.25,1)") - sw_frame:=Bothside+Mol; - fsize:=(40mm,15mm); - msize:=(0.25,1); - MC(<30,Ph) - ext(pickup pencircle scaled 0.2pt; - for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor - for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor - for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor - for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor - ) -endfigm -%------------------------------------------------------ -beginfigm("EN:msize=(11mm,11mm)") - sw_frame:=Bothside+Mol; - fsize:=(40mm,15mm); - msize:=(11mm,11mm); - MC(<30,Ph) - ext(pickup pencircle scaled 0.2pt; - for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor - for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor - for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor - for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor - ) -endfigm -%*********************************************************************** -beginfigm("EN:mposition") - sw_frame:=Bothside+Mol; - fsize:=(40mm,15mm); - msize:=(1,0.8); - mposition:=(0.5,0.5); - MC(<30,Ph) -endfigm -%----------------------------------------------------- -beginfigm("EN:mposition") - sw_frame:=Bothside+Mol; - fsize:=(40mm,15mm); - msize:=(1,0.8); - mposition:=(1,0); - MC(<30,Ph) -endfigm -%----------------------------------------------------- -beginfigm("EN:mposition") - sw_frame:=sw_frame+Mol; - fsize:=(40mm,15mm); - msize:=(1,0.8); - mposition:=(10mm,4mm); - MC(<30,Ph) - ext(drawdot p1 withpen pencircle scaled 3pt; - pickup pencircle scaled 0.2pt; - for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor - for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor - for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor - for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor - ) -endfigm -%*********************************************************************** -beginfigm("EN:Figure size") - fsize:=(40mm,12mm); - sw_frame:=Outside; - MC(<30,Ph) - ext(pickup pencircle scaled 0.2pt; - for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor - for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor - for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor - for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor - ) -endfigm -%*********************************************************************** -beginfigm("EN:fmargin") - fsize:=(40mm,12mm); - sw_frame:=Bothside+Mol; - fmargin:=(10mm,1mm); - MC(<30,Ph) - ext(pickup pencircle scaled 0.2pt; - for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor - for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor - for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor - for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor - drawdot p0 withpen pencircle scaled 3pt; - ) -endfigm -%*********************************************************************** -beginfigm("EN:offset_thickness",":<30,Ph") - fsize:=(60mm,12mm); - offset_thickness:=0.0pt; MCat(0.1,0.5)(scantokens(mc)) - offset_thickness:=0.2pt; MCat(0.55,0.5)(scantokens(mc)) - offset_thickness:=0.5pt; MCat(1,0.5)(scantokens(mc)) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("0.0pt",(0,1bp)); - label.urt("0.2pt",(0.36w,1bp)); - label.urt("0.5pt",(0.7w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:offset_bond_gap",":<30,Ph") - fsize:=(60mm,12mm); - offset_bond_gap:=0.0pt; MCat(0.1, 0.5)(scantokens(mc)) - offset_bond_gap:=0.3pt; MCat(0.55,0.5)(scantokens(mc)) %<<== default - offset_bond_gap:=1.0pt; MCat(1, 0.5)(scantokens(mc)) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("0.0pt",(0,1bp)); - label.urt("0.3pt",(0.36w,1bp)); - label.urt("1.0pt",(0.7w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:offset_atom") - fsize:=(60mm,12mm); - offset_atom:=0.0pt; MCat(0.1, .5)(<30,?6,3:O) - offset_atom:=0.8pt; MCat(.55, .5)(<30,?6,3:O) %<<== default - offset_atom:=2.0pt; MCat(1, .5)(<30,?6,3:O) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("0.0pt",(0,1bp)); - label.urt("0.8pt",(0.36w,1bp)); - label.urt("2.0pt",(0.7w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:offset_wedge") - fsize:=(60mm,12mm); - offset_wedge:=0.0pt; MCat(0.1,0.5)(<30,?6,5:*/_) - offset_wedge:=0.4pt; MCat(0.55,0.5)(<30,?6,5:*/_) %<<== default - offset_wedge:=1.0pt; MCat(1, 0.5)(<30,?6,5:*/_) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("0.0pt",(0,1bp)); - label.urt("0.4pt",(0.36w,1bp)); - label.urt("1.0pt",(0.7w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:max_blength") - fsize:=(60mm,20mm); - sw_frame:=sw_frame+Mol; - max_blength:=5mm; MCat(0, .5)(<30,Ph) - max_blength:=8mm; MCat(.4,.5)(<30,Ph) - max_blength:=10mm; MCat(1, .5)(<30,Ph) %<<== default - ext(defaultscale:=0.6; labeloffset:=1bp; - label("5mm", (0.1w,0.5h)); - label("8mm", (0.42w,0.5h)); - label("10mm",(0.82w,0.5h)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:ratio_thickness_bond") - fsize:=(60mm,12mm); - ratio_thickness_bond:=0.005; MCat(0.1,0.5)(<30,Ph) - ratio_thickness_bond:=0.015; MCat(.55,0.5)(<30,Ph) %<<== default - ratio_thickness_bond:=0.03; MCat(1, 0.5)(<30,Ph) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("0.005",(0,1bp)); - label.urt("0.015",(0.36w,1bp)); - label.urt("0.030",(0.7w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:ratio_char_bond") - fsize:=(60mm,12mm); - ratio_char_bond:=1.0; MCat(0, .5)(<30,?6,6:O,3:NH) - ratio_char_bond:=1.5; MCat(.5, .5)(<30,?6,6:O,3:NH) %<<== default - ratio_char_bond:=2.0; MCat( 1, .5)(<30,?6,6:O,3:NH) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("1.0",(0,1bp)); - label.urt("1.5",(0.36w,1bp)); - label.urt("2.0",(0.7w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:ratio_bondgap_bond") - fsize:=(60mm,12mm); - ratio_bondgap_bond:=0.10; MCat(0.1, .5)(<30,Ph) - ratio_bondgap_bond:=0.15; MCat(.55, .5)(<30,Ph) %<<== default - ratio_bondgap_bond:=0.20; MCat(1 , .5)(<30,Ph) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("0.10",(0,1bp)); - label.urt("0.15",(0.36w,1bp)); - label.urt("0.20",(0.7w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:ratio_atom_bond") - fsize:=(60mm,12mm); - ratio_atom_bond:=0.25; MCat(0.1, .5)(<30,?6,3:O) - ratio_atom_bond:=0.33; MCat(.55, .5)(<30,?6,3:O) %<<== default - ratio_atom_bond:=0.45; MCat(1, .5)(<30,?6,3:O) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("0.25",(0,1bp)); - label.urt("0.33",(0.36w,1bp)); - label.urt("0.45",(0.7w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:ratio_wedge_bond") - fsize:=(70mm,12mm); - ratio_wedge_bond:=0.1; MCat(0.05,.5)(?6,4:*/_) - ratio_wedge_bond:=0.12; MCat(.55, .5)(?6,4:*/_) %<<== default - ratio_wedge_bond:=0.2; MCat(1 , .5)(?6,4:*/_) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("0.10",(0,1bp)); - label.urt("0.12",(0.36w,1bp)); - label.urt("0.20",(0.7w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:ratio_atomgap_atom",":<30,!2`0.5,2:O") - fsize:=(70mm,12mm); - sw_frame:=sw_frame+Atom; - ratio_atomgap_atom:=0.00; MCat(0, .5)(scantokens(mc)) - ratio_atomgap_atom:=0.050; MCat(.5,.5)(scantokens(mc)) %<<== default - ratio_atomgap_atom:=0.12; MCat(1, .5)(scantokens(mc)) - ext(defaultscale:=0.75; labeloffset:=1bp; - label.urt("0.00",(0.05w,1bp)); - label.urt("0.05",(0.45w,1bp)); - label.urt("0.12",(0.85w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:ratio_chain_ring") - fsize:=(70mm,12mm); - ratio_chain_ring:= 0.4; MCat(0.05,.5)(<30,?6,4:/!) - ratio_chain_ring:= 0.66; MCat(.45, .5)(<30,?6,4:/!) %<<== default - ratio_chain_ring:= 1; MCat(1, .5)(<30,?6,4:/!) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("0.40",(0,1bp)); - label.urt("0.66",(0.3w,1bp)); - label.urt("1.0" ,(0.62w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:ratio_hashgap_bond",":<30,!2,2:/*_`1.5") - fsize:=(70mm,15mm); - ratio_hashgap_bond:=0.06; MCat(0.08,.5)(scantokens(mc)) - ratio_hashgap_bond:=0.12; MCat( .55,.5)(scantokens(mc)) %<<== default - ratio_hashgap_bond:=0.20; MCat(1, .5)(scantokens(mc)) - ext(defaultscale:=0.6; labeloffset:=1bp; - label.urt("0.06",(0,1bp)); - label.urt("0.12",(0.4w,1bp)); - label.urt("0.20",(0.77w,1bp)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:Switwch numbering atom") - fsize:=(60mm,10mm); - ratio_chain_ring:=1; - numbering_start:=3; numbering_end:=8; - sw_numbering:=Atom; MC(<-30,!9) -endfigm -%*********************************************************************** -beginfigm("EN:Switwch numbering bond") - fsize:=(60mm,10mm); - ratio_chain_ring:=1; - numbering_start:=3; numbering_end:=8; - sw_numbering:=Bond; MC(<-30,!9) -endfigm -%*********************************************************************** -beginfigm("EN:Switwch trimming") - fsize:=(60mm,20mm); - sw_frame:=Bothside+Mol; - msize:=(1,.7); MCat(.2,.3)(Ph) - MCat(.8,.7)(Ph) -endfigm -%----------------------------------------------------------------------- -beginfigm("EN:Switwch trimming") - fsize:=(60mm,20mm); - sw_frame:=Bothside+Mol; - sw_trimming:=1; - msize:=(1,.7); - MCat(.2,.3)(Ph) - MCat(.8,.7)(Ph) -endfigm -%*********************************************************************** -beginfigm("EN:Switwch Expand",":<30,Ph,4:/COOH,3:/NH2") - fsize:=(60mm,20mm); - MCat(0, .5)(scantokens(mc)) - sw_expand:=1; - MCat(1, .5)(scantokens(mc)) -endfigm -%*********************************************************************** -beginfigm("EN:Switwch abbreviate group",":<30,Ph,4:/Cl,3:/F") - fsize:=(60mm,12mm); - MCat(.15, .5)(scantokens(mc)) - sw_abbreviate:=Group; - MCat(.85, .5)(scantokens(mc)) -endfigm -%*********************************************************************** -beginfigm("EN:Switwch abbreviate bondtype",":<30,Ph,4:/Cl,3:/F") - fsize:=(60mm,12mm); - MCat(.15, .5)(scantokens(mc)) - sw_abbreviate:=Bond; - MCat(.85, .5)(scantokens(mc)) -endfigm -%*********************************************************************** -beginfigm("EN:Switwch font frame 1") - fsize:=(30mm,10mm); - fmargin:=(5mm,1.5mm); - sw_frame:=Outside; - MC(<30,Ph) -endfigm -beginfigm("EN:Switwch font frame 2") - fsize:=(30mm,10mm); - fmargin:=(5mm,1.5mm); - sw_frame:=Inside; - MC(<30,Ph) -endfigm -beginfigm("EN:Switwch font frame 3") - fsize:=(30mm,10mm); - fmargin:=(5mm,1.5mm); - sw_frame:=Bothside; - MC(<30,Ph) -endfigm -%*********************************************************************** -beginfigm("EN:Switwch molecular frame") - sw_frame:=Outside; - fsize:=(40mm,11mm); - msize:=(1,1); - sw_frame:=sw_frame+Mol; - MC(<30,Ph) -endfigm -%*********************************************************************** -beginfigm("EN:Switwch atom frame") - fsize:=(60mm,10mm); - sw_frame:=sw_frame+Atom; - MC(<30,COOH,!,COOH) -endfigm -%*********************************************************************** -beginfigm("EN:Local setting 1") - fsize:=(15mm,12mm); - MC(Ph) -endfigm -beginfigm("EN:Local setting 2") - fsize:=(15mm,12mm); - ratio_thickness_bond:=0.05; - MC(Ph) -endfigm -beginfigm("EN:Local setting 3") - fsize:=(15mm,12mm); - MC(Ph) -endfigm -%*********************************************************************** -save_ratio:=ratio_thickness_bond; -beginfigm("EN:Global setting 1") - fsize:=(15mm,12mm); - MC(Ph) -endfigm -ratio_thickness_bond:=0.05; -beginfigm("EN:Global setting 2") - fsize:=(15mm,12mm); - MC(Ph) -endfigm -beginfigm("EN:Global setting 3") - fsize:=(15mm,12mm); - MC(Ph) -endfigm -ratio_thickness_bond:=save_ratio; -%*********************************************************************** -beginfigm("EN:MC() ") - fmargin:=(0.5mm,0.5mm); - fsize:=(40mm,15mm); - sw_frame:=Outside+Mol; - MC(<30,Ph,4:/Cl,3:/F) -endfigm -%----------------------------------------------------------------------- -beginfigm("EN:MCat()") - defaultscale:=0.6; - fsize:=(60mm,40mm); - fmargin:=(3mm,3mm); - blength:=0.07; - sw_frame:=Outside; - mangle:=0; - for i=1 step -0.5 until 0: - for j=0 step 0.33 until 1: - MCat(j,i)(Ph,4:N) - add( - drawarrow((A1+A1up**aw)..A1); - label(decimal(mangle),p0+(0.5w,0.5h)); - ) - mangle:=mangle+30; - endfor - endfor -endfigm -%*********************************************************************** -beginfigm("EN:Pyridine",":<30,Ph,2:N") - sw_trimming:=0; - fsize:=(12mm,12mm); - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%----------------------------------------------------------------------- -beginfigm("EN:Pyridine",":<30,Ph,2):N") - sw_trimming:=0; - fsize:=(12mm,12mm); - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:add() 1") - fsize:=(70mm,40mm); - sw_frame:=sw_frame+Atom+Mol; - max_blength:=10mm; - msize:=(.91,.9); - MCat(.5,.85)(<30,?6,{2,5}:O) - add( - defaultscale:=.8; - labeloffset:=.3aw; - dotlabel.lft("p0",p0); - dotlabel.rt( "p0+(w,h)",p0+(w,h)); - dotlabel.ulft("A1",A1); - drawarrow A1..A1+__*l<<A1ang; - dotlabel.lrt( "B3s",B3s); - dotlabel.rt("B3m",B3m); - drawarrow B3m..B3m+__*l<<(B3ang+90); - dotlabel.ulft("A6",A6); - drawarrow A1{A1down}..A6; - dotlabel.urt( "B3e",B3e); - label.rt( "An="&decimal(An)& - " Bn="&decimal(Bn)& - " aw="&decimal(aw)& - " em="&decimal(em), - p0+(-9em,-1.5em)); - label.rt( "w="&decimal(w)& - " h="&decimal(h)& - " l="&decimal(l), - p0+(-9em,-3em)); - ) -endfigm -%*********************************************************************** -beginfigm("EN:add() 2") - fsize:=(70mm,20mm); - msize:=(1,0.85); MCat(0,0)(<30,Ph,3=dl,4:/NH2) - add(labeloffset:=.7aw; - label.top(lonepair 90,A7); - drawarrow (A7+up**1.2aw){A7left}..{B7right}B7/*0.3; - drawarrow B3m..A3+B2up**1.5aw..{A3down}A3; - ) - MCat(1,0)(<30,?6,{1,5}=dl,4://NH2) - add(labeloffset:=.7aw; - label.top(plus,A7); - label.urt(minus,A3); - label(lonepair A3ang,A3+A3up**.7aw); - ) - ext(drawdblarrow (0.4w,0.4h)..(0.55w,0.4h);) -endfigm -%*********************************************************************** -beginfigm("EN:ext()") - fsize:=(70mm,30mm); - blength:=0.065; - sw_label_emu:=1; - % - MCat(0.1,0.5)(<-210,60`1,60`1,60`1,{1,3}=dl,1:/R1,4:/R2^-60) - add( - defaultscale:=0.6; - label.bot("Diene",p0+(0.5w,0)); - ) - MCat(0.4,0.5)(<-30,-60`1,1=dl,1:/R3,2:/R4^60) - add( - defaultscale:=0.6; - label.bot("Dienophile",p0+(0.5w,0)); - ) - MCat(0.9,0.5)(<30,?6,6=dl,2:/R2,3:/R4,4:/R3,5:/R1) - ext( - drawarrow (0.52w,0.5h)..(0.6w,0.5h); - defaultscale:=0.7; - label("+",(0.25w,0.5h)); - ratio_thickness_char:=0.125; - label.bot("Diels-Alder Reaction",(0.5w,h)); - ) -endfigm -%*********************************************************************** -% Global ext() setting 1 -save_defaultsize:=defaultsize; -defaultsize:=5bp; -beginfigm("EN:?3") - fsize:=(12mm,15mm); - MCat(0.5,1)(<30,?3) -endfigm -beginfigm("EN:?4") - fsize:=(12mm,15mm); - MCat(0.5,1)(?4) - %------------------------------- - ext(label.top(inf_EN,(0.5w,0));) - %------------------------------- -endfigm -beginfigm("EN:?5") - fsize:=(12mm,15mm); - MCat(0.5,1)(?5) -endfigm -beginfigm("EN:?5") - fsize:=(12mm,15mm); - MCat(0.5,1)(?6) -endfigm -%----------------------------------------------------------------------- -beginfigm("EN:?3") - fsize:=(12mm,15mm); - MCat(0.5,1)(<30,?3) -endfigm -%------------------------------- -ext(label.top(inf_EN,(0.5w,0));) -%------------------------------- -beginfigm("EN:?4") - fsize:=(12mm,15mm); - MCat(0.5,1)(?4) -endfigm -beginfigm("EN:?5") - fsize:=(12mm,15mm); - MCat(0.5,1)(?5) -endfigm -%--------- -ext_clear; -%--------- -beginfigm("EN:?6") - fsize:=(12mm,15mm); - MCat(0.5,1)(?6) -endfigm -defaultsize:=save_defaultsize; -%*************************************************************************** -beginfigm("t:EN","v:Luciferin") - fsize:=(50mm,15mm); - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*************************************************************************** -beginfigm("EN:Colchicine","MW:385.41", - %--------------------------------------- - ": <30,Ph,{1,2,6}:/O!,{-4,-5}=?7, ", - ": {-1,-4,-6}=dl,-2://O,-3:/O!, ", - ": @9,\,NH,!,//O,! ") - %--------------------------------------- - fsize:=(50mm,20mm); - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*************************************************************************** -beginfigm("EN:Paclitaxel","MW:853.91", - %------------------------------------------------------ - ": ?6,5=dl,@3,#1,36,45,45,45,45,##, ", - ": &($5),-4=?6,-4=?4,-1=wb,-3=wf,-1:O,||, ", - ": 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60, ", - ": 9:*/_^60,10://O, ", - ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, ", - ": @7,\*,O,-45,//O,60,Ph,@11,*\,O,-60,//O,60, ", - ": @12,\*^-15,O,60,//O,-60 ") - %------------------------------------------------------ - fsize:=(50mm,25mm); - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*************************************************************************** -beginfigm("EN:Maltose","MW:342.3", - %------------------------------------------------------ - ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##, ", - ": #.5,{1^$-90,2^$90,3^$-90}:/OH,6^$90:/!OH,##, ", - ": @4,$-50~arc_lb`1,O,$50~arc_br`1,<$0, ", - ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##,", - ": #.5,{2^$90,3^$-90,4^$-90}:/OH,6^$90:/!OH ") - %------------------------------------------------------ - fsize:=(50mm,20mm); - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%*********************************************************************** -beginfigm("EN:Cellobiose","MW:342.3", - %------------------------------------------------------ - ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##, ", - ": #.5,{1^$-90,2^$90,3^$-90}:/OH,6^$90:/!OH,##, ", - ": @4,$0~arc_ltr,O,$0~arc_lbr, ", - ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##,", - ": #.5,{2^$90,3^$-90,4^$-90}:/OH,6^$90:/!OH ") - %------------------------------------------------------ - fsize:=(50mm,20mm); - if mc_check(mc)=0: MC(scantokens(mc)) fi -endfigm -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -bye diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf Binary files differindex 7d27863ba07..c304a183912 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex index 514236f5b27..18ccd9827f1 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex @@ -1,18 +1,36 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Molecular Coding Format manual by Akira Yamaji 2022.11.12 +% Molecular Coding Format manual by Akira Yamaji 2023.01.09 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% ** mcf2graph.mf must be version 4.91 +% ** use mcf_library.mcf +% ** typeset by LuaLaTeX(luamplib) +%---------------------------------------------------------------------------- \documentclass[a4paper]{article} -%%%\usepackage{graphicx} -%%%\usepackage{hyperref} -\usepackage[pdftex]{graphicx} -\usepackage[pdftex]{hyperref} -%%%\usepackage[dvipdfmx]{graphicx} -%%%\usepackage[dvipdfmx]{hyperref} +\usepackage{textcomp,verbatim}% +\usepackage[luatex]{graphicx} +\usepackage[luatex]{hyperref} \usepackage{makeidx} +\usepackage{luamplib} +\mplibnumbersystem{double} \makeindex \hypersetup{colorlinks=true,linkcolor=blue} -\usepackage{mcf_setup} -\edef\MCFjobname{mcf_man_soc}% +%---------------------------------------------------------------------------- +\mplibcodeinherit{enable}% +\mplibverbatim{enable}% +\mpliblegacybehavior{disabled}% +\everymplib{% + if unknown Ph1: input mcf2graph; fi + sw_output:=Fig+Calc; + tag1:="J"; tag2:="C"; tag3:="fm"; tag4:="mw"; tag5:="EN"; tag6:="MW"; + outputformat:="eps"; + fsize:=(60mm,35mm); + blength:=0mm; + max_blength:=10mm; + ratio_thickness_bond:=0.015; + ratio_atom_bond:=0.36; + sw_frame:=Outside; + fmargin:=(2mm,1mm); +}% %---------------------------------------------------------------------------- \edef\fext{mps}% \topmargin=-18mm @@ -23,33 +41,6 @@ %%%%\evensidemargin=-7mm \unitlength=1mm% %---------------------------------------------------------------------------- -\newcount \fnum% -\newdimen \htman% -\newdimen \wdman% -\newdimen \htmans% -\newbox \fbox% -%---------------------------------------------------------------------------- -\htman=45mm% -\wdman=94mm% -\htmans=42mm% -\fnum=1% -%---------------------------------------------------------------------------- -\makeatletter -%---------------------------------------------------------------------------- -\def\MCFgraph{% -\edef\file@name{\MCFjobname-\z@num\fnum.\fext}% -\includegraphics{\file@name}% -\global\advance\fnum\@ne\relax% -}% -%---------------------------------------------------------------------------- -\def\put@char{% - \begin{picture}(75,100)% - \put(0,95){\bf [\NO]\EN}% - \put(5,90){\small\tt FM:\fm{ }MW:\mw}% - \put(5,0){\MCFgraph}% - \end{picture}% -}% -%---------------------------------------------------------------------------- \begin{document} \title{\Huge\sf Molecular Coding Format manual} \author{Akira Yamaji} @@ -60,13 +51,123 @@ %----------------------------------------------------------------------------- \thispagestyle{empty} \vspace{5mm}% -\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\ -\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\ -\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\ -\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\ -\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\ -\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\ -\MCFgraph\MCFgraph\MCFgraph\MCFgraph +\quad +\begin{mplibcode} +fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0; +beginfigm("EN:Glycine",":<30,NH2,!2,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Alanine",":<30,NH2,!~wb,/_,!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Valine",":<30,NH2,!~wb,/?!,!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Leucine",":<30,NH2,!~wb,/'(!,?!),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +\end{mplibcode} +\\ +\begin{mplibcode} +fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0; +beginfigm("EN:L-Isoleucine",":<30,NH2,!~wb,/'(/*_,!2),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Serine",":<30,NH2,!~wb,/!OH,!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Threonine",":<30,NH2,!~wb,/'(/_,!~wf,OH),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Cysteine",":<30,NH2,!~wb,/!SH,!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +\end{mplibcode} +\\ +\begin{mplibcode} +fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0; +beginfigm("EN:L-Methionine",":<30,NH2,!~wb,/'(!2,S,!),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Phenylalanine",":<30,NH2,!~wb,/!Ph,!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Tyrosine",":<30,NH2,!~wb,/'(!Ph,-3:/OH),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Triptophan", + ":<30,NH2,!~wb,!,COOH,@2,\,!,<24,|,?5,-4=Ph,2=dr,5=dl,4:NH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +\end{mplibcode} +\\ +\begin{mplibcode} +fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0; +beginfigm("EN:L-Prorine",":<18,?5,3:NH,4:*/COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Glutamine", + ":<30,NH2,!~wb,!,COOH,@2,\`1,!`1,!,//O,!,NH2") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Asparagine",":<30,NH2,!~wb,/'(!,//O,!,NH2),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Aspartic acid",":<30,NH2,!~wb,/!COOH,!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +\end{mplibcode} +\\ +\begin{mplibcode} +fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0; +beginfigm("EN:L-Glutamic acid",":<30,NH2,!~wb,/'(!2,COOH),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Lysine",":<30,NH2,!~wb,/'(!4,NH2),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Arginine", + ":<30,NH2,!~wb,!,COOH,@2,\`1,!`1,!2,NH,!,//NH,!,NH2") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Hystidine", + ":<30,NH2,!~wb,!,COOH,@2,\,!,|,?5,{1,3}=dl,3:N,5:NH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +\end{mplibcode} +\\ +\begin{mplibcode} +fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0; +beginfigm("EN:L-DOPA",":<30,NH2,!~wb,!,COOH,@2,\,!,Ph,{-3,-4}:/OH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:Ornithine",":<30,NH2,!~wb,/'(!3,NH2),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:Citrulline",":<30,NH2,!~wb,/'(!3,NH,!,//O,!,NH2),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:GABA",":<30,NH2,!4,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +\end{mplibcode} +\\ +\begin{mplibcode} +fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0; +beginfigm("EN:amino Levulinic acid",":<30,NH2,!2,//O,!3,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:4-amino benzoic acid",":<30,Ph,1:/NH2,4:/COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Carboxyl glutamic acid", + ":<30,NH2,!~wb,/'(!,/COOH,!,COOH),!,COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:L-Hydroxy Prorine",":<18,?5,1:/OH,3:NH,4:*/COOH") + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \twocolumn \thispagestyle{empty} @@ -95,9 +196,29 @@ $n (0<=n<360): absolute angle <10,-30,45,-45,60,$300,$0 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Chain 1") + fsize:=(60mm,17mm); + sw_numbering:=Bond; + numbering_end:=6; + ratio_chain_ring:=1; +%---------------------------------------------------------------------- + MC(<15,-30,45,-45,60,$300,$0, + {1^$15,2^$345,3^$30,4^$345}:/_~dt,{5,6}=vf, + ) + add( + defaultscale:=0.5; + labeloffset:=2bp; + drawarrow B7/*.7{B7right}..{B1right}B1/*.7; label.ulft("-30",B7/*.7); + drawarrow B8/*.7{B8left}..{B2left}B2/*.7; label.llft("45",B8/*.7); + drawarrow B9/*.7{B9right}..{B3right}B3/*.7; label.ulft("-45",B9/*.7); + drawarrow B10/*.7{B10left}..{B4left}B4/*.7; label.llft("60",B10/*.7); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- -\subsubsection{Chain use !,!n} +\subsubsection{Chain with !,!n} \index{"!}% \begin{verbatim} ! : take value 60 or -60 depend on @@ -106,7 +227,29 @@ $n (0<=n<360): absolute angle <-30,!6 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Chain 2") + fsize:=(60mm,17mm); + sw_numbering:=Bond; + numbering_end:=6; + ratio_chain_ring:=1; +%---------------------------------------------------------------------- + MC(<-30,!6, + {1^-120,2^60,3^-60,4^60,5^-60,6^60}:/_~dt + ) + add( + defaultscale:=0.5; + labeloffset:=2bp; + drawarrow B7/*.7{B7right}..{B1right}B1/*.7; label.ulft("-60",B7/*.7); + drawarrow B8/*.7{B8left}..{B2left}B2/*.7; label.llft("60",B8/*.7); + drawarrow B9/*.7{B7right}..{B3right}B3/*.7; label.ulft("-60",B9/*.7); + drawarrow B10/*.7{B10left}..{B4left}B4/*.7; label.llft("60",B10/*.7); + drawarrow B11/*.7{B11right}..{B5right}B5/*.7; label.ulft("-60",B11/*.7); + drawarrow B12/*.7{B12left}..{B6left}B6/*.7; label.llft("60",B12/*.7); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Jump to atom} \index{"@}% @@ -116,8 +259,18 @@ $n (0<=n<360): absolute angle <-30,!6,@3,0,!,@5,-30 \end{verbatim} -\MCFgraph -%------------------------------------ +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Jump and Branch") + fsize:=(60mm,16mm); + fmargin:=(2mm,2mm); + sw_trimming:=1; + sw_numbering:=Atom; + ratio_chain_ring:=1; + MC(<-30,!6,@3,0,!,@5,-30) +endfigm +\end{mplibcode} +%----------------------------------------------------------------------------- \subsubsection{Branch bond} \index{\textbackslash}% \begin{verbatim} @@ -125,7 +278,17 @@ $n (0<=n<360): absolute angle <-30,!6,@3,\,! \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Jump and Branch") + fsize:=(60mm,16mm); + fmargin:=(2mm,2mm); + sw_numbering:=Atom; + sw_trimming:=1; + ratio_chain_ring:=1; + MC(<-30,!6,@3,\,!) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Branch modified bond} \index{*\textbackslash}% @@ -142,7 +305,18 @@ $n (0<=n<360): absolute angle <30,!8, @2,\,!,@4,*\,!,@6,\*,!,@8,\\,!,@10,*\*,! \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:branch1") + fsize:=(60mm,16mm); + fmargin:=(2mm,2mm); + sw_numbering:=Atom; + sw_trimming:=1; + numbering_end:=10; + ratio_chain_ring:=1; + MC(<30,!10,@2,\,!,@4,*\,!,@6,\*,!,@8,\\,!,@10,*\*,!) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \index{\textasciicircum}% ^ \index{\textasciitilde}% ~ @@ -153,7 +327,19 @@ $n (0<=n<360): absolute angle \`1.5,-90 : 0`1.5,-90 \^15,-60 : 0^15,-60 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:branch2") + fsize:=(60mm,20mm); + fmargin:=(2mm,2mm); + sw_trimming:=1; + sw_numbering:=Atom; + numbering_end:=7; + ratio_chain_ring:=1; + %------------------------- + MC(<30,!6,@2,\~dr,!,@4,\`1.5,-90,@6,15,-60) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Connect atom} \index{\&}% @@ -162,7 +348,18 @@ $n (0<=n<360): absolute angle <-30,!6,@3,\,!3,&6~bd,@9,&4~bz \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Connect atom") + fsize:=(60mm,20mm); + fmargin:=(2mm,2mm); + sw_trimming:=1; + sw_numbering:=Atom; + ratio_chain_ring:=1; + %---------------------------------- + MC(<-30,!6,@3,\,!3,&6~bd,@9,&4~bz) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Ring} \index{?}% @@ -171,7 +368,17 @@ $n (0<=n<360): absolute angle ?6 : <-120,60,60,60,60,60,&1 ?6 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:ring") + fsize:=(60mm,20mm); + sw_trimming:=1; + fmargin:=(2mm,3mm); + sw_numbering:=Bond; + %--------------------------- + MC(?6) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Rotate current angle} \index{\textgreater}% @@ -180,7 +387,25 @@ $n (0<=n<360): absolute angle 0,0,<90,0,<-90,0,<$315,0,<$90,0,<$0,0 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:rotate 1") + fsize:=(60mm,20mm); + fmargin:=(2mm,3mm); + sw_trimming:=1; + sw_numbering:=Bond; + ratio_chain_ring:=1; + numbering_end:=7; + defaultscale:=0.5; + labeloffset:=2bp; + MC(#1,0,0,<90,0,<-90,0,<$315,0,<$90,0,<$0,0,{1:7}=vf, + {3,4^180}:/_~dt) + add( + drawarrow B8/*.7{B8left}..{B3left}B3/*.7; label.urt("90",B8/*.7); + drawarrow B9/*.7{B9right}..{B4right}B4/*.7; label.urt("-90",B9/*.7); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Change bond type} \subsubsection{Double,triple,wedge,vector} @@ -206,7 +431,24 @@ tm : triple <-30,!~dm,!,!~dl,!,!~dr,!~db,!~db,!,!~tm <-30,!~dm,!,!~dl,!,!~dr,!! ,!! ,!,!!! \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change bond 1") + fsize:=(70mm,10mm); + fmargin:=(2mm,2mm); + sw_trimming:=0; + ratio_chain_ring:=1; + MC(<-30,!~dm,!,!~dl,!,!~dr,!~db,!~db,!,!~tm) + add(defaultscale:=0.6; labeloffset:=0; + label.rt("(dm)",A1+(0,-0.7l)); + label.rt("(dl)",A3+(0,-0.7l)); + label.rt("(dr)",A5+(0,-0.7l)); + label.rt("(db)",A6+(0,-0.2l)); + label.rt("(db)",A7+(0,-0.7l)); + label.rt("(tm)",A9+(0,-0.7l)); + ) +endfigm +\end{mplibcode} \vspace{-3mm}% %----------------------------------------------------------------------------- %%\subsubsection{Wedge} @@ -229,7 +471,24 @@ vb:vector backward <-30, !~wf,!,!~wb,!,!~zf,!,!~zb,!,!~vf,!~vb \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change bond 2") + fsize:=(70mm,10mm); + fmargin:=(2mm,2mm); + sw_trimming:=0; + ratio_chain_ring:=1; + MC(<-30,!~wf,!,!~wb,!,!~zf,!,!~zb,!,!~vf,!,!~vb) + add(defaultscale:=0.6; labeloffset:=0; + label.rt("(wf)",A1+(0,-0.7l)); + label.rt("(wb)",A3+(0,-0.7l)); + label.rt("(zf)",A5+(0,-0.7l)); + label.rt("(zb)",A7+(0,-0.7l)); + label.rt("(vf)",A9+(0,-0.7l)); + label.rt("(vb)",A11+(0,-0.7l)); + ) +endfigm +\end{mplibcode} \vspace{-3mm}% %----------------------------------------------------------------------------- %%\subsubsection{Dotted,wave} @@ -246,7 +505,23 @@ bd : broad / bz : broad dotted <-30,!7,1=dt,3=wv,5=bd,7=bz \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change bond 3") + fsize:=(70mm,10mm); + fmargin:=(2mm,2mm); + blength:=9mm; + sw_trimming:=1; + ratio_chain_ring:=1; + MC(<-30,!7,1=dt,3=wv,5=bd,7=bz) + add(defaultscale:=0.6; labeloffset:=0; + label.rt("(dt)",A1+(0,-0.6l)); + label.rt("(wv)",A3+(0,-0.6l)); + label.rt("(bd)",A5+(0,-0.6l)); + label.rt("(bz)",A7+(0,-0.6l)); + ) +endfigm +\end{mplibcode} \vspace{-3mm}% %----------------------------------------------------------------------------- \subsubsection{Over line} @@ -274,7 +549,17 @@ dm_ : duble over line {2~si_,4~wf_,6~wb_,8~zf_,10~zb_, 12~bd_,14~dl_,16~dr_,18~dm_}:/_`2 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:over line") + sw_trimming:=1; + fsize:=(75mm,20mm); + ratio_chain_ring:=1; + MC(<30,!18,$90`1.5,90`15.5, + {2~si_,4~wf_,6~wb_,8~zf_,10~zb_, + 12~bd_,14~dl_,16~dr_,18~dm_}:/_`2) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Steric ring} \index{wf\_r}% @@ -289,7 +574,21 @@ wb_r : wedge backward (half width) 120,O,30,&1,##,#.5,6^$90:/!OH, {1^$-90,2^$90,3^$-90,4^$90}:/OH, \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Steric ring") + fsize:=(75mm,16mm); + MCat(0.05,0.5)(#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##, + #.5,{1^$-90,2^$90,3^$-90,4^$90}:/OH,6^$90:/!OH) + defaultscale:=0.6; + MCat(0.5,0.7)(0~wf_r) add(label.lft("wf_r:",A1);) + MCat(0.5,0.2)(0~wf) add(label.lft("wf:",A1);) + MCat(0.75,0.7)(0~bd_r) add(label.lft("bd_r:",A1);) + MCat(0.75,0.2)(0~bd) add(label.lft("bd:",A1);) + MCat(1,0.7)(0~wb_r) add(label.lft("wb_r:",A1);) + MCat(1,0.2)(0~wb) add(label.lft("wb:",A1);) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Change multiple bond type} \index{vf}% @@ -298,7 +597,15 @@ wb_r : wedge backward (half width) <30,!7,{2,4,6,8'}=dl \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change multi bond") + fsize:=(60mm,8mm); + fmargin:=(2mm,3mm); + ratio_chain_ring:=1; + MC(<30,!9,{2,4,6,8'}=dl) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Change bond length} \subsubsection{Chain length} @@ -308,7 +615,14 @@ wb_r : wedge backward (half width) <-30,!2,!4`1.2,!2 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change bond length1") + fsize:=(55mm,8mm); + sw_numbering:=Bond; + MC(<-30,!2,!4`1.2,!2) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \index{\#}% \index{\#\#}% @@ -318,7 +632,14 @@ wb_r : wedge backward (half width) <-30,!2,#1.2,!4,##,!2 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change bond length2") + fsize:=(55mm,8mm); + sw_numbering:=Bond; + MC(<-30,!2,#1.2,!4,##,!2) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Ring length} \begin{verbatim} @@ -326,7 +647,16 @@ wb_r : wedge backward (half width) ?6,@4,\,?6`1.2 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change ring length") + fsize:=(60mm,16mm); + fmargin:=(2mm,2mm); + sw_trimming:=1; + sw_numbering:=Bond; + MC(?6,@4,\,?6`1.2) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Change atom} \subsubsection{Insert atom} @@ -335,7 +665,14 @@ Insert hetero atom <-30,!2,O,!2,N,!2 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Insert atom") + sw_trimming:=1; + fsize:=(50mm,7mm); + MC(<-30,!2,O,!2,N,!2) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Addressed atom} \index{:}% @@ -345,7 +682,16 @@ Insert hetero atom <30,!4,2:O,{3,4}:N \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change atom",":<30,!5,2:O,{3,4}:N") + fsize:=(70mm,10mm); + msize:=(0.48,1); + MCat(0,0.5)(scantokens(mc)) + sw_numbering:=Atom; + MCat(1,0.5)(scantokens(mc)) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Brock address} \index{\textbar}% | @@ -354,7 +700,17 @@ Insert hetero atom ?6,@4,\,|,?6,2:O \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change atom brock address 1",":?6,@4,\,|,?6,2:O") + fsize:=(70mm,14mm); + fmargin:=(3mm,1.5mm); + MCat(0,.5)(scantokens(mc)) + sw_numbering:=Atom; + msize:=(1,.88); + MCat(1,.5)(scantokens(mc)) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Reset brock address} \index{\textbar\textbar}% || @@ -363,7 +719,17 @@ Insert hetero atom ?6,@4,\,|,?6,||,2:N \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change atom brock address 2",":?6,@4,\,|,?6,||,2:N") + fsize:=(70mm,14mm); + fmargin:=(3mm,1.5mm); + MCat(0,.5)(scantokens(mc)) + sw_numbering:=Atom; + msize:=(1,.88); + MCat(1,.5)(scantokens(mc)) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Absolute address} \index{\$}% $ @@ -372,7 +738,17 @@ $2:N : change A$2 C to N **1<=n<=3095 ?6,@4,\,|,?6,$2:N \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change atom absolute address",":?6,@4,\,?6,$2:N") + fsize:=(70mm,14mm); + fmargin:=(3mm,1.5mm); + MCat(0,.5)(scantokens(mc)) + sw_numbering:=Atom; + msize:=(1,.88); + MCat(1,.5)(scantokens(mc)) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Relative address} \begin{verbatim} @@ -380,7 +756,17 @@ $2:N : change A$2 C to N **1<=n<=3095 ?6,@4,\,?6,-2:N \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change atom relative adress",":?6,@4,\,?6,-2:N") + fsize:=(70mm,14mm); + fmargin:=(3mm,1.5mm); + MCat(0,.5)(scantokens(mc)) + sw_numbering:=Atom; + msize:=(1,.88); + MCat(1,.5)(scantokens(mc)) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Charged atom} \begin{verbatim} @@ -389,7 +775,14 @@ p_ : positive / n_ : negative <-30,!2,N,??,p_,!2,S,n_^180, !6,7:N,7:??,9:S,7:n_,9:n_^180 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Charged atom") + sw_trimming:=1; + fsize:=(60mm,12mm); + MC(<-30,!2,N,??,p_,!2,S,n_^180,!6,7:N,7:??,9:S,7:p_,9:n_^180) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \newpage %----------------------------------------------------------------------------- @@ -403,7 +796,16 @@ p_ : positive / n_ : negative ?6,3=?6 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:fused ring") + fsize:=(60mm,18mm); + fmargin:=(2mm,1.5mm); + sw_trimming:=1; + sw_numbering:=Bond; + MC(<30,?6,3=?6,3=dt,{7:11}=bd_r) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \begin{verbatim} ** fused ring size depend on @@ -411,7 +813,17 @@ attached bond length ?6,@4,\,?6`1.2,5=?6,11=?6 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change ring length") + fsize:=(60mm,25mm); + fmargin:=(2mm,2mm); + sw_trimming:=1; + sw_numbering:=Bond; + MC(?6,@4,\,?6`1.2,5=?6,11=?6, + {14:23}=bd_r,{5,11}=dt) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \begin{verbatim} ?6,3=?6[13] : fuse ?6[13] at B3 @@ -420,15 +832,33 @@ attached bond length ?6,3=?6[13] \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:fused large 6 ring") + fsize:=(60mm,18mm); + fmargin:=(2mm,1.5mm); + margin_top_bottom:=1.5mm; + sw_numbering:=Bond; + sw_trimming:=1; + MC(<30,?6,3=?6[13],3=dt,{7:11}=bd_r) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \begin{verbatim} ?6,{-3,-4,-4,-2,-2,-4,-4}=?6 ?6,{4,8,13,20,25,28,33}=?6 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:fuse multi ring") + fsize:=(70mm,20mm); + fmargin:=(2mm,2mm); + sw_numbering:=Bond; + sw_trimming:=1; + MC(<30,?6,{-3,-4,-4,-2,-2,-4,-4}=?6,{4,8,13,20,25,28,33}=dt) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- -%%%\subsubsection{Attached 2 bond} \index{--}% \begin{verbatim} (Attached 2 bond) @@ -441,12 +871,25 @@ attached bond length 2:<30,?6,3=?6,11--4=?5 3:<30,?6,3=?6,11--4=?4 \end{verbatim} -\MCFgraph -\vspace{-3mm}% -\begin{verbatim} -\end{verbatim} +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:fused ring 2") + fsize:=(75mm,20mm); + fmargin:=(2mm,2mm); + sw_numbering:=Bond; + msize:=(1,.9); + MCat( 0,.5)(<30,?6,{3,11--4}=?6,{11,4}=dt,{12:15}=bd_r) + add(defaultscale:=0.4; label("(1)",p0);) + msize:=(1,.9); + MCat(.5,.5)(<30,?6,3=?6,{11--4}=?5,{11,4}=dt,{12:14}=bd_r) + add(defaultscale:=0.4; label("(2)",p0);) + msize:=(1,.9); + MCat( 1,.5)(<30,?6,3=?6,{11--4}=?4,{11,4}=dt,{12,13}=bd_r) + add(defaultscale:=0.4; label("(3)",p0);) +endfigm +\end{mplibcode} +%%%%%%%\vspace{-3mm}% %----------------------------------------------------------------------------- -%%%\subsubsection{Attached 3 bond} \index{---}% \begin{verbatim} (Attached 3 bond) @@ -458,12 +901,20 @@ attached bond length 2:?6,{3,10}=?6,16---4=?5 \end{verbatim} -\MCFgraph -\vspace{-3mm}% -\begin{verbatim} -\end{verbatim} +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:fused ring 3") + fsize:=(60mm,20mm); + fmargin:=(2mm,2mm); + sw_numbering:=Bond; + MCat(0,1)(?6,{3,10}=?6,16---4=?6,{16,4}=dt,{17:19}=bd_r) + add(defaultscale:=0.4; label("(1)",p0);) + MCat(1,0)(?6,{3,10}=?6,16---4=?5,{16,4}=dt,{17,18}=bd_r) + add(defaultscale:=0.4; label("(2)",p0);) +endfigm +\end{mplibcode} +%%%%%%%%\vspace{-3mm}% %----------------------------------------------------------------------------- -%%%%\subsubsection{Attached 4 bond} \index{----}% \begin{verbatim} (Attached 4 bond) @@ -473,7 +924,15 @@ attached bond length <-30,?6,{3,10,15,21----4}=?6 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:fused ring 4") + fsize:=(60mm,20mm); + fmargin:=(2mm,2mm); + sw_numbering:=Bond; + MC(<-30,?6,{3,10,15}=?6,21----4=?6,{21,4}=dt,{22,23}=bd_r) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Spiro ring} \begin{verbatim} @@ -481,7 +940,16 @@ attached bond length <30,!6,@4,?5 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Spiro ring ") + fsize:=(40mm,15mm); + sw_numbering:=Atom; + numbering_end:=7; + ratio_chain_ring:=1; + MC(<30,!6,@4,?5) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Group} \subsubsection{Insert group} @@ -490,14 +958,23 @@ attached bond length \begin{verbatim} / : group start single bond -/_ : methyl /! : ethyl -/!2 : propyl /?! : isopropyl -/??! : tert-butyl /Ph : phenyl +/_ : methyl +/! : ethyl +/!2 : propyl +/?! : isopropyl +/??! : tert-butyl +/Ph : phenyl <30,!,/_,!2,/!,!2,/!2,!4,/?!, !4,/??!,!2,/Ph^-60,! \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:group 1") + fsize:=(75mm,18mm); + MC(<30,!,/_,!2,/!,!2,/!,!4,/?!,!4,/??!,!2,/'(Ph`0.8)^-60,!) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Insert modified group} \index{//}% @@ -514,7 +991,20 @@ attached bond length <30,!,//O,!2,*/H,!2,/*H,!2,*/*H,!2,**?3,! \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:group 2") + fsize:=(70mm,14mm); + MC(<30,!`1,//O,!2`1,*/H,!2`1,/*H,!2`1,*/*H,!2`1,**?3,!`1) + add(defaultscale:=0.75; + label("//",A2-(0,0.45l)); + label("*/",A4-(0,0.45l)); + label("/*",A6-(0,0.45l)); + label("*/*",A8-(0,0.45l)); + label("**",A10-(0,0.45l)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \index{\textasciicircum}% ^ \index{\textasciitilde}% ~ @@ -529,7 +1019,14 @@ attached bond length <-30,``1,!, /_`2^30,!2,/!2>lr,!2,/!2>rl,!) \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:group 3") + fsize:=(60mm,16mm); + sw_trimming:=1; + MC(<-30,#1,!2,/_`2^30,!2,/!2>lr,!2,/!2>rl,!) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Add group} \begin{verbatim} @@ -537,7 +1034,17 @@ attached bond length 8:/tBu,10:/'(Ph`0.6)^-15, {11,12,13'}:*/_,{15,16,17'}:/*_ \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:group 3") + fsize:=(75mm,25mm); + fmargin:=(2mm,2mm); + sw_numbering:=Atom; + numbering_end:=17; + MC(<30,!17,2:/_,3:/!,4:/!2,7:/iPr,8:/tBu,10:/'(Ph`0.6)^-15, + {11,12,13'}:*/_,{15,16,17'}:/*_) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Add modified group} \begin{verbatim} @@ -545,7 +1052,16 @@ attached bond length <30,!6,{2~wf,4~zf,6^-30,8^$120}:/_ \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:group 4") + fsize:=(60mm,18mm); + sw_trimming:=1; + fmargin:=(2mm,2mm); + sw_numbering:=Atom; numbering_end:=9; + MC(<30,!8`1,{2~wf,4~zf,6^-30,8^$120}:/_) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \begin{verbatim} @@ -553,7 +1069,16 @@ attached bond length <-30,!7`1,3:/_`2^30,5:/!2>lr,7:/!2>rl \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:group 5") + fsize:=(60mm,16mm); + sw_trimming:=1; + sw_numbering:=Atom; + numbering_end:=8; + MC(<-30,!7`1,3:/_`2^30,5:/!2>lr,7:/!2>rl) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \newpage %----------------------------------------------------------------------------- @@ -570,7 +1095,25 @@ attached bond length {3^-90,3^-30,3^90}:/!3>hz, {1^-60,1,1^60}:/!3>vt \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:chain strech direction mode 1") + fsize:=(50mm,25mm); + sw_trimming:=1; + ratio_chain_ring:=1; + MC(?4,{3^-90,3^-30,3^90}:/!3>hz, + {1^-60,1,1^60}:/!3>vt + ) + add(defaultscale:=0.5; labeloffset:=2bp; + label.rt(">hz",A8); + label.top(">hz",A12); + label.top(">hz",A16); + label.rt(">vt",A20); + label.top(">vt",A24); + label.rt(">vt",A28); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Left-right,right-left} \index{lr}% @@ -583,7 +1126,14 @@ attached bond length {3^-30,3,3^30}:/!3>lr, {5^-30,5,5^30}:/!3>rl \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Left-right_right-left") + fsize:=(40mm,20mm); + sw_trimming:=1; + MC(<30,!4,2:/!6>30,4:/!4>-45) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Fixed rotate angle} \index{\textgreater}% @@ -595,7 +1145,14 @@ attached bond length 4:/!4>-45 % 4:\,-45,-45,-45,-45 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Fixed rotate angle") + fsize:=(40mm,20mm); + sw_trimming:=1; + MC(<30,!4,2:/!6>30,4:/!4>-45) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Multiple rotate angle} \begin{verbatim} @@ -603,7 +1160,14 @@ attached bond length <30,!6,6>'(90,-90,90,-90,90):/!5 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Multiple rotate angle") + fsize:=(60mm,20mm); + sw_trimming:=1; + MC(<30,!6,6>'(90,-90,90,-90,90):/!5) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \newpage \subsection{Miscellaneous} @@ -620,7 +1184,15 @@ SO : S,//O SOO : S,//O^35,//^-35 <-30,!2,NH,!2,N!,!2,N!2,SO,!2,SOO,! \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:change atom and group") + fsize:=(60mm,12mm); + sw_trimming:=1; + MC(<-30,!2,NH,!2,N!,!2,N!2,!2,SO,!2,SOO,!) +endfigm +\end{mplibcode} +%----------------------------------------------------------------------------- \index{?"!}% \index{??}% \index{??"!}% @@ -632,7 +1204,14 @@ SO : S,//O SOO : S,//O^35,//^-35 <30,!9`1,?!,!,??,!,2:??,4:/??,6:/??!,8:/N?! \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:methyl*2,isopropyl,tert-butyl") + fsize:=(60mm,12mm); + sw_trimming:=1; + MC(<30,!9`1,?!,!,??,!,2:??,4:/?!,6:/??!,8:/N?!) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Parts definition} \begin{verbatim} @@ -641,13 +1220,29 @@ SO : S,//O SOO : S,//O^35,//^-35 iBuOH:='(!,/_,!,OH); MC(<30,?6,{4,6}:/iBuOH) \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:User definition") + fsize:=(60mm,13mm); + sw_trimming:=1; + iBuOH:='(!,/_,!,OH); + MC(<30,?6,{4,6}:/iBuOH) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Parts inline definition} \begin{verbatim} <30,!8,{2,6}:/'(!,/_,!,OH) \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Inline definition") + fsize:=(60mm,13mm); + fmargin:=(2mm,1mm); + sw_trimming:=1; + MC(<30,!8,{2,6}:/'(!,/_,!,OH)) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Move position} \index{"@()}% @@ -658,7 +1253,23 @@ MC(<30,?6,{4,6}:/iBuOH) <30,?6,@3,!4,//O,!,O,n_^60,@$(6,1),H,p_^15 \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Move position") + fsize:=(70mm,16mm); + fmargin:=(2mm,1mm); + sw_trimming:=1; + MC(<30,?6,@3,\,!3,//O,!,O,n_^60,@$(6,1),H,p_^15) + add(drawdot A1 withpen pencircle scaled 2bp; + pickup pencircle scaled 0.1bp; + for i=0 upto 6: + draw (A1+(l*i,l-3bp))--(l*i,l+3bp); + endfor + draw A1--(A1+(0,1l))--A1+(6l,1l); + draw (A1+(0,1l))--(A1+(-3bp,1l)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Serial number} \index{\-\-}% @@ -666,9 +1277,17 @@ MC(<30,?6,{4,6}:/iBuOH) 6:10 : 6,7,8,9,10 <30,!14,{2,6:10,14}:/_~bd_r`0.5 \end{verbatim} -\MCFgraph -\newpage +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Serial number") + fsize:=(75mm,14mm); + max_blength:=8mm; + sw_numbering:=Atom; numbering_end:=15; + MC(<30,!14,{2,6:10,14}:/_~bd_r`0.5) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- +\newpage \subsubsection{Change color} \index{red}% \index{blue}% @@ -685,7 +1304,17 @@ beginfigm() ) endfigm \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Change color") + fsize:=(50mm,20mm); + max_blength:=8mm; + MC( + <30,Ph,{2,5}:N,3:/NH2,4:/COOH, + 2:red,5:blue,3=green + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Change font} \index{atomfont}% @@ -697,7 +1326,15 @@ beginfigm() MC(<30,Ph,{2,5}:N,3:/NH2,4:/COOH) endfigm \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:Change font") + fsize:=(50mm,20mm); + max_blength:=8mm; + atomfont:="cmr8"; + MC(<30,Ph,{2,5}:N,3:/NH2,4:/COOH) +endfigm +\end{mplibcode} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Option parameter} %------------------------------------------------------------------------------ @@ -710,7 +1347,19 @@ MCat(0.2,0.5)(Ph) mangle:=30; MCat(0.8,0.5)(Ph) \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:mangle") + fsize:=(50mm,15mm); + blength:=6mm; + mangle:=0; + MCat(0.2,0.5)(Ph) + add(drawarrow((A1 shifted (aw,0)) rotated A1ang..A1);) + mangle:=30; + MCat(0.8,0.5)(Ph) + add(drawarrow((A1 shifted (aw,0)) rotated A1ang..A1);) +endfigm +\end{mplibcode} %------------------------------------------------------------------------------ \subsection{Size/Ratio parameter} %----------------------------------------------------------------------------- @@ -720,56 +1369,173 @@ MCat(0.8,0.5)(Ph) (fit to figure size) blength=0 ** default \end{verbatim} -\MCFgraph +%----------------------------------------- +\begin{mplibcode} +beginfigm("EN:blength=0") + sw_frame:=Bothside; + fsize:=(40mm,15mm); + MC(<30,Ph) + ext(pickup pencircle scaled 0.2pt; + for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor + for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor + for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor + for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor + ) +endfigm +\end{mplibcode} %----------------------------------------- \begin{verbatim} (ratio bond/figure width) blength=0.1 ** (0<blength<=1) blength=60mm(width)*0.1=6mm \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:0<blength=<1") + sw_frame:=Bothside; + fsize:=(40mm,15mm); + blength:=0.1; + MC(<30,Ph) + ext(pickup pencircle scaled 0.2pt; + for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor + for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor + for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor + for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor + ) +endfigm +\end{mplibcode} %----------------------------------------- \begin{verbatim} (bond length) blength=9mm ** (blength>1) ignore msize(w,h) \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:blength>1") + sw_frame:=Bothside; + fsize:=(40mm,15mm); + blength:=8mm; + MC(<30,Ph) + ext(pickup pencircle scaled 0.2pt; + for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor + for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor + for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor + for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor + ) +endfigm +\end{mplibcode} %------------------------------------------------------------------------------ \subsubsection{Molecular size} \index{msize}% \begin{verbatim} msize=(1,1) ** default \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:msize=(1)") + sw_frame:=Bothside+Mol; + fsize:=(40mm,15mm); + msize:=(1,1); + MC(<30,Ph) + ext(pickup pencircle scaled 0.2pt; + for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor + for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor + for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor + for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor + ) +endfigm +\end{mplibcode} %----------------------------------------------------------- \begin{verbatim} msize=(0.25,1) msize=40mm-4mm*0.25=9mm \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:msize=(0.25,1)") + sw_frame:=Bothside+Mol; + fsize:=(40mm,15mm); + msize:=(0.25,1); + MC(<30,Ph) + ext(pickup pencircle scaled 0.2pt; + for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor + for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor + for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor + for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor + ) +endfigm +\end{mplibcode} %----------------------------------------------------------- \begin{verbatim} msize=(11mm,11mm) \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:msize=(11mm,11mm)") + sw_frame:=Bothside+Mol; + fsize:=(40mm,15mm); + msize:=(11mm,11mm); + MC(<30,Ph) + ext(pickup pencircle scaled 0.2pt; + for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor + for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor + for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor + for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor + ) +endfigm +\end{mplibcode} %------------------------------------------------------------------------------ \subsubsection{Molecular position} \index{mposition}% \begin{verbatim} mposition=(0.5,0.5) ** default \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:mposition") + sw_frame:=Bothside+Mol; + fsize:=(40mm,15mm); + msize:=(1,0.8); + mposition:=(0.5,0.5); + MC(<30,Ph) +endfigm +\end{mplibcode} %-------------------------------------------------------------- \begin{verbatim} mposition=(1,0) \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:mposition") + sw_frame:=Bothside+Mol; + fsize:=(40mm,15mm); + msize:=(1,0.8); + mposition:=(1,0); + MC(<30,Ph) +endfigm +\end{mplibcode} %-------------------------------------------------------------- \begin{verbatim} mposition=(10mm,4mm) \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:mposition") + sw_frame:=sw_frame+Mol; + fsize:=(40mm,15mm); + msize:=(1,0.8); + mposition:=(10mm,4mm); + MC(<30,Ph) + ext(drawdot p1 withpen pencircle scaled 3pt; + pickup pencircle scaled 0.2pt; + for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor + for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor + for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor + for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor + ) +endfigm +\end{mplibcode} %------------------------------------------------------------------------------ \subsection{Size parameter} %----------------------------------------------------------------------------- @@ -781,7 +1547,20 @@ fsize=(figure width,figure height) fsize=(40mm,15mm) \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:Figure size") + fsize:=(40mm,12mm); + sw_frame:=Outside; + MC(<30,Ph) + ext(pickup pencircle scaled 0.2pt; + for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor + for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor + for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor + for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Figure margin} \index{fmargin}% @@ -791,42 +1570,123 @@ fmargin=(margin left rigth,top bottom) fmargin=(10mm,2mm) \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:fmargin") + fsize:=(40mm,12mm); + sw_frame:=Bothside+Mol; + fmargin:=(10mm,1mm); + MC(<30,Ph) + ext(pickup pencircle scaled 0.2pt; + for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor + for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor + for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor + for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor + drawdot p0 withpen pencircle scaled 3pt; + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Offset thickness of bond} \index{offset\_thickness}% \begin{verbatim} default: offset_thickness=0.2pt \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:offset_thickness",":<30,Ph") + fsize:=(60mm,12mm); + offset_thickness:=0.0pt; MCat(0.1,0.5)(scantokens(mc)) + offset_thickness:=0.2pt; MCat(0.55,0.5)(scantokens(mc)) + offset_thickness:=0.5pt; MCat(1,0.5)(scantokens(mc)) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("0.0pt",(0,1bp)); + label.urt("0.2pt",(0.36w,1bp)); + label.urt("0.5pt",(0.7w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Offset of double bond gap} \index{offset\_bond\_gap}% \begin{verbatim} default: offset_bond_gap=0.3pt \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:offset_bond_gap",":<30,Ph") + fsize:=(60mm,12mm); + offset_bond_gap:=0.0pt; MCat(0.1, 0.5)(scantokens(mc)) + offset_bond_gap:=0.3pt; MCat(0.55,0.5)(scantokens(mc)) %<<== default + offset_bond_gap:=1.0pt; MCat(1, 0.5)(scantokens(mc)) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("0.0pt",(0,1bp)); + label.urt("0.3pt",(0.36w,1bp)); + label.urt("1.0pt",(0.7w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Offset of atom width} \index{offset\_atom}% \begin{verbatim} default: offset_atom=0.8pt \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:offset_atom") + fsize:=(60mm,12mm); + offset_atom:=0.0pt; MCat(0.1, .5)(<30,?6,3:O) + offset_atom:=0.8pt; MCat(.55, .5)(<30,?6,3:O) %<<== default + offset_atom:=2.0pt; MCat(1, .5)(<30,?6,3:O) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("0.0pt",(0,1bp)); + label.urt("0.8pt",(0.36w,1bp)); + label.urt("2.0pt",(0.7w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Offset of wedge width} \index{offset\_wedge}% \begin{verbatim} default: offset_wedge=0.4pt \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:offset_wedge") + fsize:=(60mm,12mm); + offset_wedge:=0.0pt; MCat(0.1,0.5)(<30,?6,5:*/_) + offset_wedge:=0.4pt; MCat(0.55,0.5)(<30,?6,5:*/_) %<<== default + offset_wedge:=1.0pt; MCat(1, 0.5)(<30,?6,5:*/_) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("0.0pt",(0,1bp)); + label.urt("0.4pt",(0.36w,1bp)); + label.urt("1.0pt",(0.7w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Max bond length} \index{max\_blength}% \begin{verbatim} default: max_blength=10mm \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:max_blength") + fsize:=(60mm,20mm); + sw_frame:=sw_frame+Mol; + max_blength:=5mm; MCat(0, .5)(<30,Ph) + max_blength:=8mm; MCat(.4,.5)(<30,Ph) + max_blength:=10mm; MCat(1, .5)(<30,Ph) %<<== default + ext(defaultscale:=0.6; labeloffset:=1bp; + label("5mm", (0.1w,0.5h)); + label("8mm", (0.42w,0.5h)); + label("10mm",(0.82w,0.5h)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Ratio parameter} %----------------------------------------------------------------------------- @@ -835,56 +1695,161 @@ default: max_blength=10mm \begin{verbatim} default: ratio_thickness_bond=0.015 \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:ratio_thickness_bond") + fsize:=(60mm,12mm); + ratio_thickness_bond:=0.005; MCat(0.1,0.5)(<30,Ph) + ratio_thickness_bond:=0.015; MCat(.55,0.5)(<30,Ph) %<<== default + ratio_thickness_bond:=0.03; MCat(1, 0.5)(<30,Ph) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("0.005",(0,1bp)); + label.urt("0.015",(0.36w,1bp)); + label.urt("0.030",(0.7w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Char/bond thickness} \index{ratio\_char\_bond}% \begin{verbatim} default: ratio_char_bond=1.5 \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:ratio_char_bond") + fsize:=(60mm,12mm); + ratio_char_bond:=1.0; MCat(0, .5)(<30,?6,6:O,3:NH) + ratio_char_bond:=1.5; MCat(.5, .5)(<30,?6,6:O,3:NH) %<<== default + ratio_char_bond:=2.0; MCat( 1, .5)(<30,?6,6:O,3:NH) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("1.0",(0,1bp)); + label.urt("1.5",(0.36w,1bp)); + label.urt("2.0",(0.7w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Bond gap/bond length} \index{ratio\_bondgap\_bond}% \begin{verbatim} default: ratio_bondgap_bond= 0.15 \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:ratio_bondgap_bond") + fsize:=(60mm,12mm); + ratio_bondgap_bond:=0.10; MCat(0.1, .5)(<30,Ph) + ratio_bondgap_bond:=0.15; MCat(.55, .5)(<30,Ph) %<<== default + ratio_bondgap_bond:=0.20; MCat(1 , .5)(<30,Ph) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("0.10",(0,1bp)); + label.urt("0.15",(0.36w,1bp)); + label.urt("0.20",(0.7w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Atom/bond length} \index{ratio\_atom\_bond}% \begin{verbatim} default: ratio_atom_bond= 0.36 \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:ratio_atom_bond") + fsize:=(60mm,12mm); + ratio_atom_bond:=0.25; MCat(0.1, .5)(<30,?6,3:O) + ratio_atom_bond:=0.33; MCat(.55, .5)(<30,?6,3:O) %<<== default + ratio_atom_bond:=0.45; MCat(1, .5)(<30,?6,3:O) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("0.25",(0,1bp)); + label.urt("0.33",(0.36w,1bp)); + label.urt("0.45",(0.7w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Wedge/bond length} \index{ratio\_wedge\_bond}% \begin{verbatim} default: ratio_wedge_bond=0.12 \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:ratio_wedge_bond") + fsize:=(70mm,12mm); + ratio_wedge_bond:=0.1; MCat(0.05,.5)(?6,4:*/_) + ratio_wedge_bond:=0.12; MCat(.55, .5)(?6,4:*/_) %<<== default + ratio_wedge_bond:=0.2; MCat(1 , .5)(?6,4:*/_) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("0.10",(0,1bp)); + label.urt("0.12",(0.36w,1bp)); + label.urt("0.20",(0.7w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Figure atom gap/atom length} \index{ratio\_atomgap\_atom}% \begin{verbatim} default: ratio_atomgap_atom= 0.050 \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:ratio_atomgap_atom",":<30,!2`0.5,2:O") + fsize:=(70mm,12mm); + sw_frame:=sw_frame+Atom; + ratio_atomgap_atom:=0.00; MCat(0, .5)(scantokens(mc)) + ratio_atomgap_atom:=0.050; MCat(.5,.5)(scantokens(mc)) %<<== default + ratio_atomgap_atom:=0.12; MCat(1, .5)(scantokens(mc)) + ext(defaultscale:=0.75; labeloffset:=1bp; + label.urt("0.00",(0.05w,1bp)); + label.urt("0.05",(0.45w,1bp)); + label.urt("0.12",(0.85w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Chain/ring length} \index{ratio\_chain\_ring}% \begin{verbatim} default: ratio_chain_ring= 0.66 \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:ratio_chain_ring") + fsize:=(70mm,12mm); + ratio_chain_ring:= 0.4; MCat(0.05,.5)(<30,?6,4:/!) + ratio_chain_ring:= 0.66; MCat(.45, .5)(<30,?6,4:/!) %<<== default + ratio_chain_ring:= 1; MCat(1, .5)(<30,?6,4:/!) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("0.40",(0,1bp)); + label.urt("0.66",(0.3w,1bp)); + label.urt("1.0" ,(0.62w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Hash gap/bond length} \index{ratio\_hashgap\_bond}% \begin{verbatim} default: ratio_hashgap_bond=0.12 \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:ratio_hashgap_bond",":<30,!2,2:/*_`1.5") + fsize:=(70mm,15mm); + ratio_hashgap_bond:=0.06; MCat(0.08,.5)(scantokens(mc)) + ratio_hashgap_bond:=0.12; MCat( .55,.5)(scantokens(mc)) %<<== default + ratio_hashgap_bond:=0.20; MCat(1, .5)(scantokens(mc)) + ext(defaultscale:=0.6; labeloffset:=1bp; + label.urt("0.06",(0,1bp)); + label.urt("0.12",(0.4w,1bp)); + label.urt("0.20",(0.77w,1bp)); + ) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- %%%%\newpage %----------------------------------------------------------------------------- @@ -904,7 +1869,15 @@ default: sw_numbering=0 sw_numbering:=Atom; MC(<-30,!9) \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch numbering atom") + fsize:=(60mm,10mm); + ratio_chain_ring:=1; + numbering_start:=3; numbering_end:=8; + sw_numbering:=Atom; MC(<-30,!9) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Numbering bond} \index{numbering\_start}% @@ -919,7 +1892,15 @@ default: sw_numbering=0 sw_numbering:=Bond; MC(<-30,!9) \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch numbering bond") + fsize:=(60mm,10mm); + ratio_chain_ring:=1; + numbering_start:=3; numbering_end:=8; + sw_numbering:=Bond; MC(<-30,!9) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Trimming mode} \index{sw\_trimming}% @@ -929,13 +1910,32 @@ msize:=(1,0.7); MCat(0.2,0.3)(Ph) MCat(0.8,0.7)(Ph) \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch trimming") + fsize:=(60mm,20mm); + sw_frame:=Bothside+Mol; + msize:=(1,.7); MCat(.2,.3)(Ph) + MCat(.8,.7)(Ph) +endfigm +\end{mplibcode} +%------------------------------------------------------ \begin{verbatim} sw_trimming:=1; MCat(0.2,0.3)(Ph) MCat(0.8,0.7)(Ph) \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch trimming") + fsize:=(60mm,20mm); + sw_frame:=Bothside+Mol; + sw_trimming:=1; + msize:=(1,.7); + MCat(.2,.3)(Ph) + MCat(.8,.7)(Ph) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Expand mode} \index{sw\_expand}% @@ -945,7 +1945,15 @@ sw_expand:=1; MCat(1, .5)(<30,Ph,4:/COOH,3:/NH2) ** default: sw_expand=0 \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch Expand",":<30,Ph,4:/COOH,3:/NH2") + fsize:=(60mm,20mm); + MCat(0, .5)(scantokens(mc)) + sw_expand:=1; + MCat(1, .5)(scantokens(mc)) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Abbreviate group} \index{Group}% @@ -953,7 +1961,15 @@ MCat(1, .5)(<30,Ph,4:/COOH,3:/NH2) \begin{verbatim} ** default: sw_abbreviate=Group \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch abbreviate group",":<30,Ph,4:/Cl,3:/F") + fsize:=(60mm,12mm); + MCat(.15, .5)(scantokens(mc)) + sw_abbreviate:=Group; + MCat(.85, .5)(scantokens(mc)) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Abbreviate bond type} \index{Bond}% @@ -961,7 +1977,15 @@ MCat(1, .5)(<30,Ph,4:/COOH,3:/NH2) \begin{verbatim} ** default: sw_abbreviate=Bond \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch abbreviate bondtype",":<30,Ph,4:/Cl,3:/F") + fsize:=(60mm,12mm); + MCat(.15, .5)(scantokens(mc)) + sw_abbreviate:=Bond; + MCat(.85, .5)(scantokens(mc)) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Frame} %----------------------------------------------------------------------------- @@ -976,17 +2000,43 @@ MCat(1, .5)(<30,Ph,4:/COOH,3:/NH2) fmargin:=(5mm,2mm); sw_frame=Outside \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch font frame 1") + fsize:=(30mm,10mm); + fmargin:=(5mm,1.5mm); + sw_frame:=Outside; + MC(<30,Ph) +endfigm +\end{mplibcode} +%------------------------------------------------------ \begin{verbatim} (Frame inside margin) sw_frame=Inside \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch font frame 2") + fsize:=(30mm,10mm); + fmargin:=(5mm,1.5mm); + sw_frame:=Inside; + MC(<30,Ph) +endfigm +\end{mplibcode} +%------------------------------------------------------ \begin{verbatim} (Draw both frame) sw_frame=Bothside=Inside+Outside \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch font frame 3") + fsize:=(30mm,10mm); + fmargin:=(5mm,1.5mm); + sw_frame:=Bothside; + MC(<30,Ph) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Molecular frame} \index{Mol}% @@ -994,7 +2044,16 @@ sw_frame=Bothside=Inside+Outside sw_frame=Mol ** default:sw_frame=0 \end{verbatim} -\MCFgraph +%------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:Switwch molecular frame") + sw_frame:=Outside; + fsize:=(40mm,11mm); + msize:=(1,1); + sw_frame:=sw_frame+Mol; + MC(<30,Ph) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Atom frame} \index{Atom}% @@ -1004,7 +2063,14 @@ sw_frame=Atom MC(<30,COOH,!,COOH) \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:Switwch atom frame") + fsize:=(60mm,10mm); + sw_frame:=sw_frame+Atom; + MC(<30,COOH,!,COOH) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Parameter setting} \subsubsection{Local parameter setting} @@ -1024,7 +2090,21 @@ beginfigm() MC(Ph) endfigm \end{verbatim} -\MCFgraph\MCFgraph\MCFgraph +%------------------------------------------------------ +\quad +\begin{mplibcode} +fsize:=(15mm,12mm); +beginfigm("EN:Local setting 1") + MC(Ph) +endfigm +beginfigm("EN:Local setting 2") + ratio_thickness_bond:=0.05; + MC(Ph) +endfigm +beginfigm("EN:Local setting 3") + MC(Ph) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Global parameter setting} \begin{verbatim} @@ -1041,7 +2121,23 @@ beginfigm() MC(Ph) endfigm \end{verbatim} -\MCFgraph\MCFgraph\MCFgraph +%---------------------------------------------------- +\quad +\begin{mplibcode} +save_ratio:=ratio_thickness_bond; +fsize:=(15mm,12mm); +beginfigm("EN:Global setting 1") + MC(Ph) +endfigm +ratio_thickness_bond:=0.05; +beginfigm("EN:Global setting 2") + MC(Ph) +endfigm +beginfigm("EN:Global setting 3") + MC(Ph) +endfigm +ratio_thickness_bond:=save_ratio; +\end{mplibcode} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Function} %----------------------------------------------------------------------------- @@ -1062,7 +2158,15 @@ beginfigm() MC(<30,Ph,3:/F,4:/Cl) endfigm \end{verbatim} -\MCFgraph +%------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:MC() ") + fmargin:=(0.5mm,0.5mm); + fsize:=(40mm,15mm); + sw_frame:=Outside+Mol; + MC(<30,Ph,4:/Cl,3:/F) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Function MCat()} \index{MCat()}% @@ -1092,7 +2196,27 @@ for i=1 step -0.5 until 0: endfor \end{verbatim} -\MCFgraph +%--------------------------------------------- +\begin{mplibcode} +beginfigm("EN:MCat()") + defaultscale:=0.6; + fsize:=(60mm,40mm); + fmargin:=(3mm,3mm); + blength:=0.07; + sw_frame:=Outside; + mangle:=0; + for i=1 step -0.5 until 0: + for j=0 step 0.33 until 1: + MCat(j,i)(Ph,4:N) + add( + drawarrow((A1+A1up**aw)..A1); + label(decimal(mangle),p0+(0.5w,0.5h)); + ) + mangle:=mangle+30; + endfor + endfor +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Function mc\_check()} \index{mc\_check()}% @@ -1113,7 +2237,21 @@ beginfigm("EN:Pyridine", endfigm \end{verbatim} -\MCFgraph\hspace{22mm}\MCFgraph +%----------------------------------------------------- +\quad +\begin{mplibcode} +beginfigm("EN:Pyridine",":<30,Ph,2:N") + sw_trimming:=0; + fsize:=(12mm,12mm); + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +beginfigm("EN:Pyridine",":<30,Ph,2):N") + sw_trimming:=0; + fsize:=(12mm,12mm); + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +\end{mplibcode} +%----------------------------------------------------- \begin{verbatim} mc_check(mc)=0 mc_check(mc)>=1 \end{verbatim} @@ -1200,7 +2338,7 @@ a /* b : point b of a beginfigm("EN:add() 1") fsize:=(70mm,40mm); - sw_frame:=Bothside; + sw_frame:=sw_frame+Atom+Mol; max_blength:=10mm; msize:=(.91,.9); MCat(.5,.85)(<30,?6,{2,5}:O) @@ -1223,13 +2361,46 @@ beginfigm("EN:add() 1") " em="&decimal(em), p0+(-9em,-1.5em)); label.rt( "w="&decimal(w)& - " h="&decimal(h)& - " l="&decimal(l), + " h="&substring (0,6)of decimal(h)& + " l="&substring (0,6)of decimal(l), p0+(-9em,-3em)); ) endfigm \end{verbatim} -\MCFgraph +%------------------------------------------------------------------------------ +\begin{mplibcode} +beginfigm("EN:add() 1") + fsize:=(70mm,40mm); + sw_frame:=sw_frame+Atom+Mol; + max_blength:=10mm; + msize:=(.91,.9); + MCat(.5,.85)(<30,?6,{2,5}:O) + add( + defaultscale:=.8; + labeloffset:=.3aw; + dotlabel.lft("p0",p0); + dotlabel.rt( "p0+(w,h)",p0+(w,h)); + dotlabel.ulft("A1",A1); + drawarrow A1..A1+__*l<<A1ang; + dotlabel.lrt( "B3s",B3s); + dotlabel.rt("B3m",B3m); + drawarrow B3m..B3m+__*l<<(B3ang+90); + dotlabel.ulft("A6",A6); + drawarrow A1{A1down}..A6; + dotlabel.urt( "B3e",B3e); + label.rt( "An="&decimal(An)& + " Bn="&decimal(Bn)& + " aw="&decimal(aw)& + " em="&decimal(em), + p0+(-9em,-1.5em)); + label.rt( "w="&substring (0,6)of decimal(w)& + " h="&substring (0,6)of decimal(h)& + " l="&substring (0,6)of decimal(l), + p0+(-9em,-3em)); + ) +endfigm +\end{mplibcode} +%------------------------------------------------------------------------------ \begin{verbatim} beginfigm("EN:add() 2") fsize:=(60mm,20mm); @@ -1260,7 +2431,30 @@ beginfigm("EN:add() 2") %--------------------------------------- endfigm \end{verbatim} -\MCFgraph +%------------------------------------------------------- +\begin{mplibcode} +beginfigm("EN:add() 2") + fsize:=(70mm,20mm); + msize:=(1,0.85); + %------------------------------------------- + MCat(0,0)(<30,Ph,3=dl,4:/NH2) + %------------------------------------------- + add(labeloffset:=.7aw; + label.top(lonepair 90,A7); + drawarrow (A7+up**1.2aw){A7left}..{B7right}B7/*0.3; + drawarrow B3m..A3+B2up**1.5aw..{A3down}A3; + ) + %------------------------------------------- + MCat(1,0)(<30,?6,{1,5}=dl,4://NH2) + %------------------------------------------- + add(labeloffset:=.7aw; + label.top(plus,A7); + label.urt(minus,A3); + label(lonepair A3ang,A3+A3up**.7aw); + ) + ext(drawdblarrow (0.4w,0.4h)..(0.55w,0.4h);) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \newpage \subsection{Function ext()} @@ -1299,15 +2493,15 @@ beginfigm() <-210,60`1,60`1,60`1,{1,3}=dl, 1:/R1,4:/R2^-60 ) - add( + add( defaultscale:=0.6; label.bot("Diene",p0+(0.5w,0)); - ) + ) MCat(0.4,0.5)( <-30,-60`1,1=dl,1:/R3,2:/R4^60) add(defaultscale:=0.6; label.bot("Dienophile",p0+(.5w,0)); - ) + ) MCat(0.9,0.5)( <30,?6,6=dl,2:/R2,3:/R4,4:/R3,5:/R1 ) @@ -1323,7 +2517,40 @@ beginfigm() %--------------------------------------- endfigm \end{verbatim} -\MCFgraph +%------------------------------------------------------------------------------ +\begin{mplibcode} +beginfigm() + fsize:=(70mm,30mm); + blength:=0.065; + %--------------------------------------- + MCat(0.1,0.5)( + <-210,60`1,60`1,60`1,{1,3}=dl, + 1:/R1,4:/R2^-60 + ) + add( + defaultscale:=0.6; + label.bot("Diene",p0+(0.5w,0)); + ) + MCat(0.4,0.5)( + <-30,-60`1,1=dl,1:/R3,2:/R4^60) + add(defaultscale:=0.6; + label.bot("Dienophile",p0+(.5w,0)); + ) + MCat(0.9,0.5)( + <30,?6,6=dl,2:/R2,3:/R4,4:/R3,5:/R1 + ) + %--------------------------------------- + ext( + drawarrow (.52w,.5h)..(.6w,.5h); + defaultscale:=0.7; + label("+",(0.25w,0.5h)); + ratio_thickness_char:=0.125; + label.bot("Diels-Alder Reaction", + (.5w,h)); + ) + %--------------------------------------- +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsubsection{Local ext() setting} \begin{verbatim} @@ -1347,7 +2574,30 @@ beginfigm("EN:?5") MCat(0.5,1)(?6) endfigm \end{verbatim} -\MCFgraph\MCFgraph\MCFgraph\MCFgraph +%---------------------------------------------------- +\quad +\begin{mplibcode} +beginfigm("EN:?3") + fsize:=(12mm,15mm); + MCat(0.5,1)(<30,?3) +endfigm +beginfigm("EN:?4") + fsize:=(12mm,15mm); + MCat(0.5,1)(?4) + %------------------------------- + ext(label.top(inf_EN,(0.5w,0));) + %------------------------------- +endfigm +beginfigm("EN:?5") + fsize:=(12mm,15mm); + MCat(0.5,1)(?5) +endfigm +beginfigm("EN:?5") + fsize:=(12mm,15mm); + MCat(0.5,1)(?6) +endfigm +\end{mplibcode} +%----------------------------------------------------------------------------- \subsubsection{Global ext() setting} \index{ext\_clear}% \begin{verbatim} @@ -1376,10 +2626,36 @@ beginfigm("EN:?6") MCat(0.5,1)(?6) endfigm \end{verbatim} -\MCFgraph\MCFgraph\MCFgraph\MCFgraph +%------------------------------------- +\quad +\begin{mplibcode} +beginfigm("EN:?3") + fsize:=(12mm,15mm); + MCat(0.5,1)(<30,?3) +endfigm +%------------------------------- +ext(label.top(inf_EN,(0.5w,0));) +%------------------------------- +beginfigm("EN:?4") + fsize:=(12mm,15mm); + MCat(0.5,1)(?4) +endfigm +beginfigm("EN:?5") + fsize:=(12mm,15mm); + MCat(0.5,1)(?5) +endfigm +%--------- +ext_clear; +%--------- +beginfigm("EN:?6") + fsize:=(12mm,15mm); + MCat(0.5,1)(?6) +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \newpage %----------------------------------------------------------------------------- +\onecolumn \section{MCF example} %----------------------------------------------------------------------------- \subsection{Luciferin} @@ -1392,7 +2668,13 @@ beginfigm("f:mcf_library", if mc_check(mc)=0: MC(scantokens(mc)) fi endfigm \end{verbatim} -\MCFgraph +%------------------------------------------- +\begin{mplibcode} +beginfigm("t:EN","v:Luciferin") + fsize:=(50mm,15mm); + if mc_check(mc)=0: MC(scantokens(mc)) fi +endfigm +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Colchicine} \begin{verbatim} @@ -1406,29 +2688,18 @@ beginfigm("EN:Colchicine","MW:385.41", if mc_check(mc)=0: MC(scantokens(mc)) fi endfigm \end{verbatim} -\MCFgraph -%----------------------------------------------------------------------------- -\subsection{Paclitaxel} -\begin{verbatim} -beginfigm("EN:Paclitaxel","MW:853.91", - %------------------------------------ - ": ?6,5=dl,@3,#1,36,45,45,45,45,##, ", - ": &5", ", - ": -4=?6,-4=?4,-1=wb,-3=wf,-1:O,||, ", - ": 4:??,6:/_,{3^-60,15}:*/OH, ", - ": 8:/*H^-60,", ", - ": 9:*/_^60,10://O, ", - ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf, ", - ": NH,-60,//O,60,Ph, ", - ": @7,\*,O,-45,//O,60,Ph, ", - ": @11,*\,O,-60,//O,60, ", - ": @12,\*^-15,O,60,//O,-60 ") - %------------------------------------ - fsize:=(50mm,25mm); +%--------------------------------------- +\begin{mplibcode} +beginfigm("EN:Colchicine","MW:385.41", + %------------------------------------- + ": <30,Ph,{1,2,6}:/O!,{-4,-5}=?7, ", + ": {-1,-4,-6}=dl,-2://O,-3:/O!, ", + ": @9,\,NH,!,//O,! ") + %------------------------------------- + fsize:=(50mm,20mm); if mc_check(mc)=0: MC(scantokens(mc)) fi endfigm -\end{verbatim} -\MCFgraph +\end{mplibcode} %----------------------------------------------------------------------------- \subsection{Maltose} \index{arc\_lb} @@ -1439,50 +2710,323 @@ arc_lb : arc left > bottom arc_br : arc bottom right beginfigm("EN:Maltose","MW:342.3", - %----------------------------------------- - ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r, ", - ": 120,O,30,&1,##, ", - ": #.5,{1^$-90,2^$90,3^$-90}:/OH, ", - ": 6^$90:/!OH, ", - ": @4,$-50~arc_lb`1,O,$50~arc_br`1,<$0, ", - ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r, ", - ": 120,O,30,&1,##, ", - ": #.5,{2^$90,3^$-90,4^$-90}:/OH, ", - ": 6^$90:/!OH ") - %----------------------------------------- + %------------------------------------------------------- + ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##, ", + ": #.5,{1^$-90,2^$90,3^$-90}:/OH,6^$90:/!OH, ", + ": @4,$-50~arc_lb`1,O,$50~arc_br`1,<$0, ", + ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##, ", + ": #.5,{2^$90,3^$-90,4^$-90}:/OH,6^$90:/!OH ") + %------------------------------------------------------- fsize:=(50mm,20mm); if mc_check(mc)=0: MC(scantokens(mc)) fi endfigm \end{verbatim} -\MCFgraph -%----------------------------------------------------------------------------- -\subsection{Cellobiose} -\index{arc\_lbr} -\index{arc\_ltr} -\begin{verbatim} -(bond type for glycan) -arc_lbr : arc left > bottom > right -arc_ltr : arc left > top > right - -beginfigm("EN:Cellobiose","MW:342.3", - %----------------------------------------- - ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r, ", - ": 120,O,30,&1,##, ", - ": #.5,{1^$-90,2^$90,3^$-90}:/OH, ", - ": 6^$90:/!OH, ", - ": @4,$0~arc_ltr,O,$0~arc_lbr, ", - ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r, ", - ": 120,O,30,&1,##, ", - ": #.5,{2^$90,3^$-90,4^$-90}:/OH, ", - ": 6^$90:/!OH ") - %----------------------------------------- +%------------------------------------------------- +\begin{mplibcode} +beginfigm("EN:Maltose","MW:342.3", + %------------------------------------------------------- + ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##, ", + ": #.5,{1^$-90,2^$90,3^$-90}:/OH,6^$90:/!OH, ", + ": @4,$-50~arc_lb`1,O,$50~arc_br`1,<$0, ", + ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##, ", + ": #.5,{2^$90,3^$-90,4^$-90}:/OH,6^$90:/!OH ") + %------------------------------------------------------- fsize:=(50mm,20mm); if mc_check(mc)=0: MC(scantokens(mc)) fi endfigm +\end{mplibcode} +%----------------------------------------------------------------------------- +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\subsection{Erythromycin} +\noindent% +%---------------------------------------------------------------------------- +\begin{verbatim} +beginfigm("EN:Erythromycin","MW:733.93") + fsize:=(120mm,30mm); + MC(<30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1, + 14:O,13:/*Et,{1,9}://O, + {2',4,6^-35,8,10',12^35}:/*_, + {6^35,11,12^-35}:*/OH, + @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##, + @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?! + ) + ext(defaultscale:=0.8; + label.lrt("fm: "&cal_FM,(0,h-5mm)); + label.lrt("mw: "&cal_MW,(0,h-9mm)); + label.lrt("MW: "&inf_MW,(0,h-13mm)); + ) +endfigm; +\end{verbatim} +%---------------------------------------------------------------------------- +\begin{mplibcode} +beginfigm("EN:Erythromycin","MW:733.93") + fsize:=(120mm,30mm); + MC(<30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1, + 14:O,13:/*Et,{1,9}://O, + {2',4,6^-35,8,10',12^35}:/*_, + {6^35,11,12^-35}:*/OH, + @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##, + @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!) + ext(defaultscale:=0.8; + label.lrt("fm: "&cal_FM,(0,h-5mm)); + label.lrt("mw: "&cal_MW,(0,h-9mm)); + label.lrt("MW: "&inf_MW,(0,h-13mm));) +endfigm; +\end{mplibcode} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\subsection{Paclitaxel} +\noindent% +\begin{verbatim} +beginfigm("EN:Paclitaxel","MW:853.918", + %--------------------------------------------------------------------- + ": ?6,5=dl,@3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, ", + ": 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O, ", + ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, ", + ": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr ") + %--------------------------------------------------------------------- + fsize:=(140mm,30mm); + if mc_check(mc)=0: + MCat(0,0.5)(scantokens(mc)) + sw_numbering:=Atom; + MCat(0.6,0.5)(scantokens(mc)) + sw_numbering:=Bond; + MCat(1,0.5)(scantokens(mc)) + fi +endfigm +\end{verbatim} +%---------------------------------------------------------------------------- +\begin{mplibcode} +beginfigm("EN:Paclitaxel","MW:853.918", + %--------------------------------------------------------------------- + ": ?6,5=dl,@3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, ", + ": 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O, ", + ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, ", + ": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr ") + %--------------------------------------------------------------------- + fsize:=(160mm,40mm); + if mc_check(mc)=0: MCat(0,0.5)(scantokens(mc)) + sw_numbering:=Atom; MCat(0.5,0.5)(scantokens(mc)) + sw_numbering:=Bond; MCat(1,0.5)(scantokens(mc)) + fi +endfigm +\end{mplibcode} +%---------------------------------------------------------------------------- +\newpage +\subsection{Chlorophyll a} +\noindent% +\begin{verbatim} +beginfigm("f:mcf_library.mcf","t:EN","v:Chlorophyll a","NO:-", + "= sw_output:=Fig+Calc+Mcode;", + "= fsize:=(100mm,30mm);") + if op_row>=1: scantokens(op) fi + if mc_check(mc)=0: + MC(scantokens(mc)) + VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); + VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); + fi +endfigm +\end{mplibcode} +\verbatiminput{temp-mc.aux} %%%% input temp-mc.aux %%%% +{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% +\end{verbatim} +%------------------------------------------------------------------------------------ +\begin{mplibcode} +beginfigm("f:mcf_library.mcf","t:EN","v:Chlorophyll a","NO:-", + "= sw_output:=Fig+Calc+Mcode;", + "= fsize:=(100mm,30mm);") + if op_row>=1: scantokens(op) fi + if mc_check(mc)=0: + MC(scantokens(mc)) + VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); + VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); + fi +endfigm +\end{mplibcode} +\verbatiminput{temp-mc.aux} %%%% input temp-mc.aux %%%% +{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\subsection{Dinophysistoxin-1} +\noindent% +\begin{verbatim} +beginfigm("t:EN","v:Okadaic acid","EN:Dinophysistoxin-1", + "MW:819",":,38:*/_,65=red") %%%% add methyl group (color red) %%%% + sw_output:=Fig+Calc+Mcode; %%%% output temp-mc.aux %%%% + fsize:=(120mm,20mm); + if mc_check(mc)=0: MC(scantokens(mc)) + VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); + VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); + fi +endfigm; +\end{mplibcode} +\verbatiminput{temp-mc.aux} %%%% input temp-mc.aux %%%% +{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% +\end{verbatim} +%---------------------------------------------------------------------------- +\begin{mplibcode} +beginfigm("t:EN","v:Okadaic acid","EN:Dinophysistoxin-1", + "MW:819",":,38:*/_,65=red") %%%% add methyl group (color red) %%%% + sw_output:=Fig+Calc+Mcode; %%%% output temp-mc.aux %%%% + fsize:=(120mm,20mm); + if mc_check(mc)=0: MC(scantokens(mc)) + VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); + VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); + fi +endfigm; +\end{mplibcode} +\verbatiminput{temp-mc.aux} %%%% input temp-mc.aux %%%% +{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +%---------------------------------------------------------------------------- +\subsection{Maitotoxin} +\noindent% +%-------------------------------------------------------------------------------- +\begin{verbatim} +%-------------------------------------------------------------------------------- +\begin{mplibcode} + beginfigm("t:EN","v:Maitotoxin") + sw_output:=Fig+Calc+Mcode; %%%% output temp-mc.aux %%%% + fsize:=(150mm,80mm); + fmargin:=(3mm,3mm); + sw_frame:=Outside; + if mc_check(mc)=0: MC(scantokens(mc)) + VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); + VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); + fi + endfigm +\end{mplibcode} +\verbatiminput{temp-mc.aux} %%%% input temp-mc.aux %%%% +{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% +%-------------------------------------------------------------------------------- +\end{verbatim} +%-------------------------------------------------------------------------------- +\begin{mplibcode} + beginfigm("t:EN","v:Maitotoxin") + sw_output:=Fig+Calc+Mcode; + fsize:=(150mm,80mm); fmargin:=(3mm,3mm); sw_frame:=Outside; %% mc_length:=40; + if mc_check(mc)=0: MC(scantokens(mc)) + VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); + VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); + fi + endfigm +\end{mplibcode} +\verbatiminput{temp-mc.aux} +{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% +%-------------------------------------------------------------------------------- +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\subsection{TCA cycle} +\noindent% +\begin{mplibcode} +beginfigm("EN:TCA cycle") +fsize:=(160mm,75mm); +max_blength:=5mm; +%-------------------------------------------------------------------------------- +COOH:='(//O,!,OH); +HOCO:='(OH,!,//O,); +MCat(0.33, 1)(<30,HOCO,!,//O,!2,COOH) % Oxaloacetate +MCat(0.66, 1)(<30,HOCO,!4,COOH,@-4`1,\,COOH,4:/OH^-165) % Citrate +MCat(1, 1)(<30,HOCO,!2,!~dr,!,COOH,@-4`1,\,COOH) % cis-Aconitate +MCat(1, 0.58)(<30,HOCO,!4,COOH,@-4,\`1,COOH,5:/OH) % Isocitrate +MCat(1, 0.05)(<30,HOCO,!3,//O,!,COOH,@-4,\`1,COOH) % Oxalosuccinate +MCat(0.66,0.05)(<30,HOCO,!3,//O,!,COOH) % alfa-Ketoglutarate +MCat(0.33,0.05)(<30,HOCO,!3,//O,!,"{S-CoA}") % Succinyl-CoA +MCat(0, 0.05)(<30,HOCO,!3,COOH) % Succinate +MCat(0, 0.55)(<30,HOCO,!,!~dr,!,COOH) % Fumarate +MCat(0, 1)(<30,HOCO,!3,COOH,3:/OH) % L-Malate +%-------------------------------------------------------------------------------- +ext( +defaultfont:="uhvr8r"; +defaultscale:=0.75; +ext_setup; +def sel_dir(expr rot)= + save tx; nA:=rot; if nA>=360: nA:=nA-360; fi + if (nA<30)or(nA>330): def tx=top enddef; elseif (nA>=30)and(nA<=150): def tx=lft enddef; + elseif (nA>150)and(nA<210): def tx=bot enddef; elseif (nA>=210)and(nA<=330): def tx=rt enddef; fi +enddef; +def reaction_arrow(expr a)(expr r)(expr p)(expr sa,la)(expr sb,lb)(expr sc,lc)(expr sd,ld)= + drawarrow ((0,0)..(a,0)) rotated r shifted p; + if sa<>"": draw ((0.5a,0){dir 180}..{dir 90}(0,.5a*la)) rotated r shifted p; + sel_dir(r); label.tx(sa,p+((0,0.5a*la) rotated r)); fi + if sb<>"": draw ((0.5a,0){dir 0}..{dir 90}(a,.5a*lb)) rotated r shifted p; + sel_dir(r); label.tx(sb,p+((a,0.5a*lb) rotated r)); fi + if sc<>"": draw ((0.5a,0){dir 180}..{dir -90}(0,-.5a*lc)) rotated r shifted p; + sel_dir(r+180); label.tx(sc,p+((0,-0.5a*lc) rotated r)); fi + if sd<>"": draw ((0.5a,0){dir 0}..{dir -90}(a,-.5a*ld)) rotated r shifted p; + sel_dir(r+180); label.tx(sd,p+((a,-0.5a*ld) rotated r)); fi +enddef; +def r_arrow(expr a)(expr r)(expr p)(expr sc,lc)(expr sd,ld)= + reaction_arrow(a)(r)(p)("",0)("",0)(sc,lc)(sd,ld) +enddef; +%------------------------------------------------------------------------ +save dx; pair dx; dx:=(12mm,0); +label.bot("Oxaloacetate",p1+dx); label.bot("Citrate",p2+dx); +label.bot("cis-Aconitate",p3+dx); label.bot("Isocitrate",p4+dx); +label.bot("Oxalosuccinate",p5+dx); label.bot("alfa-Ketoglutarate",p6+dx); +label.bot("Succinyl-CoA",p7+dx); label.bot("Succinate",p8+dx); +label.bot("Fumarate",p9+dx); label.bot("L-Malate",p10+dx); +sw_label_emu:=1; +ext_setup; +r_arrow(10mm)( 0)(p1+ ( 1.1w1, 0.3h1))("Acetyl-CoA",1.5)(" CoA-SH",1); +r_arrow(10mm)( 0)(p2+ ( 1.1w2, 0.4h2))("",0)("H2O",1); +r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H2O",1)("",0); +r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD+",1)("NADH2+",1); +r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO2",1); +r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD+,CoA-SH",1.7)("NADH2+,CO2",1); +r_arrow(10mm)(180)(p7+ (-0.1w7, 0.5h7))("GDP,Pi",1.7)("GTP,CoA-SH",1); +r_arrow( 8mm)( 90)(p8+ ( 0.4w8, 1.2h8))("FAD",1)("FADH2",1); +r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H2O",1)("",0); +r_arrow(10mm)( 0)(p10+( 1.1w10,0.3h10))("NAD+",1)("NADH2+",1.5); +defaultscale:=1.5; +label("TCA-cycle",(0.5w,0.5h)); +) +endfigm +\end{mplibcode} +%------------------------------------------------------------------------ +\begin{verbatim} +beginfigmy"EN:TCA cycle") +fsize:=(160mm,75mm); +max_blength:=5mm; +COOH:='(//O,!,OH); HOCO:='(OH,!,//O,); +MCat(0.33, 1)(<30,HOCO,!,//O,!2,COOH) % Oxaloacetate +MCat(0.66, 1)(<30,HOCO,!4,COOH,@-4`1,\,COOH,4:/OH^-165) % Citrate +MCat(1, 1)(<30,HOCO,!2,!~dr,!,COOH,@-4`1,\,COOH) % cis-Aconitate +MCat(1, 0.58)(<30,HOCO,!4,COOH,@-4,\`1,COOH,5:/OH) % Isocitrate +MCat(1, 0.05)(<30,HOCO,!3,//O,!,COOH,@-4,\`1,COOH) % Oxalosuccinate +MCat(0.66,0.05)(<30,HOCO,!3,//O,!,COOH) % alfa-Ketoglutarate +MCat(0.33,0.05)(<30,HOCO,!3,//O,!,"{S-CoA}") % Succinyl-CoA +MCat(0, 0.05)(<30,HOCO,!3,COOH) % Succinate +MCat(0, 0.55)(<30,HOCO,!,!~dr,!,COOH) % Fumarate +MCat(0, 1)(<30,HOCO,!3,COOH,3:/OH) % L-Malate +ext( +defaultfont:="uhvr8r"; +defaultscale:=0.75; +ext_setup; +save dx; pair dx; dx:=(12mm,0); +label.bot("Oxaloacetate",p1+dx); label.bot("Citrate",p2+dx); +label.bot("cis-Aconitate",p3+dx); label.bot("Isocitrate",p4+dx); +label.bot("Oxalosuccinate",p5+dx); label.bot("alfa-Ketoglutarate",p6+dx); +label.bot("Succinyl-CoA",p7+dx); label.bot("Succinate",p8+dx); +label.bot("Fumarate",p9+dx); label.bot("L-Malate",p10+dx); +sw_label_emu:=1; +ext_setup; +r_arrow(10mm)( 0)(p1+ ( 1.1w1, 0.3h1))("Acetyl-CoA",1.5)(" CoA-SH",1); +r_arrow(10mm)( 0)(p2+ ( 1.1w2, 0.4h2))("",0)("H2O",1); +r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H2O",1)("",0); +r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD+",1)("NADH2+",1); +r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO_2_",1); +r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD+,CoA-SH",1.7)("NADH2+,CO2",1); +r_arrow(10mm)(180)(p7+ (-0.1w7, 0.5h7))("GDP,Pi",1.7)("GTP,CoA-SH",1); +r_arrow( 8mm)( 90)(p8+ ( 0.4w8, 1.2h8))("FAD",1)("FADH2",1); +r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H2O",1)("",0); +r_arrow(10mm)( 0)(p10+( 1.1w10,0.3h10))("NAD+",1)("NADH2+",1.5); +defaultscale:=1.5; +label("TCA-cycle",(0.5w,0.5h)); +) +endfigm \end{verbatim} -\MCFgraph %------------------------------------------------------------------------ -\onecolumn \section{Example to use mcf2graph} \subsection{MetaPost souce file} \index{mcf2graph.mp}% @@ -1869,7 +3413,7 @@ file name = 'temp-mc.aux' Weight Calc: 111.1019 / Input: 111.10 / weight gap= 0.00195 Fomula Calc: C4H5N3O / Input: =========================================================================== -\end{verbatim}% +\end{verbatim} \newpage %------------------------------------------------------------------------ \noindent% @@ -1924,7 +3468,7 @@ file name = 'temp-mc.aux' 9 14 1 0 0 0 M END %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\end{verbatim}% +\end{verbatim} %---------------------------------------------------------------------------- \newpage \subsection{LuaTeX file example} @@ -1989,7 +3533,7 @@ endfigm; %-------------------------------------------------------------------- \end{mplibcode}\\ \end{document} -\end{verbatim}% +\end{verbatim} %############################################################################ %------------------------------------------------------------------------ \texttt{\printindex} diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf Binary files differdeleted file mode 100644 index 806e6b55ed4..00000000000 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex deleted file mode 100644 index ed512ddabb8..00000000000 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex +++ /dev/null @@ -1,328 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2022.11.12 -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% ** mcf2graph.mp must be version 4.90 -% ** use mcf_library.mcf -\documentclass{article} -%------------------------------------------------------------------------------ -\usepackage{luamplib}% -\usepackage[T1]{fontenc}% -\usepackage{textcomp,verbatim}% -\mplibcodeinherit{enable}% -\mplibverbatim{enable}% -\mplibnumbersystem{double}% -\mpliblegacybehavior{disabled}% -\everymplib{% - if unknown Ph1: input mcf2graph; fi - outputformat:="eps"; - sw_output:=Fig+Calc; - tag1:="J"; tag2:="C"; tag3:="fm"; tag4:="mw"; tag5:="EN"; tag6:="MW"; - max_blength:=4.5mm; - defaultsize:=8; - defaultscale:=1; -}% -%------------------------------------------------------------------------------ -\pagestyle{empty} -\topmargin=-20mm -\oddsidemargin=0mm -\textwidth=170mm -\textheight=280mm -\unitlength=1mm -%------------------------------------------------------------------------------------ -\begin{document} -\begin{center} - {\Huge\sf MCF example for luamplib(Lua\LaTeX)}\vspace{5mm}\\ - Author : Akira Yamaji \quad Date : \today\\ - Located at : http://www.ctan.org/pkg/mcf2graph\vspace{2mm}\\ -\end{center} -%------------------------------------------------------------------------------------ -\section{MCF example} -\noindent% -%------------------------------------------------------------------------------------ - use molecular library file 'mcf\_library.mcf' \\ -{{\tt FM(fm) :} molecular formula (calculated) \\ -{{\tt MW(mw) :} molecular weight (calculated) -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\subsection{Erythromycin} -\noindent% -%---------------------------------------------------------------------------- -( pass mcf to MC() ) -\begin{verbatim} -beginfigm("EN:Erythromycin","MW:733.93") - fsize:=(120mm,30mm); - MC(<30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1, - 14:O,13:/*Et,{1,9}://O,{2',4,6^-35,8,10',12^35}:/*_, - {6^35,11,12^-35}:*/OH, - @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##, - @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!) - ext(defaultscale:=0.8; label.lrt("fm: "&cal_FM,(0,h-5mm)); - label.lrt("mw: "&cal_MW,(0,h-9mm)); label.lrt("MW: "&inf_MW,(0,h-13mm));) -endfigm; -\end{verbatim} -%---------------------------------------------------------------------------- -\begin{mplibcode} -beginfigm("EN:Erythromycin","MW:733.93") - fsize:=(120mm,30mm); - MC(<30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1, - 14:O,13:/*Et,{1,9}://O,{2',4,6^-35,8,10',12^35}:/*_, - {6^35,11,12^-35}:*/OH, - @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##, - @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!) - ext(defaultscale:=0.8; label.lrt("fm: "&cal_FM,(0,h-5mm)); - label.lrt("mw: "&cal_MW,(0,h-9mm)); label.lrt("MW: "&inf_MW,(0,h-13mm));) -endfigm; -\end{mplibcode} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\subsection{Paclitaxel} -\noindent% -( pass mcf to beginfigm() ) -\begin{verbatim} -beginfigm("EN:Paclitaxel","MW:853.918", - %--------------------------------------------------------------------- - ": ?6,5=dl,@3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, ", - ": 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O, ", - ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, ", - ": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr ") - %--------------------------------------------------------------------- - fsize:=(140mm,30mm); - if mc_check(mc)=0: MCat(0,0.5)(scantokens(mc)) - sw_numbering:=Atom; MCat(0.6,0.5)(scantokens(mc)) - sw_numbering:=Bond; MCat(1,0.5)(scantokens(mc)) - fi -endfigm -\end{verbatim} -%---------------------------------------------------------------------------- -\begin{mplibcode} -beginfigm("EN:Paclitaxel","MW:853.918", - %--------------------------------------------------------------------- - ": ?6,5=dl,@3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, ", - ": 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O, ", - ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, ", - ": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr ") - %--------------------------------------------------------------------- - fsize:=(140mm,30mm); - if mc_check(mc)=0: MCat(0,0.5)(scantokens(mc)) - sw_numbering:=Atom; MCat(0.6,0.5)(scantokens(mc)) - sw_numbering:=Bond; MCat(1,0.5)(scantokens(mc)) - fi -endfigm -\end{mplibcode} -%---------------------------------------------------------------------------- -\newpage -\subsection{Chlorophyll a} -\noindent% -( read library file ) -\begin{verbatim} -beginfigm("f:mcf_library.mcf","t:EN","v:Chlorophyll a","NO:-", - "= sw_output:=Fig+Calc+Mcode;", - "= fsize:=(100mm,30mm);") - if op_row>=1: scantokens(op) fi - if mc_check(mc)=0: - MC(scantokens(mc)) - VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); - VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); - fi -endfigm -\end{mplibcode} -\verbatiminput{temp-mc.aux} %%%% input temp-mc.aux %%%% -{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% -\end{verbatim} -%------------------------------------------------------------------------------------ -\begin{mplibcode} -beginfigm("f:mcf_library.mcf","t:EN","v:Chlorophyll a","NO:-", - "= sw_output:=Fig+Calc+Mcode;", - "= fsize:=(100mm,30mm);") - if op_row>=1: scantokens(op) fi - if mc_check(mc)=0: - MC(scantokens(mc)) - VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); - VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); - fi -endfigm -\end{mplibcode} -\verbatiminput{temp-mc.aux} %%%% input temp-mc.aux %%%% -{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\subsection{Dinophysistoxin-1} -\noindent% -( read library file + pass mcf to beginfigm() ) -\begin{verbatim} -beginfigm("t:EN","v:Okadaic acid","EN:Dinophysistoxin-1", - "MW:819",":,38:*/_,65=red") %%%% add methyl group (color red) %%%% - sw_output:=Fig+Calc+Mcode; %%%% output temp-mc.aux %%%% - fsize:=(120mm,20mm); - if mc_check(mc)=0: MC(scantokens(mc)) - VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); - VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); - fi -endfigm; -\end{mplibcode} -\verbatiminput{temp-mc.aux} %%%% input temp-mc.aux %%%% -{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% -\end{verbatim} -%---------------------------------------------------------------------------- -\begin{mplibcode} -beginfigm("t:EN","v:Okadaic acid","EN:Dinophysistoxin-1", - "MW:819",":,38:*/_,65=red") %%%% add methyl group (color red) %%%% - sw_output:=Fig+Calc+Mcode; %%%% output temp-mc.aux %%%% - fsize:=(120mm,20mm); - if mc_check(mc)=0: MC(scantokens(mc)) - VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); - VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); - fi -endfigm; -\end{mplibcode} -\verbatiminput{temp-mc.aux} %%%% input temp-mc.aux %%%% -{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\newpage -%---------------------------------------------------------------------------- -\subsection{Maitotoxin} -\noindent% -( read library file ) -%-------------------------------------------------------------------------------- -\begin{verbatim} -%-------------------------------------------------------------------------------- -\begin{mplibcode} - beginfigm("t:EN","v:Maitotoxin") - sw_output:=Fig+Calc+Mcode; %%%% output temp-mc.aux %%%% - fsize:=(120mm,60mm); fmargin:=(0,3mm); sw_frame:=Outside; - if mc_check(mc)=0: MC(scantokens(mc)) - VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); - VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); - fi - endfigm -\end{mplibcode} -\verbatiminput{temp-mc.aux} %%%% input temp-mc.aux %%%% -{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% -%-------------------------------------------------------------------------------- -\end{verbatim} -%-------------------------------------------------------------------------------- -\begin{mplibcode} - beginfigm("t:EN","v:Maitotoxin") - sw_output:=Fig+Calc+Mcode; - fsize:=(120mm,60mm); fmargin:=(0,3mm); sw_frame:=Outside; %% mc_length:=40; - if mc_check(mc)=0: MC(scantokens(mc)) - VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}"); - VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}"); - fi - endfigm -\end{mplibcode} -\verbatiminput{temp-mc.aux} -{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}% -%-------------------------------------------------------------------------------- -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\newpage -\subsection{TCA cycle} -\noindent% -\begin{mplibcode} -beginfigm("EN:TCA cycle") -fsize:=(160mm,75mm); -max_blength:=5mm; -%-------------------------------------------------------------------------------- -COOH:='(//O,!,OH); -HOCO:='(OH,!,//O,); -MCat(0.33, 1)(<30,HOCO,!,//O,!2,COOH) % Oxaloacetate -MCat(0.66, 1)(<30,HOCO,!4,COOH,@-4`1,\,COOH,4:/OH^-165) % Citrate -MCat(1, 1)(<30,HOCO,!2,!~dr,!,COOH,@-4`1,\,COOH) % cis-Aconitate -MCat(1, 0.58)(<30,HOCO,!4,COOH,@-4,\`1,COOH,5:/OH) % Isocitrate -MCat(1, 0.05)(<30,HOCO,!3,//O,!,COOH,@-4,\`1,COOH) % Oxalosuccinate -MCat(0.66,0.05)(<30,HOCO,!3,//O,!,COOH) % alfa-Ketoglutarate -MCat(0.33,0.05)(<30,HOCO,!3,//O,!,"{S-CoA}") % Succinyl-CoA -MCat(0, 0.05)(<30,HOCO,!3,COOH) % Succinate -MCat(0, 0.55)(<30,HOCO,!,!~dr,!,COOH) % Fumarate -MCat(0, 1)(<30,HOCO,!3,COOH,3:/OH) % L-Malate -%-------------------------------------------------------------------------------- -ext( -defaultfont:="uhvr8r"; -defaultscale:=0.75; -ext_setup; -def sel_dir(expr rot)= - save tx; nA:=rot; if nA>=360: nA:=nA-360; fi - if (nA<30)or(nA>330): def tx=top enddef; elseif (nA>=30)and(nA<=150): def tx=lft enddef; - elseif (nA>150)and(nA<210): def tx=bot enddef; elseif (nA>=210)and(nA<=330): def tx=rt enddef; fi -enddef; -def reaction_arrow(expr a)(expr r)(expr p)(expr sa,la)(expr sb,lb)(expr sc,lc)(expr sd,ld)= - drawarrow ((0,0)..(a,0)) rotated r shifted p; - if sa<>"": draw ((0.5a,0){dir 180}..{dir 90}(0,.5a*la)) rotated r shifted p; - sel_dir(r); label.tx(sa,p+((0,0.5a*la) rotated r)); fi - if sb<>"": draw ((0.5a,0){dir 0}..{dir 90}(a,.5a*lb)) rotated r shifted p; - sel_dir(r); label.tx(sb,p+((a,0.5a*lb) rotated r)); fi - if sc<>"": draw ((0.5a,0){dir 180}..{dir -90}(0,-.5a*lc)) rotated r shifted p; - sel_dir(r+180); label.tx(sc,p+((0,-0.5a*lc) rotated r)); fi - if sd<>"": draw ((0.5a,0){dir 0}..{dir -90}(a,-.5a*ld)) rotated r shifted p; - sel_dir(r+180); label.tx(sd,p+((a,-0.5a*ld) rotated r)); fi -enddef; -def r_arrow(expr a)(expr r)(expr p)(expr sc,lc)(expr sd,ld)= - reaction_arrow(a)(r)(p)("",0)("",0)(sc,lc)(sd,ld) -enddef; -%------------------------------------------------------------------------ -save dx; pair dx; dx:=(12mm,0); -label.bot("Oxaloacetate",p1+dx); label.bot("Citrate",p2+dx); -label.bot("cis-Aconitate",p3+dx); label.bot("Isocitrate",p4+dx); -label.bot("Oxalosuccinate",p5+dx); label.bot("alfa-Ketoglutarate",p6+dx); -label.bot("Succinyl-CoA",p7+dx); label.bot("Succinate",p8+dx); -label.bot("Fumarate",p9+dx); label.bot("L-Malate",p10+dx); -sw_label_emu:=1; -ext_setup; -r_arrow(10mm)( 0)(p1+ ( 1.1w1, 0.3h1))("Acetyl-CoA",1.5)(" CoA-SH",1); -r_arrow(10mm)( 0)(p2+ ( 1.1w2, 0.4h2))("",0)("H2O",1); -r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H2O",1)("",0); -r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD+",1)("NADH2+",1); -r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO2",1); -r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD+,CoA-SH",1.7)("NADH2+,CO2",1); -r_arrow(10mm)(180)(p7+ (-0.1w7, 0.5h7))("GDP,Pi",1.7)("GTP,CoA-SH",1); -r_arrow( 8mm)( 90)(p8+ ( 0.4w8, 1.2h8))("FAD",1)("FADH2",1); -r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H2O",1)("",0); -r_arrow(10mm)( 0)(p10+( 1.1w10,0.3h10))("NAD+",1)("NADH2+",1.5); -defaultscale:=1.5; -label("TCA-cycle",(0.5w,0.5h)); -) -endfigm -\end{mplibcode} -%------------------------------------------------------------------------ -\begin{verbatim} -beginfigmy"EN:TCA cycle") -fsize:=(160mm,75mm); -max_blength:=5mm; -COOH:='(//O,!,OH); -HOCO:='(OH,!,//O,); -MCat(0.33, 1)(<30,HOCO,!,//O,!2,COOH) % Oxaloacetate -MCat(0.66, 1)(<30,HOCO,!4,COOH,@-4`1,\,COOH,4:/OH^-165) % Citrate -MCat(1, 1)(<30,HOCO,!2,!~dr,!,COOH,@-4`1,\,COOH) % cis-Aconitate -MCat(1, 0.58)(<30,HOCO,!4,COOH,@-4,\`1,COOH,5:/OH) % Isocitrate -MCat(1, 0.05)(<30,HOCO,!3,//O,!,COOH,@-4,\`1,COOH) % Oxalosuccinate -MCat(0.66,0.05)(<30,HOCO,!3,//O,!,COOH) % alfa-Ketoglutarate -MCat(0.33,0.05)(<30,HOCO,!3,//O,!,"{S-CoA}") % Succinyl-CoA -MCat(0, 0.05)(<30,HOCO,!3,COOH) % Succinate -MCat(0, 0.55)(<30,HOCO,!,!~dr,!,COOH) % Fumarate -MCat(0, 1)(<30,HOCO,!3,COOH,3:/OH) % L-Malate -ext( -defaultfont:="uhvr8r"; -defaultscale:=0.75; -ext_setup; -save dx; pair dx; dx:=(12mm,0); -label.bot("Oxaloacetate",p1+dx); label.bot("Citrate",p2+dx); -label.bot("cis-Aconitate",p3+dx); label.bot("Isocitrate",p4+dx); -label.bot("Oxalosuccinate",p5+dx); label.bot("alfa-Ketoglutarate",p6+dx); -label.bot("Succinyl-CoA",p7+dx); label.bot("Succinate",p8+dx); -label.bot("Fumarate",p9+dx); label.bot("L-Malate",p10+dx); -sw_label_emu:=1; -ext_setup; -r_arrow(10mm)( 0)(p1+ ( 1.1w1, 0.3h1))("Acetyl-CoA",1.5)(" CoA-SH",1); -r_arrow(10mm)( 0)(p2+ ( 1.1w2, 0.4h2))("",0)("H2O",1); -r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H2O",1)("",0); -r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD+",1)("NADH2+",1); -r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO_2_",1); -r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD+,CoA-SH",1.7)("NADH2+,CO2",1); -r_arrow(10mm)(180)(p7+ (-0.1w7, 0.5h7))("GDP,Pi",1.7)("GTP,CoA-SH",1); -r_arrow( 8mm)( 90)(p8+ ( 0.4w8, 1.2h8))("FAD",1)("FADH2",1); -r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H2O",1)("",0); -r_arrow(10mm)( 0)(p10+( 1.1w10,0.3h10))("NAD+",1)("NADH2+",1.5); -defaultscale:=1.5; -label("TCA-cycle",(0.5w,0.5h)); -) -endfigm -\end{verbatim} -%---------------------------------------------------------------------------- -\end{document} |