From c7f2ce5fcf476bf2b530bd5dcbeb4fc3e7b72f31 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 13 Jul 2015 22:19:02 +0000 Subject: mcf2graph (13jul15) git-svn-id: svn://tug.org/texlive/trunk@37853 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/metapost/mcf2graph/README | 113 ++++ .../doc/metapost/mcf2graph/mcf_exa_soc.mf | 564 ++++++++++++++++++++ .../doc/metapost/mcf2graph/mcf_example.pdf | Bin 0 -> 284895 bytes .../doc/metapost/mcf2graph/mcf_example.tex | 80 +++ .../doc/metapost/mcf2graph/mcf_man_soc-030.eps | 71 +++ .../doc/metapost/mcf2graph/mcf_man_soc.mf | 262 ++++++++++ .../doc/metapost/mcf2graph/mcf_manual.pdf | Bin 0 -> 187999 bytes .../doc/metapost/mcf2graph/mcf_manual.tex | 572 +++++++++++++++++++++ 8 files changed, 1662 insertions(+) create mode 100644 Master/texmf-dist/doc/metapost/mcf2graph/README create mode 100644 Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf create mode 100644 Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf create mode 100644 Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex create mode 100644 Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-030.eps create mode 100644 Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf create mode 100644 Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf create mode 100644 Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex (limited to 'Master/texmf-dist/doc/metapost') diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/README b/Master/texmf-dist/doc/metapost/mcf2graph/README new file mode 100644 index 00000000000..66dbc7dfcf2 --- /dev/null +++ b/Master/texmf-dist/doc/metapost/mcf2graph/README @@ -0,0 +1,113 @@ +******************************************************************************* + mcf2graph : Metapost/Metafont macro convert Molecular Coding Format to graphic + Author : Akira Yamaji + DATE : 2015/07/11 + E-mail : akira.yamaji5@gmail.com + Web site : http://molecoding.cocolog-nifty.com/blog/ +******************************************************************************* + +1. Introduction + + Molecular Coding Format(MCF) is new linear notation represent chmical + structure diagram. + mcf2graph(metapost/metafont macro) convert MCF file to + graphic file(pk font/PNG/SVG/EPS) or MDL MOL file(V2000). + The software, MCF syntax manual,TeX example can get from authors web site. + + +2. The distribution of software + +( 1) README This file + +( 2) mcf_graph.mf Macro of Metapost / Metafont + +( 3) mcf_manual.tex MCF syntax manual(LaTeX file) +( 4) mcf_man_soc.mf MCF file for mcf_manual.tex +( 5) mcf_man_soc-030.eps No.30 EPS(with color) file from (4) +( 6) mcf_manual.pdf PDF file of mcf_manual.tex + +( 7) mcf_example.tex LaTeX example +( 8) mcf_exa_soc.mf MCF file for mcf_example.tex +( 9) mcf_exa_soc-info.log Infomation file from (8) +(10) mcf_example.pdf PDF file of mcf_example.tex + + +3. Use mcf2graph.mf + +(1) mpost -s ahangle=1 FILENAME output PNG file. (default value is eps) +(2) mpost -s ahangle=2 FILENAME output SVG file. +(3) mpost -s ahangle=3 FILENAME output MDL Molfile(V2000) +(4) mpost -s ahangle=0 FILENAME output no graphic file. +(5) mpost -s ahlength=1 FILENAME output first definition only (for test) +(6) mpost -s ahlength=2 FILENAME output checklist. +(7) Large number of molecular structures can be gathering by using TEX. + mcf_example.tex is example of use LaTeX. + + +4. Molecular Coding Format example + +input mcf2graph.mf; % input main system +font_wd#:=30mm#; % font width +font_ht#:=20mm#; % font height +max_bond_width:=0.2; % max fond length/font width +sw_logout:=1; % log file out +sw_frame:=0; % add frame +sw_expand:=0; % expand substituent mode +sw_start_vecor:=0; % start vector mode +sw_numberingA:=0; % atom adress mode +sw_numberingB:=0; % bond adress mode +%%sw_checklist:=1; % check list mode +%%sw_MOLfile:=1; % Mdl molfile(V2000) +%*********************************************************************** +beginfont("EN:Acetamiprid") % Molecular name 1 + MCf(^^30,Ph,4\,!,NH,!,!~dr,N,!,CN)% % Molecular Coding Format +endfont +%*********************************************************************** +bye + +5. Use TeX(latex) + + +\documentclass[a4paper]{article} +\usepackage{graphicx} +\pagestyle{empty} + +% insert part of info LOG file + +%------------------------------------------------------------------------- +\MOLinfo{EN:Acetamiprid}{:}{:}{:}% +{:}{:}{:}{:}% +{:}{:}{:}{:}% +\MCFinfo{MCF_SOC2}{0}{MCF_SOC2-000.eps}{419.14972}{145.32037}{159.04236}{12}{0}{}% +%------------------------------------------------------------------------- + +%% filename of souce file : mcf_exa_soc.mf + +\input mcf_exa_soc-info.log + +\end{document} + +\end{verbatim} +%---------------------------------------------------------------------------- + + +6. License + + 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, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf new file mode 100644 index 00000000000..2c73bcf67c3 --- /dev/null +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf @@ -0,0 +1,564 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Molecular Coding Format souce No.2 by Akira Yamaji 2015.5 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +input mcf2graph.mf; +%------------------------------------------------------------------------- +font_wd#:=35mm#; +font_ht#:=25mm#; +max_bond_width:=0.15; +%------------------------------------------------------------------------- +sw_logout:=1; +sw_frame:=0; +sw_atom_frame:=0; +sw_numberB:=0; +sw_expand:=0; +sw_start_vector:=0; +%%%%sw_checklist:=1; +%%%%sw_MOLfile:=1; +%*********************************************************************** +beginfont("EN:Acetamiprid") + MCf(^^30, + Ph,4\,!,NH,!,!~dr,N,!,CN + ) +endfont +%*********************************************************************** +beginfont("EN:Imidacloprid") + MCf(^^30, + Ph1,1:N,6:/Cl,3\,!,?5,1:N,3:NH,-4\\,!,NO2 + ) +endfont +%*********************************************************************** +beginfont("EN:Ethofenprox") + MCf(^^30, + Ph,5\,!,Ph,-4\,O,!3,/Me^35,/Me^-35,!,Ph,-3:/OEt + ) +endfont +%*********************************************************************** +beginfont("EN:Thiamethoxam") + MCf(^^30, + ?6,@(4,6)N,2:O,6:/Me,5\\,!,NO2,4\,!,?5,$(1,3)d,3:N,5:S,4:/Cl + ) +endfont +%*********************************************************************** +beginfont("EN:Tebufenozide") + MCf(^^30, + Ph,6:/Et,3\,//O,!,NH,!,N,/tBu,!,//O,!,Ph,@(3,5)/Me + ) +endfont +%*********************************************************************** +beginfont("EN:Pyridaphenthion") + MCf(^^-30, + !2,O,!,P,//S,/OEt^160>rl,!,O,!,?6,$(1,5)dl,@(2,3)N,4://O,3:/Ph + ) +endfont +%*********************************************************************** +beginfont("EN:Fenitrothion") + MCf(^^30, + !,O,!,P,//S,/OMe^160,!,O,!,Ph,3:/Me,4:/NO2 + ) +endfont +%*********************************************************************** +beginfont("EN:Permethrin") + MCf( + ^^-30, + ?3,2^-35:*/Me,2^35:/*Me,1\,!~dl,/Cl,!,Cl, + 3\,//O,!,O,!2,Ph,-4\>rl,O,!,Ph + ) +endfont +%*********************************************************************** +beginfont("EN:Bensultap") + MCf(^^30, + Ph,4\,SOO,!,S,!2,N,/Me,!2,S,!,SOO,!,Ph + ) +endfont +%*********************************************************************** +beginfont("EN:Azoxystorbin") + MCf(^^30, + Ph,2:/OH,3\,O,!,Ph,@(4,6)N,-4\,O,!,Ph,-5\,/OMe,!,//O,!,O,! + ) +endfont +%*********************************************************************** +beginfont("EN:Isoprothiolane") + MCf(^^30, + !,/Me,!,O,!,//O,!2,//O,!,O,!,/Me,!,-5\\,?5,@(2,5)S + ) +endfont +%*********************************************************************** +beginfont("EN:Iprodion") + MCf(^^18, + ?5,@(3,5)N,2://O,3\,Ph,@(3,5)/Cl,#5\,!,NHiPr + ) +endfont +%*********************************************************************** +beginfont("EN:Etridiazole") + MCf(^^18, + ?5,$(1,3)dl,@(2,4)N,5:S,1:/OEt,3:/CCl3,1:/Me + ) +endfont +%*********************************************************************** +beginfont("EN:Oxine-Copper") + MCf( + Ph,4:N,-2=Ph,-4\,O,-60,^^90,Cu,-90,O,60,Ph,-2=Ph,4:N, + #4*,&(#12)~vf,#23*,&(#12)~vf + ) +endfont +%*********************************************************************** +beginfont("EN:Captan") + MCf(^^0, + ?6,6=d,-4=?5,2:N,@(1,3)//O,#8\,S,!,CCl3 + ) +endfont +%*********************************************************************** +beginfont("EN:Chlorothalonil") + MCf(^^30, + Ph,@(1,2,4,6)/Cl,@(3,5)/CN + ) +endfont +%*********************************************************************** +beginfont("EN:Tetraconazole") + MCf(^^-6, + ?5,$(2,5)d,@(1,2,4)N,4\,!4,4:O,/F^35,/F^-35,!,CF2,#7\,Ph,@(4,6)/Cl + ) +endfont +%*********************************************************************** +beginfont("EN:Endosulfan"); + MCf(^^30, + {,``1.3,?6,3=?7,},2*,210~wf`1.45,&5~wb,6=d, + @(1,2,5,6,12^-210,12^-150)/Cl,@(8,10)O,9:S,9://O + ) +endfont; +%*********************************************************************** +beginfont("EN:Flutolanil") + MCf(^^30, + Ph,2:/CF3,3\,//O,!,NH,!,Ph,-1:/OiPr + ) +endfont +%*********************************************************************** +beginfont("EN:Propiconazole") + MCf(^^-6, + ?5,$(2,5)d,@(1,3,4)N,4\,!2,Ph,@(4,6)/Cl,#7\,?5,@(2,5)O,-3^24:/Bu + ) +endfont +%*********************************************************************** +beginfont("EN:Pencycuron") + MCf(^^30, + Ph,6:/Cl,3\,!,N,/?6,!,//O,!,NH,!,Ph + ) +endfont +%*********************************************************************** +beginfont("EN:Asulam") + MCf(^^30, + Ph,6:/NH2,3\,SOO,!,NH,!,//O,!,O,! + ) +endfont +%*********************************************************************** +beginfont("EN:Oxadixyl") + MCf(^^30, + Ph,@(1,3)/Cl,4\,?5,2=d,@(1,2)N,4:O,5://O,-3:/tBu,#6\,O,!2,!~tm + ) +endfont +%*********************************************************************** +beginfont("EN:Oxaziclomefone") + MCf(^^30, + ?6,4:N,2:O,1:/Me,5://O,6:/Ph,4\,/Me^35,/Me^-35,!,Ph,@(3,5)/Cl + ) +endfont +%*********************************************************************** +beginfont("EN:Cafenstrole") + MCf(^^30, + Ph,@(2,4,6)/Me,3\,SOO,!,?5,$(2,5)d,@(2,4,5)N,-2\,!,N,/Me,!2 + ) +endfont +%*********************************************************************** +beginfont("EN:Cyclosulfamuron") + MCf(^^30, + Ph,5\,//O,!,?3,#4\,NH,!,SOO,!,NH,!,//O,!,NH,!,Ph,@(2,6)N,@(3,5)/OMe + ) +endfont +%*********************************************************************** +beginfont("EN:Napropamide") + MCf(^^-30, + Ph,-4=Ph,#10\,O,!,/Me^35,/Me^-35,!,//O,!,N,/Et,! + ) +endfont +%*********************************************************************** +beginfont("EN:Pyributicarb") + MCf(^^30, + Ph,5:/tBu,3\,//O,!,S,!,N,/Me,!,Ph,@(5,6)/Me,3:/OMe + ) +endfont +%*********************************************************************** +beginfont("EN:Propyzamide") + MCf(^^30, + Ph,@(1,5)/Cl,3\,//O,!,NH,!,/Me^35,/Me^-35,!,!~tm + ) +endfont +%*********************************************************************** +beginfont("EN:Pendimethalin") + MCf(^^30, + Ph,@(1,2)/Me,6:/Cl,@(3,5)/NO2,4\,NH,!,/Et,!2 + ) +endfont +%*********************************************************************** +beginfont("EN:Benfluralin") + MCf(^^30, + Ph,@(1,3)/NO2,5:/CF3,2\,N,/Et,!4 + ) +endfont +%*********************************************************************** +beginfont("EN:Trinexapac-ethyl") + MCf(^^30, + ?6,@(2,4)//O,6:/COOEt,3\\,/OH,!,?3 + ) +endfont +%*********************************************************************** +beginfont("EN:Buprofezin") + MCf(^^-30, + ?6,@(1,5)N,3:S,6://O,5:/tBu,4\\,N,!,tBu,1:/Ph + ) +endfont +%*********************************************************************** +beginfont("EN:Tricyclazole") + MCf(^^30, + Ph,2:/Me,-4=?5,1:N,3:S,-3=?5,$(2,4)d,@(2,3)N + ) +endfont +%*********************************************************************** +beginfont("EN:Phthalide") + MCf(^^30, + Ph,@(1,2,5,6)/Cl,-4=?5,2:O,3://O + ) +endfont +%*********************************************************************** +beginfont("EN:Probenazole") + MCf(^^12, + Ph,3:d,-4=?5,1:SOO,2:N,3\,O,!2,!~dr + ) +endfont +%*********************************************************************** +beginfont("EN:Esprocarb") + MCf(^^30, + Ph,3\,!,S,!,//O,!,N,/Et,!,/iPr,! + ) +endfont +%*********************************************************************** +beginfont("EN:Simetryn") + MCf(^^30, + Ph,@(2,4,6)N,5:/SMe,@(1,3)/NHEt + ) +endfont +%*********************************************************************** +beginfont("EN:Bromobutide") + MCf(^^30, + Ph,3\,!,NH,!,//O,!,/Br,!,/Me^35,/Me^-35,!,tBu + ) +endfont +%*********************************************************************** +beginfont("EN:Mefenacet") + MCf(^^12, + Ph,-4=?5,3=d,3:N,1:S,2\,O,!2,//O,!,N,/Me,!,Ph + ) +endfont +%*********************************************************************** +beginfont("EN:Rifampicin") + MCf(^^30, + Ph,6:/Me^30,5:/OH,-6=?5,1:O,3://O,2:/*Me^60,#3=?6,@(2,4)d,@(1,4)/OH, + {,``1,-2\,NH,60,//O,-60,/Me,60~dl,60,60~dl,-60, + */Me,60,/*OH,-60,/*Me,60,/*OH,60,*/Me^30,-60, + 60,/*Me^30,-53,/*OMe,66,-53~dl,66`1.2,O,},&(#8), + #11\,!~dr,N,!,?6,@(1,4)N,4:/Me + ) +endfont +%*********************************************************************** +beginfont("EN:Wortmanin") + MCf(^^30, + {,?6,-4=?6,-2=?6,-4=?5,(#2,#7)=?5[3],}, + 6:O,1://O,$(7,10)dl,8://O,17://O,-3=d,-1:O, + @(4,12)*/Me^60,11:/*H^-60, + #5\*,60,O,!,#14\*^-25,//O,!,O,! + ) +endfont +%*********************************************************************** +beginfont("EN:Ampicillin") + MCf(^^45, + ?4,-3=??5,2:N,7:S, + @(3^45,4^-45)/*H,1://O^15,5:/*COOH^-18,@(6^35,6^-35)/Me, + ,4\^75,NH,!,//O,!,NH,!,Ph, + ) +endfont +%*********************************************************************** +beginfont("EN:Validamycin") + MCf(^^30, + ?6,@(5,6)/OH,3\,-60,OH, + #4\,O,-60,?6,2:O,@(3,4,5,6)/OH, + #1\,NH,!,?6,2=d,@(4,5,6)/OH,-4\,!,OH + ) +endfont +%********************************************************************** +beginfont("EN:Oceltamivir") + MCf(^^30, + ?6,3=dl,1:/NH2,3:/COOEt,6:/NHCOMe,5\~zf,O,!,/Et,!2 + ) +endfont +%*********************************************************************** +beginfont("EN:Etyprostontromethamine") + MCf(^^0, + ?5,@(2,5)/*OH, + #3*\^6,!~dl,!3,O,0,Ph,#8*,?5,@(1,4)O,#4\*^-6,!,30~dl,30,!3,COOH + ) +endfont +%*********************************************************************** +beginfont("EN:Chlorophyll a") +MCf(^^54, + {,``1,?5,$(2,5)dl,4:N,3\,54~dl,?5,$(2,4)dl,5:N, + -2\,54~dl,?5,2=d,5:N,-2\~dl,54,?5,5=d,5:N,-2\~dl,&(#5), + -1*,24,/*COOMe^15,72,//O,&(#1),}, + @(2,9,15,20~zf)/Me,8:/Et,14\,!~dr, + #4\`1.45,Mg,&17,-1*,&11~vb,-1*,&23~vb, + #21*,-6~wf,!2,//O,!,O,!2,!~dl,!13,@(1,5,9,13)/Me + ) +endfont +%********************************************************************** +beginfont("EN:Gibberellin"); + MCf(^^12, + {,``1.3,?6,3=??5,9=??7,},12\^160`1.6,&8, + 4\^155~zf`-1.2,O,55,//O^180`1,&(#2)~zb, + 3=dr,11=wf,13=wb,7:/COOH,11://Me,1:*/OH,12:/*OH,2:*/Me, + @(3^-60,9^60)*/H) +endfont; +%********************************************************************** +beginfont("EN:Cholesterol") + MCf(^^30, + ?6,$(-4,-2)??6,-4=??5,7=dl, + 1:*/OH,@(4,12)*/Me^60, + 10:/*H^180,@(11,-1)/*H^-60,9:*/H^60, + -1\^17,/*Me,!4,/Me,! + ) +endfont +%*********************************************************************** +beginfont("EN:Lycorine") + MCf(^^30, + Ph,-4=??6,-2=??6,6=??5,(9,12)=??5[3],13=dl,8:N,@(15,17)O, + 9:/*H^180,10:*/H^60,13:*/OH,14:/*OH + ) +endfont +%*********************************************************************** +beginfont("EN:Tetrodotoxine") + MCf({,``1,^^60,-90,60,-30`1.15,150,60,&(#1),#3*,-135,60,-30`1.15,150,&(#4), + #10\,O,60`1.33,60,&(#3)~ov,#8*,-15~ov,O,&(#12),},#9*,45,-60,OH,1^120://NH, + @(5~zf^-15,7,9^-75,12,13~zf)/OH,@(2,6^180)NH + ) +endfont +%*********************************************************************** +beginfont("EN:beta-Carotene") + MCf(^^30, + ?6,3=d,@(3,5^35,5^-35)/Me, + 4\,,!18,$(1,3,5,7,9,11,13,15,17)dr,@(3,7,12,16)/Me, + ?6,6=d,@(6,2^35,2^-35)/Me + ) +endfont +%********************************************************************** +beginfont("EN:alfa-Tocopherol") + MCf(^^30, + Ph,3=??6,7:O,@(1,2,5)/Me,8:/*Me^60,6:/OH, + 8\,!12,@(4,8)/*Me,12:/Me + ) +endfont +%********************************************************************** +beginfont("EN:Qercetin") + MCf(^^30, + Ph,3=??6,9\,ph,9=dl,10:O,7://O,@(2,6,8,13,14)/OH + ) +endfont +%*********************************************************************** +beginfont("EN:Limonin") +MCf(^^30, + {,?6,-3=?6,-4=?6,3:O,-5=?3,1:O,1=wf,2=wb,#6=?5,2:O,-4=?6,2:O,-5=wf, + #14\*,?5,$(1,4)dl,3:O,},@(3,12,21)//O, + @(4~wf^60,8~zf^60,18^35,18^-35)/Me,@(1^60,5^180,16^60)/*H +) +endfont +%********************************************************************** +beginfont("EN:Cromolyn") + MCf(^^30, + Ph,-1=?6,3:d,-4:O,-1://O,-3:/COOH, + #2\,O,!2,/OH,!2,O,60,Ph,-5=?6,3=d,-1:O,-4://O,-2:/COOH + ) +endfont +%********************************************************************** +beginfont("EN:Emetine") + MCf(^^30, + {,Ph,-4=?6,2:N,-4=?6,},@(1,6)/OMe,-2:/*Et,@(7^-60,12^-60)/*H, + -3\,!~zb,^^-60,?6,5=d,2:NH,-6^-60:*/H,-2=?6,$(2,4)dl + ) +endfont +%*********************************************************************** +beginfont("EN:Colchicine") + MCf(^^30, + Ph,@(1,2,6)/OMe,-4=?7,-5=?7,$(-1,-4,-6)dl,-2://O,-3:/OMe, + #9\,NH,!,//O,! + ) +endfont +%*********************************************************************** +beginfont("EN:Caffeine") + MCf(^^30, + ?6,3=d,@(2,6)N,@(2,6)/Me,@(1,5)//O,-4=?5,2=d,@(1,3)N,3:/Me + ) +endfont +%********************************************************************** +beginfont("EN:Acronycine") + MCf(^^30, + Ph,-4=?6,1:N,4://O,,1:/Me,-3=Ph2,-1:/OMe, + -4=?6,2=d,4:O,-2^-35:/Me,-2^35:/Me + ) +endfont +%*********************************************************************** +beginfont("EN:Ibotenic acid") + MCf(^^18, + ?5,4=d,3:O,2:NH,1://O,4\^-24,/NH2,!,COOH + ) +endfont +%********************************************************************** +beginfont("EN:Piperine") + MCf(^^30, + Ph,-1=?5,@(1,3)O,#4\,!~dr,!,!~dr,!,//O,!,?6,1:N + ) +endfont +%*********************************************************************** +beginfont("EN:Febrifugine") + MCf(^^30, + Ph,-4=?6,2=d,@(1,3)N,4://O,#9\,!,//O,!,!~zf,?6,2:NH,-1:*/OH + ) +endfont +%*********************************************************************** +beginfont("EN:Mitomycine C") + MCf(^^30, + ?6,$(3,6)dl,@(2,5)//O,1:/Me,-4=?5,1:N,#6:/NH2,-3=?5,-2=?3,-1=wb,-2=wf,-1:NH, + #8:/*OMe^35,#9\`1^17.9,!,O,!,//O,!,NH2 + ) +endfont +%*********************************************************************** +beginfont("EN:Podophyllotoxin"); +MCf(^^0, + {,?5,@(2,5)O,-3=Ph2,-3=Ph1,-3=?5,2:O,},-1=wb,-3://O, + 10\*,Ph,@(-2,-3,-4)/OMe,#13:/*OH,@(#11~wf^-60,#12~zf^60)/H +) +endfont; +%*********************************************************************** +beginfont("EN:Warfarin"); +MCf(^^30, + Ph,3=??6,10:O,7:/OH,9://O,8\,/Ph`1,60,!,//O,! +) +endfont; +%*********************************************************************** +beginfont("EN:Genistein"); +MCf(^^30, + Ph,3=??6,10:O,@(2,6)/OH,9://O,8\,Ph,-3:/OH +) +endfont; +%*********************************************************************** +beginfont("EN:Baicalein"); +MCf(^^30, + Ph,3=??6,10:O,@(1,2,6)/OH,9://O,8\,Ph +) +endfont; +%*********************************************************************** +beginfont("EN:Baicalein"); +MCf(^^30, + Ph,3=??6,9=d,10:O,@(1,2,6)/OH,7://O,-2\,Ph + ) +endfont; +%*********************************************************************** +beginfont("EN:Reserpine"); +MCf(^^30, + {,Ph,-4=?5,3=d,-2=?6,2:N,-4=?6,-3=?6,},7:NH,10:*/H^-60, + @(15^-60,16^60)/*H, + #20*\,O,!,//O,!,Ph,@(-2,-3,-4)/OMe,@(#1,#19~zf>rl)/OMe, + #18*\,//O,!,O,! + ) +endfont; +%*********************************************************************** +beginfont("EN:Rotenone"); +MCf(^^-60, + ?5,$(-3,-2,-3,-4)??6,$(7,9,-2,-4)dl,$(3,17)dr, + @(2,13,16)O,10://O,@(11^-60,12^60)*/H, + @(-2,-3)/OMe,1*\,/Me,!~dl +) +endfont; +%*********************************************************************** +beginfont("EN:Pyrethrin I"); +MCf(^^30, + ?3,@(3^35~wf,3^-35~zf)/Me,1*\,!~dl,iPr, + 2\*,//O,!,O,-36~zb,?5,-2=d,-1:/Me,-3://O, + -2\,!4,$(-1,-3)dl +) +endfont; +%*********************************************************************** +beginfont("EN:Erythromycin"); +MCf(^^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,10)*/Me,@(4,6^-35,8,12^35)/*Me, + @(6^35,11,12^-35)*/OH, + #3\*,O,30,{,``.7,?6,},2:O,@(3,5^35)/Me,4:/OH,5^-35:/OMe, + #5\*^30`1.7,O,!,{,``.7,?6,},6:O,5:/Me,2:/OH,3:/NMeMe +) +endfont; +%********************************************************************** +beginfont("EN:Paclitaxel") + MCf(^^0, + {,?6,5=d,3*,{,``1,36,45,45,45,45,},&(#5),#9=?6,-4=?4,},-1=wb,-3=wf,-1:O, + @(4^35,4^-35,6)/Me,@(3^-60,15)*/OH,8:/*H^-60,9:*/Me^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 + ) +endfont +%********************************************************************** +beginfont("EN:Mevastatin") + MCf(^^30, + ?6,2=d,4:*/H^60,,3=?6,2=d,9:*/Me, + #10*\,!,60~wb,?6,6:O,-2://O,-4:/*OH, + #5\*,O,60,//O,!,*/Me,!2 + ) +endfont +%*********************************************************************** +beginfont("EN:Sesamine") + MCf(^^54, + ?5,1=??5,@(4,7)O,@(1^-54,2^54)*/H, + #5*\^-12,Ph,-3=?5,@(-1,-3)O, + #8*\^-12,Ph,-3=?5,@(-1,-3)O + ) +endfont +%********************************************************************** +beginfont("EN:Morphine") + MCf(^^30, + {,Ph,2=?6,-4=?6,(#1,#12)=?5[2],1:O,},-1=zb, + 7*,60~wf`0.75,70~ov`1.3,45,N,/Me,&9~wb, + 15=d,6:/OH,8^180:*/H,12:/*OH + ) +endfont +%********************************************************************** +beginfont("EN:Capsaicin") + MCf(^^30, + Ph,1:/OH,6:/OMe,4\,!,NH,!,//O,!8,-3=dr,-1:/Me + ) +endfont +%*********************************************************************** +beginfont("EN:Quinine") + MCf(^^30, + {,Ph,3=Ph,},7:N,6:/OMe, + 10\,*/OH,/H~zf^-60,!, + ?6,2:N,1:*/H^60,4*\,!~dr,2*,165~zf,60,&5~zb + ) +endfont +%*********************************************************************** +beginfont("EN:Atoropin") + MCf(^^-30, + O,!,//O,!,!,Ph, + #1\~zb^-120,?7,-2*\^-170`1.2,N,/Me,&-5~wb, + #3\~wv,!,OH + ) +endfont +%*********************************************************************** +bye diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf new file mode 100644 index 00000000000..bca1f0085dd Binary files /dev/null and b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf differ diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex new file mode 100644 index 00000000000..f82dd499f38 --- /dev/null +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex @@ -0,0 +1,80 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Molecular Coding Format file for mcf_examples.tex by A.Yamaji 2015.7 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\documentclass[a4paper]{article} +\usepackage{graphicx} +\pagestyle{empty} +\topmargin=-20mm +\oddsidemargin=-14mm +\textwidth=210mm +\textheight=290mm +\parindent=0mm +\setlength\columnsep{8mm} +%------------------------------------------------------------------------------- +\makeatletter% +\newbox \@stringbox% +\newcount \fontnum% +\newcount \tnum% +\newcount \Cnt@xlen% +\newcount \Cnt@row% +\newcount \fontw% +\newdimen \font@dim% +%------------------------------------------------------------------------------- +\def\mol@sel#1{% + \if#1\empty\relax\else% + \edef\@first{\expandafter\@first@param#1;}% + \edef\@second{\expandafter\@second@param#1;}% + \ifx\@first\@EN@ \edef\MOL@nameE{\@second}\fi% + \ifx\@first\@JN@ \edef\MOL@nameJ{\@second}\fi% + \ifx\@first\@NO@ \edef\MOL@number{\@second}\fi% + \ifx\@first\@CAS@ \edef\MOL@CAS{\@second}\fi% + \ifx\@first\@MW@ \edef\MOL@MW{\@second}\fi% + \ifx\@first\@FM@ \edef\MOL@fomura{\@second}\fi% + \ifx\@first\@USE@ \edef\MOL@use{\@second}\fi% + \ifx\@first\@XLogP@ \edef\MOL@XLogP{\@second}\fi% + \ifx\@first\@EXA@ \edef\MOL@extA{\@second}\fi% + \ifx\@first\@EXB@ \edef\MOL@extB{\@second}\fi% + \fi% +}% +%------------------------------------------------------------------------------- +\def\@first@param#1:#2;{#1}\def\@second@param#1:#2;{#2}% +\def\MOLinfo#1#2#3#4#5#6#7#8#9{% +\def\@EN@{EN}\def\@JN@{JN}\def\@CAS@{CAS}\def\@NO@{NO}\def\@MW@{MW}\def\@FM@{FM}% +\def\@USE@{USE}\def\@XLogP@{XLogP}\def\@EXA@{EXA}\def\@EXB@{EXB}% +\edef\MOL@nameE{}\edef\MOL@nameJ{}\edef\MOL@number{}\edef\MOL@CAS{}\edef\MOL@MW{}% +\edef\MOL@fomura{}\edef\MOL@use{}\edef\MOL@XLogP{}\edef\MOL@extA{}\edef\MOL@extB{}% +\mol@sel{#1}\mol@sel{#2}\mol@sel{#3}\mol@sel{#4}\mol@sel{#5}\mol@sel{#6}% +\mol@sel{#7}\mol@sel{#8}\mol@sel{#9}\MOLaux}% +\def\MOLaux#1#2#3{\mol@sel{#1}\mol@sel{#2}\mol@sel{#3}}% +%-------------------------------------------------------------------------------- +\def\@stru#1[#2]{\font\@strufont=#1\relax\hbox{\@strufont\char#2}}% +\def\MCFinfo#1#2#3#4#5#6#7#8#9{% + \unitlength=0.01mm\relax \@tempcnta=3200\relax \@tempcntb=3800\relax% + \begin{picture}(\@tempcntb,\@tempcnta)% + \advance\@tempcnta -300\relax% + \put(20,\@tempcnta){\tiny\bf [\the\fontnum] \MOL@nameE}% +%--------------------------------------------------------------------------- +% for METAFONT + \put( 0,0){\makebox(\@tempcntb,\@tempcnta){\@stru{#1}[#2]}}% +%%%% for METAPOST +%%%% \put( 0,0){\makebox(\@tempcntb,\@tempcnta){\includegraphics{#3}}}% +%--------------------------------------------------------------------------- + \end{picture}% + \advance\fontnum\@ne\relax\advance\tnum\@ne\relax% + \ifnum\tnum=5 \\ \tnum=0\relax \fi% + }% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{document} +{\hspace{20mm} \LARGE\bf Molecular Coding Format examples \hspace{20mm} }% +{\footnotesize\bf by Akira Yamaji 2015.7} \vspace{5mm}\\ +\fontnum=1% +\noindent% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Copy & Paste here from log-file %%%%%%%%%%%%%%% +%%%%%%%%% or \input 'filename'-info.log %%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%------------------------------------------------------------------------ +\input mcf_exa_soc-info.log +%------------------------------------------------------------------------ +\end{document} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-030.eps b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-030.eps new file mode 100644 index 00000000000..566a268d63e --- /dev/null +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-030.eps @@ -0,0 +1,71 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 47 7 112 78 +%%HiResBoundingBox: 47.18906 7.2196 111.88002 77.81963 +%%Creator: MetaPost 1.999 +%%CreationDate: 2015.07.12:0850 +%%Pages: 1 +%%BeginProlog +%%EndProlog +%%Page: 1 1 + 0 0 0 setrgbcolor 0 0.65842 dtransform truncate idtransform setlinewidth pop + [] 0 setdash 1 setlinecap 1 setlinejoin 10 setmiterlimit +newpath 58.52762 27.21318 moveto +79.09938 15.33614 lineto stroke +newpath 90.97905 15.33603 moveto +111.55081 27.21318 lineto stroke + 1 0 0 setrgbcolor 0.65842 + 0 dtransform exch truncate exch idtransform pop setlinewidth +newpath 111.55081 27.21318 moveto +111.55081 57.82605 lineto stroke + 0 0 0 setrgbcolor 0 0.65842 dtransform truncate idtransform setlinewidth pop +newpath 111.55081 57.82605 moveto +90.97905 69.7031 lineto stroke +newpath 79.09938 69.7032 moveto +58.52762 57.82605 lineto stroke + 0.65842 0 dtransform exch truncate exch idtransform pop setlinewidth +newpath 58.52762 57.82605 moveto +58.52762 27.21318 lineto stroke + 1 0 0 setrgbcolor +newpath 80.35208 7.2196 moveto +81.27386 7.2196 lineto +81.27386 16.59387 lineto +80.35208 16.59387 lineto + closepath fill +newpath 88.80457 7.2196 moveto +89.72635 7.2196 lineto +89.72635 16.59387 lineto +88.80457 16.59387 lineto + closepath fill +newpath 81.64258 16.59387 moveto +80.35208 16.59387 lineto +88.43585 7.2196 lineto +89.72635 7.2196 lineto + closepath fill + 0 1 0 setrgbcolor +newpath 80.35208 68.44536 moveto +81.27386 68.44536 lineto +81.27386 77.81963 lineto +80.35208 77.81963 lineto + closepath fill +newpath 88.80457 68.44536 moveto +89.72635 68.44536 lineto +89.72635 77.81963 lineto +88.80457 77.81963 lineto + closepath fill +newpath 81.64258 77.81963 moveto +80.35208 77.81963 lineto +88.43585 68.44536 lineto +89.72635 68.44536 lineto + closepath fill + 0 0 0 setrgbcolor +newpath 55.69298 26.07932 moveto +55.69298 28.34705 lineto +47.18906 28.34705 lineto +47.18906 26.07932 lineto + closepath fill +newpath 52.85834 24.37854 moveto +58.52762 27.21318 lineto +52.85834 30.04782 lineto + closepath fill +showpage +%%EOF diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf new file mode 100644 index 00000000000..27e88b9ee1f --- /dev/null +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf @@ -0,0 +1,262 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2015.2 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +input mcf2graph.mf; +%----------------------------------------------------------------------- +font_wd#:=60mm#;% font width +font_ht#:=30mm#;% font height +max_bond_width:=0.18; +%----------------------------------------------------------------------- +sw_logout:=1; +sw_frame:=0; +sw_expand:=0; +sw_start_vector:=0; +%%%%%sw_checklist:=1; +%*********************************************************************** +beginfont("EN:Chain") +sw_numberB:=1; + ratio_cr:=1; + sw_start_vector:=1; + MCf(^^30,-60,60,-60,60,-60,60) +endfont +%*********************************************************************** +beginfont("EN:Chain") + sw_numberB:=1; + ratio_cr:=1; + sw_start_vector:=1; + MCf(^^30,!,!,!,!,!,!) +endfont +%*********************************************************************** +beginfont("EN:ring") + sw_numberB:=1; + sw_start_vector:=1; + MCf(?6) +endfont +%*********************************************************************** +beginfont("EN:rotate 1") + sw_start_vector:=1; + MCf(^^30,!4,^^30,?6) +endfont +%*********************************************************************** +beginfont("EN:change bond 1") + ratio_cr:=1; + MCf(^^30,!~dm,!~dl,!~dr,!~wf,!~wb,!~zf,!~zb) +endfont +%*********************************************************************** +beginfont("EN:change bond 2") + ratio_cr:=1; + MCf(^^30,!9,1=vf,2=vb,3=tm,4=dt,5=wv,@(7~bd^-45`2,9~ov^45`2)/Me) +endfont +%*********************************************************************** +beginfont("EN:change bond length") + sw_start_vector:=1; + sw_numberB:=1; + MCf(^^30,!3,!`1.2,!2) +endfont +%*********************************************************************** +beginfont("EN:change bond length") + sw_start_vector:=1; + sw_numberB:=1; + MCf(^^30,!3,``1.2,!3) +endfont +%*********************************************************************** +beginfont("EN:change atom 1") + sw_start_vector:=1; + MCf(^^30,!2,O,!2) +endfont +%*********************************************************************** +beginfont("EN:change atom 2") + sw_start_vector:=1; + MCf(^^30,!6,2:O,@(3,5)N) +endfont +%*********************************************************************** +beginfont("EN:change atom 3") + sw_start_vector:=1; + MCf(?6,4\,?6,2:N) +endfont +%*********************************************************************** +beginfont("EN:change atom 4") + sw_start_vector:=1; + MCf(?6,4\,??6,2:N) +endfont +%*********************************************************************** +beginfont("EN:change atom 5") + sw_start_vector:=1; + MCf(?6,4\,?6,#2:N) +endfont +%*********************************************************************** +beginfont("EN:change atom 6") + sw_start_vector:=1; + MCf(?6,4\,?6,-2:N) +endfont +%*********************************************************************** +beginfont("EN:fused ring 1") + sw_start_vector:=1; + sw_numberB:=1; + MCf(^^30,?6,$(3,3,3)?6) +endfont +%*********************************************************************** +beginfont("EN:fused ring 2") + sw_start_vector:=1; + sw_numberB:=1; + MCf(^^30,?6,$(3,9,14)??6) +endfont +%*********************************************************************** +beginfont("EN:fused ring 3") + sw_start_vector:=1; + sw_numberB:=1; + MCf(^^30,?6,$(3,9)??6,(11,4)=??6[4],(16,17)=??6[3],(20,5)=??4[2]) +endfont +%*********************************************************************** +beginfont("EN:fused ring 4") + sw_start_vector:=1; + sw_numberB:=1; + MCf(^^30,?6,$(3,9)??6,(11,4)=??6[4],(20,5)=??5[3],(16,17)=??5[2]) +endfont +%*********************************************************************** +beginfont("EN:Spiro ring ") + sw_start_vector:=1; + ratio_cr:=1; + MCf(^^30,!6,4*,?5) +endfont +%*********************************************************************** +beginfont("EN:branch") + sw_numberB:=1; + sw_start_vector:=1; + MCf(^^30,!3,/!2,!3) +endfont +%*********************************************************************** +beginfont("EN:branch") + sw_numberB:=1; + sw_start_vector:=1; + MCf(^^30,!6,4\,!2) +endfont +%*********************************************************************** +beginfont("EN:substituent 1") + sw_start_vector:=1; + MCf(^^30,!,//O,!,/*H,!,*/H,!,/?3,!,**?3,!) +endfont +%*********************************************************************** +beginfont("EN:substituent 2") + sw_start_vector:=1; + MCf(^^30,!,/Me,!,/Et,!3,/Pr,!,/iPr,!3,/tBu,!) +endfont +%*********************************************************************** +beginfont("EN:substituent 3") + sw_start_vector:=1; + MCf(^^30,!10,2:/Me,3:/Et,6:/Pr,7:/iPr,10:/tBu) +endfont +%*********************************************************************** +beginfont("EN:substituent 4") + sw_start_vector:=1; + MCf(^^30,?6,@(3`2^30,3~wf,4~zf,6~wf^-30,6~zf^30)/H) +endfont +%*********************************************************************** +beginfont("EN:substituent 5") + sw_start_vector:=1; + MCf(^^30,{,``1,!7,},@(2,3)/*Me`2^30,5:*/Pr>lr,7:*/Pr>rl +) +endfont +%*********************************************************************** +beginfont("EN:change atom and substituent") + sw_start_vector:=1; + MCf(^^30,!3,NH,!,SOO,!3) +endfont +%*********************************************************************** +beginfont("EN:chain strech direction mode 1") + MCf( + ?4,@(3^-90,3^-30,3^90)/'(!3,"{>hz}")>hz, + @(1^-60,1`1.5,1^60)/'(!2,"{>vt}")>vt + ) +endfont +%*********************************************************************** +beginfont("EN:chain strech direction mode 2") + MCf( + ^^30,!6,@(3^-30,3,3^30)/'(!,!,!,"{>lr}")>lr, + @(5^-30,5,5^30)/'(!,!,!,"{>rl}")>rl + ) +endfont +%*********************************************************************** +beginfont("EN:chain strech direction mode 3") + sw_start_vector:=1; + MCf(^^-30,!6,@(6>45)/'(!3,"{>45}"), + @(3>'(90,-90,90))/'(!,!,!,"{>'(90,-90,90)}") + ) +endfont +%*********************************************************************** +beginfont("EN:Change color") + sw_start_vector:=1; + MCf(^^30,?6,@(2,5)N,2:red,5:green,3=red) +endfont +%*********************************************************************** +beginfont("EN:Chain start multi characters") +% sw_start_vector:=1; + MCf(^^30,COOH,!0,!,/OH^-30,/COOH^30,!2,COOH) +endfont +%*********************************************************************** +beginfont("EN:User definition") + sw_start_vector:=1; + iBuOH:='(!,/Me,!,OH); + MCf(^^30,?6,@(4,6)/iBuOH) +endfont +%*********************************************************************** +beginfont("EN:Inline definition") + sw_start_vector:=1; + MCf(^^30,!3,/'(!,/Me,!,OH),!3) +endfont +%*********************************************************************** +beginfont("EN:Switwch start vector") + sw_start_vector:=0; + MCd(.7,.7)( 0, 0)(^^30,Ph,4:/Cl,3:/F) + sw_start_vector:=1; + MCd(.7,.7)( 1, 1)(^^30,Ph,4:/Cl,3:/F) +endfont +%*********************************************************************** +beginfont("EN:Switwch numberingA") + sw_numberA:=1; + sw_start_vector:=1; + MCf(^^30,?6,-4=?6,-3\,!,?6,#10:/Et) +endfont +%*********************************************************************** +beginfont("EN:Switwch numberingB") + sw_numberB:=1; + sw_start_vector:=1; + MCf(^^30,?6,-4=?6,-3\,!,?6,#10:/Et) +endfont +%*********************************************************************** +beginfont("EN:Switwch Frame") + MCd(.7,.7)( 0, 0)(^^30,Ph,4:/Cl,3:/F) + sw_frame:=1; + MCd(.7,.7)( 1, 1)(^^30,Ph,4:/Cl,3:/F) +endfont +%*********************************************************************** +beginfont("EN:Switwch Solid ratio") + MCd(.7,.7)( 0, 0)(^^30,Ph,4:/Cl,3:/F) + sw_solid:=1; ratio_bond_width:=0.08; + MCd(.7,.7)( 1, 1)(^^30,Ph,4:/Cl,3:/F) +endfont +%*********************************************************************** +beginfont("EN:Switwch Expand") + MCd(.6,.6)(0, 0)(^^30,Ph,4:/COOH,3:/NH2) + sw_expand:=1; + MCd(.6,.6)(1, 1)(^^30,Ph,4:/COOH,3:/NH2) +endfont +%*********************************************************************** +beginfont("EN:Ampicillin") + MCf(^^45, + ?4,2:N,2=??5,-1:S, + @(3^45,4^-45)/*H,1://O^15,5:/*COOH^-18,@(6^35,6^-35)/Me, + 4\^75,NH,!,//O,!,NH,!,Ph + ) +endfont +%*********************************************************************** +beginfont("EN:Cholesterol","MW:386.65") + MCf( + ^^30,?6,$(-4,-2)??6,-4=??5,7=dl, + 1:*/OH,@(4,12)*/Me^60,9:*/H^60, + 10:/*H^180,@(11,-1)/*H^-60, + -1\^17,/*Me,!4,/Me,!, + ) +endfont +%*********************************************************************** +bye diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf new file mode 100644 index 00000000000..6468b687ad7 Binary files /dev/null and b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf differ diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex new file mode 100644 index 00000000000..2b0c4e507c6 --- /dev/null +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex @@ -0,0 +1,572 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Molecular Coding Format manual by Akira Yamaji 2015.7 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\documentclass[a4paper]{article} +\usepackage{graphicx} +\pagestyle{empty} +\topmargin=-17mm +\textheight=27.5cm +\textwidth=18cm +\oddsidemargin=-9mm +\parindent=0mm +\unitlength=1mm% +\makeatletter +%---------------------------------------------------------------------------- +\newcount \fontnum% +\newcount \tempnum% +\fontnum=0% +\tempnum=1% +%---------------------------------------------------------------------------- +\font\@strufont=mcf_man_soc\relax% +%---------------------------------------------------------------------------- +\def\MCFtitle#1{\framebox{\bf No.\the\tempnum}\hspace{2mm}#1} +%---------------------------------------------------------------------------- +\def\MCFstructure{% + \makebox(75,0)[t]{\frame{\makebox(70,35){\@strufont\char\fontnum}}} + \advance\fontnum\@ne\relax\advance\tempnum\@ne\relax% +}% +%---------------------------------------------------------------------------- +\def\MCFstructureEPS{% + \makebox(75,0)[t]% + {\frame{\makebox(70,35){% + \ifnum\fontnum<10\includegraphics{mcf_man_soc-00\the\fontnum}% + \else\ifnum\fontnum<100\includegraphics{mcf_man_soc-0\the\fontnum}\fi\fi}}}% + \advance\fontnum\@ne\relax\advance\tempnum\@ne\relax% +}% +%---------------------------------------------------------------------------- +\begin{document} +\noindent% +\begin{picture}(180,0) + \put(50,12){{\LARGE Molecular coding format manual}\hspace{20mm} + by Akira Yamaji 2015.7} +\end{picture}\vspace{-6mm}\\ +%---------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Chain (1)} +\begin{verbatim} +plus(+):anticlockwize,minus(-)clockwize +bold arrow is default angle and position + + ^^30,-60,60,-60,60,-60,60 +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%1---------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Chain (2)} +\begin{verbatim} +!,!!: take 60 or -60 depend on + current angle and enviroment + + !6 (!!6) + + ** !!6: !,!,!,!,!,! + !6: {,!!6,} +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Ring} +\begin{verbatim} +six membered ring + + ?6 (??6) + + ** ??6 :^^-120,60,60,60,60,60,&(-5) + ?6 : {,??6,} + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{rotate} +\begin{verbatim} +^^angle:rotate current angle + + ^^30,!4,^^30,?6 +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change bond (1)} +\begin{verbatim} +~bond change bond + dm:double,dl:double(left),dr:double(right), + wf:wedge forward,wb:wedge backward, + zf:wedge dotted,zb:wedge dotted backward + + ^^30,!~dm,!~dl,!~dr,!~wf,!~wb,!~zf,!~zb +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change bond (2)} +\begin{verbatim} + Bn=bond : change bond + dm:double,dl:double(left),dr:double(right), + wf:wedge forward,wb:wedge backward, + zf:wedge dotted,zb:wedge dotted backward + + ^^30,!9,1=vf,2=vb,3=tm,4=dt,5=wv, + @(7~bd^-45`2,9~ov^45`2)/Me +\end{verbatim} +\end{minipage} +\MCFstructure +\newpage +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change bond length (1)} +\begin{verbatim} +B`length : change bond length of B + + ^^30,!3,!`1.2,!2 +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change bond length (2)} +\begin{verbatim} +``length : change all bond length after + + ^^30,!3,``1.2,!3 +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change atom (1)} +\begin{verbatim} +Insert hetero atom + + ^^30,!2,O,!2 +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change atom (2)} +\begin{verbatim} +2:O : change A2 C to O +@(3,5)N : change A3,A5 C to N + + ^^30,!6,2:O,@(3,5)N +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change atom (3)} +\begin{verbatim} +2:N : change A2(brock ahead) C to N + + ?6,4\,?6,2:N +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change atom (4)} +\begin{verbatim} +2:N : change A2(brock ahead) C to N +??6 is not brock + ?6,4\,??6,2:N + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change atom (5)} +\begin{verbatim} +#2:N : change A#2 C to N + + ?6,4\,?6,#2:N +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change atom (6)} +\begin{verbatim} +-2:N : change A(-2) C to N + + ?6,4\,?6,-2:N +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Fused ring (1)} +\begin{verbatim} + + ?6,$(3,3,3)??6 NG + ?6,$(3,9,14)??6 OK + ?6,$(-4,-3,-3)??6 OK + ?6,$(#3,#9,#14)??6 OK + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Fused ring (2)} +\begin{verbatim} + + ?6,$(3,3,3)?6 OK + ?6,$(3,9,14)?6 NG + ?6,$(-4,-3,-3)?6 OK + ?6,$(#3,#9,#14)?6 OK + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Fused ring (3)} +\begin{verbatim} +(4,11)=??6[4] : fuse 4/6 ring to B4 ..B11 +(16,17)=??6[3] : fuse 3/6 ring to B16..B17 +(20,5)=??4[2] : fuse 2/4 ring to B20.. B5 + + ^^30,?6,$(3,9)??6,(4,11)=??6[4], + (16,17)=??6[3],(20,5)=??4[2] + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Fused ring (4)} +\begin{verbatim} +(20,5)=??5[3] : fuse 3/5 ring to B20..B5 +(16,17)=??5[2] : fuse 2/5 ring to B16..B17 + + ^^30,?6,$(3,9)??6,(4,11)=??6[4], + (20,5)=??5[3],(16,17)=??5[2] +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Spiro ring} +\begin{verbatim} +4*,?5 : add ?5(5 membered ring) to A4 + + ^^30,!6,4*,?5 +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Branch (1)} +\begin{verbatim} +/ : branch bond +/ : process at last + + ^^30,!3,/!2,!3 +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Branch (2)} +\begin{verbatim} +4\ : branch bond at A4 + + ^^30,!6,4\,!2 +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Substituent (1)} +\begin{verbatim} +/ : single // : double +*/ : wedge forward /* : wedge backward +** : direct + + ^^30,!,//O,!,/*H,!,*/H,!,/?3,!,**?3,! +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Substituent (2)} +\begin{verbatim} +Insert substituent + + ^^30,!,/Me,!,/Et,!3,/Pr,!,/iPr,!3,/tBu,! +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Substituent (3)} +\begin{verbatim} +Add substituent + + ^^30,!10,2:/Me,3:/Et,6:/Pr,7:/iPr,10:/tBu + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Substituent (4)} +\begin{verbatim} +~,^,`,> : change type,angle,length,enviroment + of substituent + + ^^30,?6, + @(3`2^30,3~wf,4~zf,6~wf^-30,6~zf^30)/H +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Substituent (5)} +\begin{verbatim} +~,^,`,> : change type,angle,length,enviroment + of substituent + + ^^30,{,``1,!7,}, + @(2,3)/*Me`2^30,5:*/Pr>lr,7:*/Pr>rl + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change atom and Substituent} +\begin{verbatim} +NH,SOO : inset hetero atom and substituent + simultaneously + + ^^30,!3,NH,!,SOO,!3 + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Chain strech direction environment (1)} +\begin{verbatim} +>hz : horizontal enviroment (default) +>vt : vertical enviroment + + ?4, + @(3^-90,3^-30,3^90)/'(!3,"{>hz}")>hz, + @(1^-60,1`1.5,1^60)/'(!2,"{>vt}")>vt + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Chain strech direction environment (2)} +\begin{verbatim} +>lr : left-right enviroment +>rl : right-left enviroment + + ^^30,!6, + @(3^-30,3,3^30)/'(!3,"{>lr}")>lr, + @(5^-30,5,5^30)/'(!3,"{>rl}")>rl + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Chain strech direction environment (3)} +\begin{verbatim} +>45 : fixed angle enviroment +>'(-90,90,-90) : multi angle enviroment + + ^^-30,!6,@(2>45)/'(!3,"{>45}"), + @(6>'(-90,90,-90))/'(!2,"{>(-90,90,-90)}") +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Change color} +\begin{verbatim} +@(5)green : change color of A5 green +$(3)red : change color of B3 red + + ^^30,?6,@(2,5)N, + 2:red,5:green,3=red + +\end{verbatim} +\end{minipage} +\MCFstructureEPS +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Chain start multiple characters} +\begin{verbatim} +Use !0 instead of !, +if begin with multi charactor string + + ^^30,COOH,!0,!,/OH^-30,/COOH^30,!2,COOH +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{User definition} +\begin{verbatim} +iBuOH : user defined substructure + + iBuOH:='(!,/Me,!,OH) + MCf(^^30,?6,@(4,6)/iBuOH) + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Inline definition} +\begin{verbatim} +Insert user defined substructure + + ^^30,!3,/'(!,/Me,!,OH),!3 + +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Switch Start Vector} +\begin{verbatim} + + MCd(.8,.8)( 0, 0)(^^30,Ph,4:/Cl,3:/F) + sw_start_vector:=1; + MCd(.8,.8)( 1, 1)(^^30,Ph,4:/Cl,3:/F) +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Switch NumberingA} +\begin{verbatim} + + sw_numberA:=1; + MCf(^^30, + Ph,-4=Ph1,-3\,!,Ph,10:/Et) +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Switch NumberingB} +\begin{verbatim} + + sw_numberB:=1; + MCf(^^30, + Ph,-4=Ph1,-3\,!,Ph,10:/Et) +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Switch Frame} +\begin{verbatim} + + MCd(.8,.8)(0,0)(^^30,Ph,4:/Cl,3:/F) + sw_frame:=1; + MCd(.8,.8)(1,1)(^^30,Ph,4:/Cl,3:/F) +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Switch Solid ratio} +\begin{verbatim} + + MCd(.8,.8)( 0, 0)(^^30,Ph,4:/Cl,3:/F) + sw_solid:=1; ratio_bond_width:=0.08; + MCd(.8,.8)( 1, 1)(^^30,Ph,4:/Cl,3:/F) +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Switch Expand} +\begin{verbatim} + + MCd(.6,.6)(0,0)(^^30,Ph,4:/COOH,3:/NH2) + sw_expand:=1; + MCd(.6,.6)(1,1)(^^30,Ph,4:/COOH,3:/NH2) +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Example(1) Ampicillin} +\begin{verbatim} + ^^45,?4,2:N,2=??5,-1:S, + @(3^45,4^-45)/*H,1://O^15, + 5:/*COOH^-18,@(6^35,6^-35)/Me, + 4\^75,NH,!,//O,!,NH,!,Ph +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\begin{minipage}[t][38mm]{100mm} +\MCFtitle{Example(2) Cholesterol} +\begin{verbatim} + ^^30,?6,$(-4,-2)??6,-4=??5,7=dl, + 1:*/OH,@(4,12)*/Me^60,9:*/H^60, + 10:/*H^180,@(11,-1)/*H^-60, + -1\^17,/*Me,!4,/Me,!, +\end{verbatim} +\end{minipage} +\MCFstructure +\vspace{6mm}\\ +%----------------------------------------------------------------------------- +\end{document} -- cgit v1.2.3