summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-02-12 00:20:07 +0000
committerKarl Berry <karl@freefriends.org>2016-02-12 00:20:07 +0000
commit947e533d6de8e459df04fdcf60d65bbc735b3b12 (patch)
tree6ac0e9eac2fd2f8ddfb391d454413258b9a6b986
parent499f66f0a1368ffd94de79083962eb5a0f4ca8f2 (diff)
mcf2graph (11feb16)
git-svn-id: svn://tug.org/texlive/trunk@39672 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG10
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/README51
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf2
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdfbin248205 -> 248202 bytes
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf224
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdfbin344950 -> 399538 bytes
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex395
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdfbin123803 -> 123803 bytes
-rw-r--r--Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf19
9 files changed, 477 insertions, 224 deletions
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG b/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
index 1c83bd84c19..4438f54eeae 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
@@ -1,8 +1,14 @@
*******************************************************************************
- Changelog of mcf2graph
+ Changelog of mcf2graph software package by Akira Yamaji 2016-02-11
*******************************************************************************
+[ver. 3.81 / 2016-02-11]
+ add parameter sw_subst_off,sw_bond_single
+ delete constant _skeltonA_end
+ update MCF syntax manual
+
[ver. 3.80 / 2016-02-06]
- add new command || , divide CHANGELOG from README and change e-mail address
+ add new command || , divide CHANGELOG from README
+ change e-mail address
[ver. 3.78 / 2016-01-16]
update MCF syntax manual and MCF luamplib example
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/README b/Master/texmf-dist/doc/metapost/mcf2graph/README
index 3755cb4e70c..2c4e2da7d64 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 Metafont/Metapost
Author : Akira Yamaji
- version : 3.80 2016-02-06
+ version : 3.81 2016-02-11
E-mail : mcf2graph@gmail.com
Located at : http://www.ctan.org/pkg/mcf2graph
********************************************************************************
@@ -12,7 +12,6 @@
like adressing,grouping,macro,etc. There are no Meta language commands in MCF.
mcf2graph.mf(metapost/metafont macro) convert MCF file to graphics file
(pk font/PNG/SVG/EPS) or MDL MOL file(V2000).
- The software,MCF manual,TeX example can get from authors web site.
2. The distribution of software
( 1) README This file
@@ -23,29 +22,36 @@
( 6) mcf_man_soc-031.eps No.31 EPS(with color) file of (4)
( 7) mcf_manual.pdf PDF of (4) (used LaTeX,dvipdfmx)
( 8) mcf_example.tex LaTeX example,
- Make 'mcf_exa_soc-info.aux' before typeset
- mpost -s ahangle=0 mcf_exa_soc.mf
+ Make file 'mcf_exa_soc-info.aux' before typeset
+ >mpost -s ahangle=0 mcf_exa_soc.mf
( 9) mcf_exa_soc.mf Molecular difinition file for mcf_example.tex
(10) mcf_example.pdf PDF of (8) (used LaTeX,dvipdfmx)
(11) mcf_mplib_exa.tex luamplib v2.11(LuaLaTeX) example
(12) mcf_example.pdf PDF of (11) typeset with LuaTeX(LuaLaTeX)
3. How to use mcf2graph with Metapost
- ( 1) mpost -s ahangle=0 FILENAME output no graphic file.
- ( 2) mpost -s ahangle=1 FILENAME output PNG file. (default value is eps)
- ( 3) mpost -s ahangle=2 FILENAME output SVG file.
- ( 4) mpost -s ahangle=3 FILENAME output MDL Molfile(V2000)
- ( 5) mpost -s ahlength=1 FILENAME output first definition only (for test)
- ( 6) mpost -s ahlength=2 FILENAME output checklist.
+ ( 1) >mpost -s ahangle=0 FILENAME output no graphic file.
+ ( 2) >mpost -s ahangle=1 FILENAME output PNG file. (default value is eps)
+ ( 3) >mpost -s ahangle=2 FILENAME output SVG file.
+ ( 4) >mpost -s ahangle=3 FILENAME output MDL Molfile(V2000)
+ ( 5) >mpost -s ahlength=1 FILENAME output first definition only (for test)
+ ( 6) >mpost -s ahlength=2 FILENAME output checklist.
4. Molecular definition file example
- input mcf2graph.mf; % input main system
- font_wd#:=30mm#; font_ht#:=20mm#; % font width,font height
- max_bond_width:=0.2; % max fond length/font width
%-----------------------------------------------------------------------
- beginfont("EN:Acetamiprid") % Molecular name 1
- MCf(<30,Ph,4\,!,NH,!,!~dr,N,!,CN)% % Molecular Coding Format
+ input mcf2graph.mf; % input main system
+ %-- preamble -----------------------------------------------------------
+ font_wd#:=30mm#; % font width
+ font_ht#:=20mm#; % font height
+ max_bond_width:=0.2; % max fond length/font width
+ %-- molecular definition -----------------------------------------------
+ beginfont("EN:Acetamiprid") % Molecular name 1
+ MCf(<30,Ph,4\,!,NH,!,!~dr,N,!,CN) % Molecular Coding Format
+ endfont
+ beginfont("EN:Imidacloprid") % Molecular name 2
+ MCf(<30,Ph,1:N,6:/Cl,3\,!, % Molecular Coding Format
+ |,?5,1:N,3:NH,2\\,!,NO2)
endfont
%-----------------------------------------------------------------------
bye
@@ -65,7 +71,7 @@
\input mcf_exa_soc-info.aux % filename of souce file : mcf_exa_soc.mf
6. How to use mcf2graph with luamplib(LuaLaTeX)
- It is possible to write MCF in LaTeX text with luamplib(ver.2.11).
+ It is possible to write MCF in LaTeX text with luamplib.
mcf_mplib_exa.tex is example of using luamplib(LuaLaTeX).
\documentclass{article}
@@ -76,10 +82,17 @@
%-------------------------------------------------------------------------------
**********************************************************
\begin{mplibcode}
- font_wd:=100mm; font_ht:=50mm;
- beginfont("EN:Acetamiprid") % Molecular name 1
- MCf(<30,Ph,4\,!,NH,!,!~dr,N,!,CN)% % Molecular Coding Format
+ %-------------------------------------------------------------------
+ font_wd:=100mm; font_ht:=50mm; % preamble
+ %-------------------------------------------------------------------
+ beginfont("EN:Acetamiprid") % Molecular name 1
+ MCf(<30,Ph,4\,!,NH,!,!~dr,N,!,CN)% % Molecular Coding Format
+ endfont
+ beginfont("EN:Imidacloprid") % Molecular name 2
+ MCf(<30,Ph,1:N,6:/Cl,3\,!, % Molecular Coding Format
+ |,?5,1:N,3:NH,2\\,!,NO2)
endfont
+ %-------------------------------------------------------------------
\end{mplibcode}
%----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf
index d0e05dea883..3432440a3f3 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf
@@ -343,7 +343,7 @@ MCf(<30,{,``1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,},&1,
endfont;
%**************************************************************************
beginfont("EN:Paclitaxel")
- MCf({,?6,5=d,3*,{,``1,36,45,45,45,45,},&#5,-4=?6,-4=?4,},-1=wb,-3=wf,-1:O,
+ MCf(?6,5=d,3*,{,``1,36,45,45,45,45,},&#5,-4=?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)
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
index 686e34edde9..2c35bab4ff4 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
index 67f9a314c70..f8c5c68f772 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2016.01.16
+% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2016.02.11
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
input mcf2graph.mf;
%------------------------------------------------------------------------
@@ -21,6 +21,46 @@ beginfont("EN:Chain")
MCf(<30,-60,60,-60,60,-60,60)
endfont
%***********************************************************************
+beginfont("EN:Chain")
+ sw_numberB:=1;
+ max_bond_width:=0.20;
+ ratio_chain_ring:=1;
+ sw_start_vector:=1;
+ MCf(<30,!,!,!,!,!,!)
+endfont
+%***********************************************************************
+beginfont("EN:Chain")
+ sw_numberB:=1;
+ max_bond_width:=0.20;
+ ratio_chain_ring:=1;
+ sw_start_vector:=1;
+ MCf(<30,!6)
+endfont
+%***********************************************************************
+beginfont("EN:Jump")
+ sw_numberA:=1;
+ max_bond_width:=0.20;
+ ratio_chain_ring:=1;
+ sw_start_vector:=1;
+ MCf(<30,!6,3*,0,!)
+endfont
+%***********************************************************************
+beginfont("EN:Branch")
+ sw_numberA:=1;
+ max_bond_width:=0.20;
+ ratio_chain_ring:=1;
+ sw_start_vector:=1;
+ MCf(<30,!6,3\,!)
+endfont
+%***********************************************************************
+beginfont("EN:Connect")
+ sw_numberA:=1;
+ max_bond_width:=0.20;
+ ratio_chain_ring:=1;
+ sw_start_vector:=1;
+ MCf(<30,!6,3*,0,!,&5)
+endfont
+%***********************************************************************
beginfont("EN:ring")
sw_numberB:=1;
sw_start_vector:=1;
@@ -77,7 +117,13 @@ beginfont("EN:change atom 3")
endfont
%***********************************************************************
beginfont("EN:change atom 4")
- MCd(.5,.5)(.5,.9)(?6,4\,|,?6,2:N,||,@(2,6)O)
+ MCd(.5,.5)(.5,.9)(?6,4\,|,?6,2:N)
+ sw_numberA:=1;
+ MCd(.5,.5)(.5,.1)(?6,4\,?6)
+endfont
+%***********************************************************************
+beginfont("EN:change atom 4")
+ MCd(.5,.5)(.5,.9)(?6,4\,|,?6,||,2:N)
sw_numberA:=1;
MCd(.5,.5)(.5,.1)(?6,4\,?6)
endfont
@@ -131,15 +177,17 @@ beginfont("EN:Spiro ring ")
MCf(<30,!6,4*,?5)
endfont
%***********************************************************************
-beginfont("EN:branch")
+beginfont("EN:branch1")
sw_numberA:=1;
+ numberA_end:=9;
max_bond_width:=0.30;
ratio_chain_ring:=1;
MCf(<-30,!8,2\,!,4*\,!,6\*,!,8\\,!)
endfont
%***********************************************************************
-beginfont("EN:branch3")
+beginfont("EN:branch2")
sw_numberA:=1;
+ numberA_end:=7;
max_bond_width:=0.30;
ratio_chain_ring:=1;
MCf(<-30,!6,2\~dr,!,4\`1.5,!,6\^15,-60)
@@ -161,41 +209,41 @@ endfont
%***********************************************************************
beginfont("EN:substituent 3")
sw_numberA:=1;
- numberA_end:=_skeletonA_end;
+ numberA_end:=12;
MCf(<30,!11,2:/Me,3:/Et,6:/Pr,7:/iPr,10:/tBu,11:/Ph^-30)
endfont
%***********************************************************************
beginfont("EN:substituent 4")
- sw_numberA:=1; numberA_end:=_skeletonA_end;
+ sw_numberA:=1; numberA_end:=6;
MCf(<30,?6,@(3`2^30,3~wf,4~zf,6~wf^-30,6~zf^30)/H)
endfont
%***********************************************************************
beginfont("EN:substituent 5")
- sw_numberA:=1; numberA_end:=_skeletonA_end;
+ sw_numberA:=1; numberA_end:=8;
MCf(<30,!7`1,@(2,3)/*Me`2^30,5:*/Pr>lr,7:*/Pr>rl)
endfont
%***********************************************************************
beginfont("EN:chain strech direction mode 1")
ratio_chain_ring:=1;
MCf(
- ?4,@(3^-90,3^-30,3^90)/'(!3,"{>hz}")>hz,
- @(1^-60,1`2,1^60)/'(!2,"{>vt}")>vt
+ ?4,@(3^-90,3^-30,3^90)/'(!3,"{hz}")>hz,
+ @(1^-60,1`2,1^60)/'(!2,"{vt}")>vt
)
endfont
%***********************************************************************
beginfont("EN:chain strech direction mode 2")
ratio_chain_ring:=1;
MCf(
- <30,!6,@(3^-30,3,3^30)/'(!,!,!,"{>lr}")>lr,
- @(5^-30,5,5^30)/'(!,!,!,"{>rl}")>rl
+ <30,!6,@(3^-30,3,3^30)/'(!,!,!,"{lr}")>lr,
+ @(5^-30,5,5^30)/'(!,!,!,"{rl}")>rl
)
endfont
%***********************************************************************
beginfont("EN:chain strech direction mode 3")
ratio_chain_ring:=1;
sw_start_vector:=1;
- MCf(<-30,!6,@(6>45)/'(!3,"{>45}"),
- @(3>'(90,-90,90))/'(!3,"{>'(90,-90,90)}")
+ MCf(<-30,!6,@(6>45)/'(!3,"{45}"),
+ @(3>'(90,-90,90))/'(!3,"{'(90,-90,90)}")
)
endfont
%***********************************************************************
@@ -226,52 +274,6 @@ beginfont("EN:Inline definition")
MCf(<30,!3,/'(!,/Me,!,OH),!3)
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")
- 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
-%***********************************************************************
-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:Caffeine")
- MCf(<30,
- ?6,-4=?5,$(3,8)dl,@(2,6,7,9)N,@(2,6,9)/Me,@(1,5)//O
- )
-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:Gibberellin A3");
- MCf(
- <12,?6`1.3,3=?5,9=?7,12\^160`1.6,&8,
- 4\^155~zf`1.2,O,55,//O^180`1,&2~zb,
- 5=dl,11=wf,13=wb,7:/COOH,11://Me,1:*/OH,12:/*OH,2:*/Me,
- @(3^-60,9^60)*/H
- )
-endfont
-%***********************************************************************
beginfont("EN:Font size")
font_wd#:=30mm#;%
font_ht#:=20mm#;%
@@ -410,13 +412,6 @@ beginfont("EN:margin_top_bottom")
MCd(1,1)(0.9, .5)(<30,Ph,2:/OH,5:/NH2)
endfont
%***********************************************************************
-beginfont("EN:Switwch start vector")
- sw_start_vector:=0;
- MCd(1,.6)( 0, .5)(<30,Ph,4:/Cl,3:/F)
- sw_start_vector:=1;
- MCd(1,.6)( 1, .5)(<30,Ph,4:/Cl,3:/F)
-endfont
-%***********************************************************************
beginfont("EN:Switwch numberingA")
ratio_chain_ring:=1;
numberA_start:=3; numberA_end:=8;
@@ -433,6 +428,23 @@ beginfont("EN:Switwch numberingB")
sw_numberB:=3; MCd(1,1)(.5,.1)(<30,!9)
endfont
%***********************************************************************
+beginfont("EN:Switwch substituent off")
+ MCd(1,.6)( 0, .5)(<30,Ph,4:/Cl,3:/F)
+ sw_subst_off:=1;
+ MCd(1,.6)( 1, .5)(<30,Ph,4:/Cl,3:/F)
+endfont
+%***********************************************************************
+beginfont("EN:Switwch bondtype off")
+ MCd(1,.6)( 0, .5)(<30,Ph,4:/Cl,3:/F)
+ sw_bond_single:=1;
+ MCd(1,.6)( 1, .5)(<30,Ph,4:/Cl,3:/F)
+endfont
+%***********************************************************************
+beginfont("EN:Switwch start vector")
+ sw_start_vector:=1;
+ MCf(<30,Ph,4:/Cl,3:/F)
+endfont
+%***********************************************************************
beginfont("EN:Switwch font frame")
sw_font_frame:=1;
MCf(<30,Ph,4:/Cl,3:/F)
@@ -477,15 +489,15 @@ endfont
%***********************************************************************
beginfont("EN:Local setting")
sw_mol_frame:=1;
- MCd(1,.5)(0.0,0.5)(<30,Ph,@(2)N) endfont
-beginfont() MCd(1,.5)(0.5,0.5)(<30,Ph,@(2,4)N) endfont
-beginfont() MCd(1,.5)(1.0,0.5)(<30,Ph,@(2,4,6)N) endfont
+ MCd(1,.5)(0.0,0.5)(<30,Ph) endfont
+beginfont() MCd(1,.5)(0.5,0.5)(<30,Ph) endfont
+beginfont() MCd(1,.5)(1.0,0.5)(<30,Ph) endfont
%***********************************************************************
sw_mol_frame:=1;
beginfont("EN:Global setting")
- MCd(1,.5)(0.0,0.5)(<30,Ph,@(2)N) endfont
-beginfont() MCd(1,.5)(0.5,0.5)(<30,Ph,@(2,4)N) endfont
-beginfont() MCd(1,.5)(1.0,0.5)(<30,Ph,@(2,4,6)N) endfont
+ MCd(1,.5)(0.0,0.5)(<30,Ph) endfont
+beginfont() MCd(1,.5)(0.5,0.5)(<30,Ph) endfont
+beginfont() MCd(1,.5)(1.0,0.5)(<30,Ph) endfont
sw_mol_frame:=0;
%***********************************************************************
%% Output molecular infomation
@@ -500,4 +512,72 @@ sw_logout:=1;
MCf(<30,?6,-4=?5,$(3,8)dl,@(2,6,7,9)N,@(2,6,9)/Me,@(1,5)//O)
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")
+ 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
+%***********************************************************************
+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: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: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:Gibberellin A3");
+ MCf(
+ <12,?6`1.3,3=?5,9=?7,12\^160`1.6,&8,
+ 4\^155~zf`1.2,O,55,//O^180`1,&2~zb,
+ 5=dl,11=wf,13=wb,7:/COOH,11://Me,1:*/OH,12:/*OH,2:*/Me,
+ @(3^-60,9^60)*/H
+ )
+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`1.1,6*\^190`1.25,N,/Me,&3~wb,#3\~wv,!,OH)
+endfont
+%***************************************************************************
+beginfont("EN:Paclitaxel")
+ MCf(?6,5=d,3*,{,``1,36,45,45,45,45,},
+ &#5,-4=?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
+%***********************************************************************
bye
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
index 7035e8d2219..da4094c8854 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
index d48fed43a5b..3500652d6c7 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format manual by Akira Yamaji 2016.02.06
+% Molecular Coding Format manual by Akira Yamaji 2016.02.11
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{article}
\usepackage[dvipdfmx]{graphicx}
@@ -43,16 +43,27 @@
pk font,PNG,SVG,EPS or MDL MOL file(V2000). \\
\end{minipage}\vspace{3mm}\\
\linethickness{0.08mm}%
-%----------------------------------------------------------------------------
\noindent%
+%----------------------------------------------------------------------------
\begin{minipage}[t][38mm]{90mm}
-\MCFtitle{Chain}
+\MCFtitle{Chain(1)}
\begin{verbatim}
plus(+):anticlockwize,minus(-):clockwize
-! : take value depend on
- current angle and enviroment
<30,-60,60,-60,60,-60,60
+
+ ** bold arrow is default angle and position
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Chain(2)}
+\begin{verbatim}
+! : take value(60 or -60) depend on
+ current angle and enviroment
+
<30,!,!,!,!,!,!
\end{verbatim}
@@ -61,6 +72,54 @@ plus(+):anticlockwize,minus(-):clockwize
\vspace{5mm}\\
%-----------------------------------------------------------------------------
\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Chain(3)}
+\begin{verbatim}
+!6 : !,!,!,!, !,!
+
+ <30,!6
+
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Jump to atom}
+\begin{verbatim}
+3* : Jump to A3
+
+ <30,!6,3*,0,!
+
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Jump to atom and branch bond}
+\begin{verbatim}
+3\ : 3*,0
+
+ <30,!6,3\,!
+
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Connect bond}
+\begin{verbatim}
+&5 : Connect to A5
+
+ <30,!6,3\,!,&5
+
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
\MCFtitle{Ring}
\begin{verbatim}
six membered ring
@@ -68,7 +127,6 @@ six membered ring
?6
** ?6 : <-120,60,60,60,60,60,&1
- ** &1 : make bond connect to A1
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -81,8 +139,6 @@ six membered ring
<30,!4,<30,?6
- ** !4: !,!,!,!
- ** bold arrow is default angle and position
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -140,7 +196,7 @@ Bn`length : change bond length at Bn
\vspace{5mm}\\
%-----------------------------------------------------------------------------
\begin{minipage}[t][38mm]{90mm}
-\MCFtitle{Change chain length (3)}
+\MCFtitle{Change ring length}
\begin{verbatim}
?n`length : change ring length
@@ -169,7 +225,7 @@ Insert hetero atom
<30,!6,2:O,@(3,5)N
-An(-999<=n<=4095): atom number
+** An(-999<=n<=4095): atom number
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -187,27 +243,35 @@ An(-999<=n<=4095): atom number
\vspace{5mm}\\
%-----------------------------------------------------------------------------
\begin{minipage}[t][38mm]{90mm}
-\MCFtitle{Change atom (brock address)}
+\MCFtitle{Change atom (brock address 1)}
\begin{verbatim}
-2:N : change A2(brock address) C to N
-
-?6,4\,|,?6,2:N,||,@(2,6)O
-
| : divide brock
+
+?6,4\,|,?6,2:N,
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Change atom (brock address 2)}
+\begin{verbatim}
|| : reset brock adress
+
+?6,4\,|,?6,||,2:N
\end{verbatim}
\end{minipage}
\MCFstructure
\vspace{5mm}\\
%-----------------------------------------------------------------------------
\begin{minipage}[t][38mm]{90mm}
-\MCFtitle{Change atoma (absolute address)}
+\MCFtitle{Change atom (absolute address)}
\begin{verbatim}
#2:N : change A#2 C to N
?6,4\,|,?6,#2:N
-#n : (1<=n<=3095)
+** #n : (1<=n<=3095)
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -220,7 +284,7 @@ An(-999<=n<=4095): atom number
?6,4\,?6,-2:N
--n : (1<=n<=999)
+** -n : (1<=n<=999)
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -233,7 +297,7 @@ An(-999<=n<=4095): atom number
?6,3=?5
-Bn(n:-999<=n<=4095): bond number
+** Bn(n:-999<=n<=4095): bond number
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -363,12 +427,10 @@ MCf(<30,!`1,/Me~zf`2^30,!`1,/Me~zf`2^30,
\begin{minipage}[t][38mm]{90mm}
\MCFtitle{Add substituent(1)}
\begin{verbatim}
-sw_numberA:=1; numberA_end:=_skeletonA_end;
+sw_numberA:=1; numberA_end:=12;
MCf(<30,!11,
2:/Me,3:/Et,6:/Pr,7:/iPr,10:/tBu,11:/Ph^-30)
-** _skeletonA_end :
- end number of molecular skeleton atom
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -407,8 +469,8 @@ MCF(<30,!7`1,
>vt : vertical enviroment
?4,
- @(3^-90,3^-30,3^90)/'(!3,"{>hz}")>hz,
- @(1^-60,1`2,1^60)/'(!2,"{>vt}")>vt
+ @(3^-90,3^-30,3^90)/'(!3,"{hz}")>hz,
+ @(1^-60,1`2,1^60)/'(!2,"{vt}")>vt
\end{verbatim}
\end{minipage}
@@ -422,8 +484,8 @@ MCF(<30,!7`1,
>rl : right-left enviroment
<30,!6,
- @(3^-30,3,3^30)/'(!3,"{>lr}")>lr,
- @(5^-30,5,5^30)/'(!3,"{>rl}")>rl
+ @(3^-30,3,3^30)/'(!3,"{lr}")>lr,
+ @(5^-30,5,5^30)/'(!3,"{rl}")>rl
\end{verbatim}
\end{minipage}
@@ -436,8 +498,8 @@ MCF(<30,!7`1,
>45 : fixed angle enviroment
>'(-90,90,-90) : multi angle enviroment
- <-30,!6,@(2>45)/'(!3,"{>45}"),
- @(6>'(-90,90,-90))/'(!3,"{>(-90,90,-90)}")
+ <-30,!6,@(2>45)/'(!3,"{45}"),
+ @(6>'(-90,90,-90))/'(!3,"{(-90,90,-90)}")
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -465,6 +527,7 @@ $(3)red : change color of B3 red
<30,Ph,@(2,5)N,
2:red,5:blue,3=green
+** METAFONT ignore color command
\end{verbatim}
\end{minipage}
%%%%\MCFstructure % for Metafont
@@ -514,81 +577,6 @@ Insert user defined substructure
\vspace{5mm}\\
%-----------------------------------------------------------------------------
\begin{minipage}[t][38mm]{90mm}
-\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{5mm}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][38mm]{90mm}
-\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{5mm}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][38mm]{90mm}
-\MCFtitle{Example(3) alfa-Tocopherol}
-\begin{verbatim}
-
- <30,Ph,3=?6,
- 7:O,@(1,2,5)/Me,8:/*Me^60,6:/OH,
- 8\,|,!12,@(4,8)/*Me,12:/Me
-\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{5mm}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][38mm]{90mm}
-\MCFtitle{Example(4) Caffeine}
-\begin{verbatim}
-
- <30,?6,-4=?5,$(3,8)dl,
- @(2,6,7,9)N,@(2,6,9)/Me,
- @(1,5)//O
-\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{5mm}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][38mm]{90mm}
-\MCFtitle{Example(5) Lycorine}
-\begin{verbatim}
-
- <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
-\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{5mm}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][38mm]{90mm}
-\MCFtitle{Example(6) Gibberellin}
-\begin{verbatim}
-
- <12,?6`1.3,3=?5,9=?7,12\^160`1.6,&8,
- 4\^155~zf`1.2,O,55,//O^180`1,&2~zb,
- 5=dl,11=wf,13=wb,7:/COOH,11://Me,1:*/OH,
- 12:/*OH,2:*/Me,@(3^-60,9^60)*/H
-\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{5mm}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][38mm]{90mm}
\MCFtitle{Font size}
\begin{verbatim}
beginfont("EN:Caffeine")
@@ -815,18 +803,6 @@ MCd(1,1)(0.9,0.5)(<30,Ph,2:/OH,5:/NH2)
\vspace{5mm}\\
%-----------------------------------------------------------------------------
\begin{minipage}[t][38mm]{90mm}
-\MCFtitle{Switch Start Vector}
-\begin{verbatim}
-
- MCd(1,.6)( 0,0.5)(<30,Ph,4:/Cl,3:/F)
- sw_start_vector:=1;
- MCd(1,.6)( 1,0.5)(<30,Ph,4:/Cl,3:/F)
-\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{5mm}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][38mm]{90mm}
\MCFtitle{Switch Numbering atom}
\begin{verbatim}
numberA_start:=3; numberA_end:=8;
@@ -857,11 +833,54 @@ MCd(1,1)(0.9,0.5)(<30,Ph,2:/OH,5:/NH2)
\vspace{5mm}\\
%-----------------------------------------------------------------------------
\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Switch substituent off}
+\begin{verbatim}
+
+ MCd(1,.6)( 0,0.5)(<30,Ph,4:/Cl,3:/F)
+ sw_subst_off:=1;
+ MCd(1,.6)( 1,0.5)(<30,Ph,4:/Cl,3:/F)
+
+ ** default: sw_subst_off=0
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Switch all bond single}
+\begin{verbatim}
+
+ MCd(1,.6)( 0,0.5)(<30,Ph,4:/Cl,3:/F)
+ sw_bond_single:=1;
+ MCd(1,.6)( 1,0.5)(<30,Ph,4:/Cl,3:/F)
+
+ ** default: sw_bond_single=0
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Switch start vector}
+\begin{verbatim}
+ sw_start_vector:=1;
+
+ MCf(<30,Ph,4:/Cl,3:/F)
+
+ ** default: sw_start_vector=0
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
\MCFtitle{Switch font frame}
\begin{verbatim}
sw_font_frame:=1;
MCf(<30,Ph,4:/Cl,3:/F)
+
+ ** default: sw_font_frame=0
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -874,6 +893,8 @@ MCd(1,1)(0.9,0.5)(<30,Ph,2:/OH,5:/NH2)
MCd(1,.6)(0,0.5)(<30,Ph,4:/Cl,3:/F)
sw_mol_frame:=1;
MCd(1,.6)(1,0.5)(<30,Ph,4:/Cl,3:/F)
+
+ ** default: sw_mol_frame=0
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -886,6 +907,8 @@ MCd(1,1)(0.9,0.5)(<30,Ph,2:/OH,5:/NH2)
sw_atom_frame:=1;
MCf(<30,Ph,4:/COOH,3:/OH)
+
+ ** default: sw_atom_frame=0
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -898,6 +921,8 @@ MCd(1,1)(0.9,0.5)(<30,Ph,2:/OH,5:/NH2)
MCd(1,.8)( 0,0.5)(<30,Ph,4:/Cl,3:/F)
sw_solid:=1; ratio_bond_width:=0.08;
MCd(1,.8)( 1,0.5)(<30,Ph,4:/Cl,3:/F)
+
+ ** default: sw_solid=0
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -910,6 +935,8 @@ MCd(1,1)(0.9,0.5)(<30,Ph,2:/OH,5:/NH2)
MCd(1,.6)(0,0.5)(<30,Ph,4:/COOH,3:/NH2)
sw_expand:=1;
MCd(1,.6)(1,0.5)(<30,Ph,4:/COOH,3:/NH2)
+
+ ** default: sw_expand=0
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -948,11 +975,11 @@ MCd(1,1)(0.9,0.5)(<30,Ph,2:/OH,5:/NH2)
\begin{verbatim}
beginfont("NO:1")
sw_mol_frame:=1; % <<== Local setting
- MCd(1,.5)(0.0,0.5)(<30,Ph,@(2)N) endfont
+ MCd(1,.5)(0.0,0.5)(<30,Ph) endfont
beginfont("NO:2")
- MCd(1,.5)(0.5,0.5)(<30,Ph,@(2,4)N) endfont
+ MCd(1,.5)(0.5,0.5)(<30,Ph) endfont
beginfont("NO:3")
- MCd(1,.5)(1.0,0.5)(<30,Ph,@(2,4,6)N) endfont
+ MCd(1,.5)(1.0,0.5)(<30,Ph) endfont
\end{verbatim}
\end{minipage}
\MCFstru\MCFstru\MCFstructure%
@@ -963,11 +990,11 @@ beginfont("NO:3")
\begin{verbatim}
sw_mol_frame:=1; % <<== Global setting
beginfont("NO:1")
- MCd(1,.5)(0.0,0.5)(<30,Ph,@(2)N) endfont
+ MCd(1,.5)(0.0,0.5)(<30,Ph) endfont
beginfont("NO:2")
- MCd(1,.5)(0.5,0.5)(<30,Ph,@(2,4)N) endfont
+ MCd(1,.5)(0.5,0.5)(<30,Ph) endfont
beginfont("NO:3")
- MCd(1,.5)(1.0,0.5)(<30,Ph,@(2,4,6)N) endfont
+ MCd(1,.5)(1.0,0.5)(<30,Ph) endfont
\end{verbatim}
\end{minipage}
\MCFstru\MCFstru\MCFstructure%
@@ -1001,5 +1028,131 @@ CAS:CAS number *:default output
\end{verbatim}
\end{minipage}
\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\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{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\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{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Example(3) alfa-Tocopherol}
+\begin{verbatim}
+
+ <30,Ph,3=?6,
+ 7:O,@(1,2,5)/Me,8:/*Me^60,6:/OH,
+ 8\,|,!12,@(4,8)/*Me,12:/Me
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Example(4) Colchicine}
+\begin{verbatim}
+ <30,Ph,@(1,2,6)/OMe,|,-4=?7,
+ |,-5=?7,$(-1,-4,-6)dl,-2://O,-3:/OMe,
+ #9\,NH,!,//O,!
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Example(5) Lycorine}
+\begin{verbatim}
+
+ <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
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Example(6) Gibberellin}
+\begin{verbatim}
+ <12,?6`1.3,3=?5,9=?7,12\^160`1.6,&8,
+ 4\^155~zf`1.2,O,55,//O^180`1,&2~zb,
+ 5=dl,11=wf,13=wb,
+ 7:/COOH,11://Me,1:*/OH,12:/*OH,2:*/Me,
+ @(3^-60,9^60)*/H
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Example(7) Capsaicin}
+\begin{verbatim}
+ <30,Ph,
+ 1:/OH,6:/OMe,4\,!,NH,!,//O,
+ |,!8,-3=dr,-1:/Me
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Example(8) Quinine}
+\begin{verbatim}
+ <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
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Example(9) Atoropin}
+\begin{verbatim}
+ <-30,O,!,//O,!,!,Ph,
+ #1\~zb^-120,
+ |,?7`1.1,6*\^190`1.25,N,/Me,&3~wb,
+ #3\~wv,!,OH
+\end{verbatim}
+\end{minipage}
+\MCFstructure
+\vspace{5mm}\\
+%-----------------------------------------------------------------------------
+\begin{minipage}[t][38mm]{90mm}
+\MCFtitle{Example(10) Paclitaxel}
+\begin{verbatim}
+ ?6,5=d,3*,{,``1,36,45,45,45,45,},&#5,
+ -4=?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
+\end{verbatim}
+\end{minipage}
+\MCFstructure
%-----------------------------------------------------------------------------
\end{document}
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
index cd25913dea7..47acb726a25 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
Binary files differ
diff --git a/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf b/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
index 59907975a36..03125f9e88d 100644
--- a/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
+++ b/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 3.80 Copyright (c) 2013-2016 Akira Yamaji
+% mcf2graph ver 3.81 Copyright (c) 2013-2016 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,
@@ -43,7 +43,8 @@ picture atom_font[],chem_structure,temp_picture;
%-------------------------------------------------------------------------------------------------
sw_numberA:=sw_numberB:=sw_mol_frame:=sw_logout:=sw_solid:=sw_expand:=sw_start_vector:=0;
char_num:=str_cnt:=proc_end:=sw_font_frame:=sw_atom_frame:=sw_checklist:=sw_MOLfile:=0;
-sw_info_file:=sw_info_char:=1; sw_info_lenx:=sw_info_leny:=sw_info_weight:=sw_info_formula:=0;
+sw_info_lenx:=sw_info_leny:=sw_info_weight:=sw_info_formula:=sw_subst_off:=sw_bond_single:=0;
+sw_info_file:=sw_info_char:=1;
numberA_start:=numberB_start:=1; numberA_end:=numberB_end:=4095;
%-------------------------------------------------------------------------------------------------
if known green: f_MP:=1;
@@ -82,14 +83,13 @@ max_info_num:=12; for i:=1 upto max_info_num: info[i]:=":"; endfor
def def_com(expr n)(text tx)= nA:=n; forsuffixes list=tx:: list:=nA; nA:=nA+1; endfor enddef;
def_com(-4000)(_term,_jp_atom,_jp_atom_abs,_jp_bond,_cyc,_cyc_sB,_cyc_eB,_set_line,_chg_line,
_dl,_tmp_line,_chg_len,_get_len,_ring_len,_tmp_len,_rot_ang,_set_ang,_adj_ang,_chg_env,
- _tmp_env,_set_colorA,_set_colorB,_postA,_postB,_postC,_postD,_postE,_postF,_set_psA,
- _skeletonA_end,_skeletonB_end,_stack_reset,
+ _tmp_env,_set_colorA,_set_colorB,_postA,_postB,_postC,_postD,_postE,_postF,_set_psA,_stack_reset,
_set_clr,_set_adr,_mk_bond,_set_atom,_arg_ang,_chg_atom,_tmp_rot,_fuse,_push,_pop,_size_a);
def_com(1)(si,dl,dr,dm,tm,wf,wb,bd,zf,zb,ov,dt,no,ar,vf,vb,wv,nl);
%-------------------------------------------------------------------------------------------------
def parameter_list=
sw_checklist,sw_numberA,sw_numberB,sw_mol_frame,sw_logout,sw_solid,sw_expand,sw_MOLfile,
- sw_start_vector,sw_atom_frame,sw_font_frame,
+ sw_start_vector,sw_atom_frame,sw_font_frame,sw_subst_off,sw_bond_single,
margin_left_right,margin_top_bottom,ratio_atom_bond,ratio_thickness_bond,ratio_char_bond,
ratio_chain_ring,offset_atom,offset_atom#,max_bond_width,ratio_bondgap_bond,ratio_zebra_black,
ratio_zebragap_bond,ratio_wedge_bond,ratio_atomgap_atom,offset_wedge,offset_wedge#,
@@ -308,7 +308,7 @@ def MCd(expr RW,RH)(expr FW,FH)(text s)=
eB[0]:=1; com_str[0]:=""; lineT:=si; str_cnt:=2000; posA[0]:=posB[0]:=posB[1]:=(0,0);
if (sw_numberA>=1)or(sw_numberB>=1): ratio_atom_bond:=0.25; fi
if (sw_expand=1)or(sw_MOLfile=1): expand_set; fi
- ''(0)(s,(_term,0)); proc_bond_atom(1); cntA_skeleton:=cntA; cntA_skeleton:=cntB;
+ ''(0)(s,(_term,0)); proc_bond_atom(1); cntA_skeleton:=cntA; cntB_skeleton:=cntB;
if cntP>0: ps_get(1); fi
font_use_check;
if sw_solid=1: size_setup; proc_skeleton; scaling;
@@ -317,9 +317,9 @@ def MCd(expr RW,RH)(expr FW,FH)(text s)=
ratio_bond_width:=max_bond_width; size_setup; proc_skeleton; scaling;
else: for i=1 upto 4: proc_skeleton; scaling; resize(RW,RH); size_setup; endfor fi fi
font_setup;
+ if sw_subst_off=1: cntA:=cntA_skeleton; cntB:=cntB_skeleton; fi
for i=1 upto cntB: draw_bond(i,sB[i],eB[i],angB[i],lineB[i]); endfor
for i=1 upto cntA:
- if numberA_end=_skeletonA_end: numberA_end:=cntA_skeleton; fi
if (sw_numberA>=1)and(i>=numberA_start)and(i<=numberA_end):
if sw_numberA=2: nA:=i-numberA_start+1;
elseif sw_numberA=3: if numberA_end<cntA: nA:=numberA_end-i+1; else: nA:=cntA-i+1; fi
@@ -519,7 +519,7 @@ if (nC>0)and(LN<>0):
else: clipping(strA[BP],strA[EP],posA[BP],posA[EP],nC); fi
pickup pencircle scaled bond_pen_wd;
if known colorB[n]: nB:=colorB[n]; fi
- if LN=si:draw pA Cp(nB);
+ if (LN=si)or(sw_bond_single=1): draw pA Cp(nB);
elseif LN=dl:draw pA Cp(nB); draw sfB(pC,gap,ap) Cp(nB);
elseif LN=dr:draw pA Cp(nB); draw sfB(pC,gap,am) Cp(nB);
elseif LN=dm:draw sfB(pB,gap/1.75,ap) Cp(nB); draw sfB(pB,gap/1.75,am) Cp(nB);
@@ -767,7 +767,8 @@ enddef;
def checklist_out=
nA:=0; calc_weight_str:="";
message "% Molecular name = "& mol_name;
- message "% There were "&fdr(3)(warning_cnt)&" warnings / Expanded command count= "&decimal(cntMC[0]);
+ message "% There were "&fdr(3)(warning_cnt)&
+ " warnings / Expanded command count= "&decimal(cntMC[0]);
message "% width * height = " & fdr(8)(max_x-min_x)&" * "&fdr(8)(max_y-min_y);
message "% Shift width * height = "& fdr(8)(min_x)&" * "&fdr(8)(min_y);
message "% Bond length = "&fdr(3)(BL)&" Atom size = "&fdr(3)(AL);