texlive[45206] Master/texmf-dist: mcf2graph (3sep17)

commits+karl at tug.org commits+karl at tug.org
Mon Sep 4 01:00:54 CEST 2017


Revision: 45206
          http://tug.org/svn/texlive?view=revision&revision=45206
Author:   karl
Date:     2017-09-04 01:00:53 +0200 (Mon, 04 Sep 2017)
Log Message:
-----------
mcf2graph (3sep17)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/README
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-064.eps
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex
    trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG	2017-09-03 00:21:23 UTC (rev 45205)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG	2017-09-03 23:00:53 UTC (rev 45206)
@@ -1,6 +1,10 @@
 *******************************************************************************
- Changelog of mcf2graph software package          by Akira Yamaji 2017-08-13
+ Changelog of mcf2graph software package          by Akira Yamaji 2017-09-03
 *******************************************************************************
+[ver. 4.27  / 2017-09-03]
+  -improve function ext(),EXT()
+  -update MCF syntax manual
+
 [ver. 4.26  / 2017-08-13]
   -improve label emulation
   -update MCF syntax manual

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/README
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/README	2017-09-03 00:21:23 UTC (rev 45205)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/README	2017-09-03 23:00:53 UTC (rev 45206)
@@ -1,7 +1,7 @@
 ********************************************************************************
  mcf2graph  : Convert Molecular Coding Format to graphics with METAFONT/METAPOST
  Author     : Akira Yamaji
- version    : 4.26 2017-08-13
+ version    : 4.27 2017-09-03
  E-mail     : mcf2graph at gmail.com
  Located at : http://www.ctan.org/pkg/mcf2graph
 ********************************************************************************

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf	2017-09-03 00:21:23 UTC (rev 45205)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf	2017-09-03 23:00:53 UTC (rev 45206)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % Molecular Coding Format for mcf_example.tex   by Akira Yamaji  2017.08.13
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph.mf;   %%% it must be version 4.26 or later
+input mcf2graph.mf;   %%% it must be version 4.27 or later
 %-------------------------------------------------------------------------
 font_wd:=33mm;
 font_ht:=24mm;
@@ -391,15 +391,3 @@
 endfont
 %***************************************************************************
 bye
-**************************************************************************
-beginfont("EN:Atoropin","MW:289.375")
-  MCf(<-30,O,!,//O,!,!,Ph,
-     #1:\~zb^-120,|,?7`1.1,6:*\^190`1.25,N,/_,&3~wb,#3:/!OH~wv)
-endfont
-%***************************************************************************
-bye
-****
-bye
-
-bye
-

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-064.eps
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-064.eps	2017-09-03 00:21:23 UTC (rev 45205)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-064.eps	2017-09-03 23:00:53 UTC (rev 45206)
@@ -2,7 +2,7 @@
 %%BoundingBox: -1 -1 212 60 
 %%HiResBoundingBox: -0.09962 -0.09962 211.90288 59.64348 
 %%Creator: MetaPost 2.000
-%%CreationDate: 2017.08.12:2126
+%%CreationDate: 2017.08.27:1449
 %%Pages: 1
 %%DocumentResources: procset mpost-minimal
 %%+ font NJFVSO-NimbusSanL-Regu ICXWUR-CMR8

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf	2017-09-03 00:21:23 UTC (rev 45205)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf	2017-09-03 23:00:53 UTC (rev 45206)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format file for mcf_manual.tex  by Akira.Yamaji 2017.08.13
+% Molecular Coding Format file for mcf_manual.tex  by Akira.Yamaji 2017.09.03
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph.mf;   %% it must be version 4.26 or later
+input mcf2graph.mf;   %% it must be version 4.27 or later
 %------------------------------------------------------------------------
 sw_auxout:=0;
 sw_mol_frame:=0;
@@ -523,11 +523,11 @@
   atomfontsize:=8bp;
   margin_left_right:=3mm;
   MCa(0,0.5)(<30,Ph,{1,5}:N,3:/COOH,4:/NO2,1:red,5:blue,3=green)
-  ext(label.urt("(draw)",p0+(0,ht));)
+  ext(label.urt("(draw)",p0+(0,h));)
   atomfont:="cmr8";
   atomfontsize:=8bp;
   MCa(1,0.5)(<30,Ph,{1,5}:N,3:/COOH,4:/NO2)
-  ext(label.urt("(cmr8)",p0+(0,ht));)
+  ext(label.urt("(cmr8)",p0+(0,h));)
 endfont
 %***********************************************************************
 beginfont("EN:Make brock")
@@ -956,12 +956,12 @@
   MCa(0.1,0.5)(<-210,60`1,60`1,60`1,{1,3}=dl,1:/R1,4:/R2^-60)
   ext(
    defaultscale:=0.6;
-   label.bot("Diene",p0+(0.5wd,0));
+   label.bot("Diene",p0+(0.5w,0));
   )
   MCa(0.4,0.5)(<-30,-60`1,1=dl,1:/R3,2:/R4^60)
   ext(
    defaultscale:=0.6;
-   label.bot("Dienophile",p0+(0.5wd,0));
+   label.bot("Dienophile",p0+(0.5w,0));
   )
   MCa(0.9,0.5)(<30,?6,6=dl,2:/R2,3:/R4,4:/R3,5:/R1)
   EXT(
@@ -1114,24 +1114,4 @@
 endfont
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 bye
-%%%%%%%%%%%%%%%%%%%%%%%
-bye
-ye
-%%%%%%%%%%
-bye
-%%%%
-bye
-ye
-%%%%%%%%%%
-bye
-%%%%%%%%%%%%%%%%%%%%%%%
-bye
-ye
-%%%%%%%%%%
-bye
-%%%%
-bye
-ye
-
-ye
-
+e

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex	2017-09-03 00:21:23 UTC (rev 45205)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex	2017-09-03 23:00:53 UTC (rev 45206)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%  Molecular Coding Format manual           by  Akira Yamaji 2017.07.23
+%  Molecular Coding Format manual           by  Akira Yamaji 2017.09.03
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \documentclass[a4paper]{article}
 %%%%\documentclass[a4paper,twoside]{article}
@@ -547,11 +547,11 @@
   defaultsize:=8bp;
   MCa(0,0.5)(<30,Ph,{1,5}:N,3:/COOH,4:/NO2,
                1:red,5:blue,3=green)
-  ext(label.urt("(draw)",p0+(0,ht));)
+  ext(label.urt("(draw)",p0+(0,h));)
   atomfont:="cmr8";   % default:"draw"
   atomfontsize:=8bp;  % default:8bp
   MCa(1,0.5)(<30,Ph,{1,5}:N,3:/COOH,4:/NO2)
-  ext(label.urt("(cmr8)",p0+(0,ht));)
+  ext(label.urt("(cmr8)",p0+(0,h));)
 \end{verbatim}
 \hspace{5mm}\includegraphics{mcf_man_soc-064.eps}%  for dvipdfmx
 %%%%\MCFstructure   % for Metafont
@@ -1036,8 +1036,8 @@
  
  w:  font width
  h:  font height
- wd: font width-margin_left_right*2
- ht: font height-margin_top_bottom*2
+ w0: font width-margin_left_right*2
+ h0: font height-margin_top_bottom*2
  aw: atom font size
  em: label font size
  p0: x=margin_left_right
@@ -1044,6 +1044,8 @@
      y=margin_top_bottom
  n:  molecular number
  p[m]: molecular origin position
+ w[m]: molecular width
+ h[m]: molecular height
 
 %----------------------------------------
 beginfont()
@@ -1057,7 +1059,7 @@
    1:/R1,4:/R2^-60)
  ext(
    defaultscale:=0.6;
-   label.bot("Diene",p0+(0.5wd,0));
+   label.bot("Diene",p0+(0.5w,0));
  )
  %---------------------------------------
  MCd(1,1)(0.4,0.5)
@@ -1064,7 +1066,7 @@
   (<-30,-60`1,1=dl,1:/R3,2:/R4^60)
  ext(
    defaultscale:=0.6;
-   label.bot("Dienophile",p0+(0.5wd,0));
+   label.bot("Dienophile",p0+(0.5w,0));
  )
  %---------------------------------------
  MCd(1,1)(0.9,0.5)
@@ -1087,8 +1089,8 @@
 \begin{verbatim}
 (Add extra graphic to molecule)
 
- wd:      molecular width
- ht:      molecular height
+ w:       molecular width
+ h:       molecular height
  aw: atom font size
  em: label font size
  p0:      origin of molecular structure

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex	2017-09-03 00:21:23 UTC (rev 45205)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex	2017-09-03 23:00:53 UTC (rev 45206)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of  MCF typest with LuaLaTeX(luamplib)     by A.Yamaji    2017.08.13
+% Example of  MCF typest with LuaLaTeX(luamplib)     by A.Yamaji    2017.09.03
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%% mcf2graph.mf it must be version 4.26 or later
+%%% mcf2graph.mf it must be version 4.27 or later
 \documentclass{article}
 %------------------------------------------------------------------------------
 \usepackage{luamplib}%
@@ -41,7 +41,7 @@
 \begin{mplibcode}
   font_wd:=80mm; font_ht:=40mm;
   beginfont("NO:1","EN:Chlorophyll a","MW:893.49")
-    MCa(1,0.5)(<54,
+    MCd(.9,.9)(0,0.5)(<54,
      |<,``1,?5,{2,5}=dl,4:N,3:\,54~dl,|,?5,{2,4}=dl,5:N,
      -2:\,54~dl,|,?5,2=dl,5:N,-2:\~dl,54,|,?5,5=dl,5:N,-2:\~dl,&#5,
      -1:@,24,/*COO!^15,72,//O,&#1,>|,
@@ -52,8 +52,8 @@
     EXT(
       label.lrt("("&inf_EN&")",(0,h));
       label.lrt("FM(C): "&cal_FM,(0,h-4mm));
-      label.lrt("FM(C): "&cal_MW,(0,h-8mm));
-      label.lrt("FM(D): "&inf_MW,(0,h-12mm));
+      label.lrt("MW(C): "&cal_MW,(0,h-8mm));
+      label.lrt("MW(D): "&inf_MW,(0,h-12mm));
     )
   endfont
 \end{mplibcode}
@@ -71,9 +71,36 @@
 
 \end{verbatim}
 \end{minipage}
-\vspace{0mm}\\
+\vspace{7mm}\\
 %----------------------------------------------------------------------------
 \begin{mplibcode}
+font_wd:=80mm; font_ht:=20mm;
+beginfont("EN:beta-Carotene","MW:536.888")
+  MCd(.65,1)(.9,.5)(
+     <30,?6,3=dl,{3,5^35,5^-35}:/_,
+     4:\,|,!18,{1,3,5,7,9,11,13,15,17}=dr,{3,7,12,16}:/_,
+     |,?6,6=dl,{6,2^35,2^-35}:/_
+  )
+  EXT(
+    label.lrt("("&inf_EN&")",(0,h));
+    label.lrt("FM(C): "&cal_FM,(0,h-4mm));
+    label.lrt("MW(C): "&cal_MW,(0,h-8mm));
+    label.lrt("MW(D): "&inf_MW,(0,h-12mm));
+  )
+endfont
+\end{mplibcode}
+\begin{minipage}[b]{85mm}
+\begin{verbatim}
+<30,?6,3=dl,{3,5^35,5^-35}:/_,
+4:\,|,!18,
+{1,3,5,7,9,11,13,15,17}=dr,
+{3,7,12,16}:/_,
+|,?6,6=dl,{6,2^35,2^-35}:/_
+\end{verbatim}
+\end{minipage}
+\vspace{7mm}\\
+%----------------------------------------------------------------------------
+\begin{mplibcode}
   font_wd:=80mm; font_ht:=30mm;
   beginfont("NO:2","EN:Limonin","MW:470.51")
   MCa(.6,0.5)(<30,
@@ -85,8 +112,8 @@
     EXT(
       label.lrt("("&inf_EN&")",(0,h));
       label.lrt("FM(C): "&cal_FM,(0,h-4mm));
-      label.lrt("FM(C): "&cal_MW,(0,h-8mm));
-      label.lrt("FM(D): "&inf_MW,(0,h-12mm));
+      label.lrt("MW(C): "&cal_MW,(0,h-8mm));
+      label.lrt("MW(D): "&inf_MW,(0,h-12mm));
     )
   endfont
 \end{mplibcode}
@@ -101,7 +128,7 @@
 
 \end{verbatim}
 \end{minipage}
-\vspace{5mm}\\%
+\vspace{7mm}\\%
 %----------------------------------------------------------------------------
 \begin{mplibcode}
 font_wd:=80mm; font_ht:=20mm;
@@ -113,8 +140,8 @@
     EXT(
       label.lrt("("&inf_EN&")",(0,h));
       label.lrt("FM(C): "&cal_FM,(0,h-4mm));
-      label.lrt("FM(C): "&cal_MW,(0,h-8mm));
-      label.lrt("FM(D): "&inf_MW,(0,h-12mm));
+      label.lrt("MW(C): "&cal_MW,(0,h-8mm));
+      label.lrt("MW(D): "&inf_MW,(0,h-12mm));
     )
 endfont;
 \end{mplibcode}
@@ -127,9 +154,37 @@
 14:*/_,{1^60,4^60}:*/H)
 \end{verbatim}
 \end{minipage}
-\vspace{6mm}\\
+\vspace{7mm}\\
 %----------------------------------------------------------------------------
 \begin{mplibcode}
+font_wd:=80mm; font_ht:=25mm;
+beginfont("EN:Morphine","MW:285.343")
+  MCf(
+   <30,Ph,2=?6,-4=?6,(1,12)=?5[2],-1:O,-1=zb,
+    7:@,60~wf`0.75,70~si_`1.3,45,N,/_,&9~wb,
+    15=d,6:/OH,8^180:*/H,12:/*OH
+  )
+  EXT(
+    label.lrt("("&inf_EN&")",(0,h));
+    label.lrt("FM(C): "&cal_FM,(0,h-4mm));
+    label.lrt("MW(C): "&cal_MW,(0,h-8mm));
+    label.lrt("MW(D): "&inf_MW,(0,h-12mm));
+  )
+endfont
+\end{mplibcode}
+\begin{minipage}[b]{85mm}
+\begin{verbatim}
+<30,Ph,2=?6,-4=?6,(1,12)=?5[2],
+-1:O,-1=zb,
+7:@,60~wf`0.75,70~si_`1.3,
+45,N,/_,&9~wb,
+15=dl,
+6:/OH,8^180:*/H,12:/*OH
+\end{verbatim}
+\end{minipage}
+\vspace{7mm}\\
+%----------------------------------------------------------------------------
+\begin{mplibcode}
 font_wd:=80mm; font_ht:=35mm;
 beginfont("NO:5","EN:Erythromycin","MW:733.93");
   MCa(.6,0.5)(
@@ -142,8 +197,8 @@
     EXT(
       label.lrt("("&inf_EN&")",(0,h));
       label.lrt("FM(C): "&cal_FM,(0,h-4mm));
-      label.lrt("FM(C): "&cal_MW,(0,h-8mm));
-      label.lrt("FM(D): "&inf_MW,(0,h-12mm));
+      label.lrt("MW(C): "&cal_MW,(0,h-8mm));
+      label.lrt("MW(D): "&inf_MW,(0,h-12mm));
     )
   endfont;
 \end{mplibcode}
@@ -160,9 +215,39 @@
 5:/_,2:/OH,3:/NMeMe
 \end{verbatim}
 \end{minipage}
-\vspace{5mm}\\
+\vspace{7mm}\\
 %----------------------------------------------------------------------------
 \begin{mplibcode}
+font_wd:=80mm; font_ht:=35mm;
+beginfont("EN:Paclitaxel","MW:853.918")
+  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}:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O,
+    #1:\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph,
+    #7:\*,O,-45,//O,60,Ph,#11:*\,O,-60,//O,60,#12:\*^-15,O,60,//O,-60
+  )
+  EXT(
+    label.lrt("("&inf_EN&")",(0,h));
+    label.lrt("FM(C): "&cal_FM,(0,h-4mm));
+    label.lrt("MW(C): "&cal_MW,(0,h-8mm));
+    label.lrt("MW(D): "&inf_MW,(0,h-12mm));
+  )
+endfont
+\end{mplibcode}
+\begin{minipage}[b]{85mm}
+\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}:/_,{3^-60,15}:*/OH,
+8:/*H^-60,9:*/_^60,10://O,
+#1:\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph,
+#7:\*,O,-45,//O,60,Ph,#11:*\,O,-60,//O,60,
+#12:\*^-15,O,60,//O,-60)
+\end{verbatim}
+\end{minipage}
+\vspace{7mm}\\
+%----------------------------------------------------------------------------
+\noindent
+\begin{mplibcode}
 font_wd:=80mm; font_ht:=65mm;
 beginfont("NO:6","EN:Vancomycin","MW:1449.25");
   MCa(0.5,0)(
@@ -181,8 +266,8 @@
     EXT(
       label.lrt("("&inf_EN&")",(0,h));
       label.lrt("FM(C): "&cal_FM,(0,h-4mm));
-      label.lrt("FM(C): "&cal_MW,(0,h-8mm));
-      label.lrt("FM(D): "&inf_MW,(0,h-12mm));
+      label.lrt("MW(C): "&cal_MW,(0,h-8mm));
+      label.lrt("MW(D): "&inf_MW,(0,h-12mm));
     )
 endfont;
 \end{mplibcode}
@@ -205,15 +290,14 @@
 {3^35,5}:/_,3^-35:/NH2,4:/OH
 \end{verbatim}
 \end{minipage}
-\vspace{0mm}\\%
+\vspace{10mm}\\%
 %----------------------------------------------------------------------------
 \begin{mplibcode}
-  font_wd:=170mm; font_ht:=80mm;
+  font_wd:=170mm; font_ht:=70mm;
   beginfont("NO:7","EN:Maitotoxin","MW:3425.86")
   MCf(
-    <55.8,?6,-4=?7 ,{-4,-3,-3,-3}=?6,-3:\,!3,?6,{-4,-3,-3,-3}=?6,
-    -3:\,?6,-3=?6,-3:\,!3,60,<-30,?6,-3=?6,
-    -3:@,30,<30,?6,{-3,-3}=?6,-3=?7,{-4,-3,-3}=?6,
+    <55.8,?6,-4=?7 ,{-4,-3,-3,-3}=?6,-3:\,!3,?6,{-4,-3,-3,-3}=?6,-3:\,?6,-3=?6,
+    -3:\,!3,60,<-30,?6,-3=?6,-3:@,30,<30,?6,{-3,-3}=?6,-3=?7,{-4,-3,-3}=?6,
     -2:\,?6,-3=?6,-3=?7,{-3,-3}=?6,-3=?8,-3=dl,{-5,-3,-3,-3}=?6,
     {5,7,15,16,23,24,32,40,41,48,49,58,59,72,73,82,83,90,91,99,
       100,107,113,114,122,123,130,131,140,141,148,149}:O,
@@ -232,14 +316,14 @@
     EXT(
       label.lrt("("&inf_EN&")",(0,.8h));
       label.lrt("FM(C): "&cal_FM,(0,.8h-4mm));
-      label.lrt("FM(C): "&cal_MW,(0,.8h-8mm));
-      label.lrt("FM(D): "&inf_MW,(0,.8h-12mm));
+      label.lrt("MW(C): "&cal_MW,(0,.8h-8mm));
+      label.lrt("MW(D): "&inf_MW,(0,.8h-12mm));
     )
   endfont
 \end{mplibcode}
 \begin{verbatim}
-   <55.8,?6,-4=?7 ,{-4,-3,-3,-3}=?6,-3:\,!3,?6,{-4,-3,-3,-3}=?6,
-   -3:\,?6,-3=?6,-3:\,!3,60,<-30,?6,-3=?6,
+   <55.8,?6,-4=?7,{-4,-3,-3,-3}=?6,
+   -3:\,!3,?6,{-4,-3,-3,-3}=?6,-3:\,?6,-3=?6,-3:\,!3,60,<-30,?6,-3=?6,
    -3:@,30,<30,?6,{-3,-3}=?6,-3=?7,{-4,-3,-3}=?6,
    -2:\,?6,-3=?6,-3=?7,{-3,-3}=?6,-3=?8,-3=dl,{-5,-3,-3,-3}=?6,
    {5,7,15,16,23,24,32,40,41,48,49,58,59,72,73,82,83,90,91,99,
@@ -256,81 +340,111 @@
 \end{verbatim}
 \vspace{8mm}%
 %----------------------------------------------------------------------------
-{\LARGE\bf TCA-cycle}\\
+\newpage
 \begin{mplibcode}
-  beginfont("EN:TCA cycle")
-  save a;
-  %------------------------------------------------------------------------
-  font_wd:=100mm;
-  font_ht:=100mm;
-  max_bond_length:=5mm;
-  %------------------------------------------------------------------------
-  sw_label_emu:=1;
-  defaultscale:=0.75;
-  %------------------------------------------------------------------------
-  a:=12mm;
-  Om:='("{O^-^}");
-  MCa(0.5,1)(<30,Om,!0,//O,!,//O,!2,//O,!,Om)
-  MCa(1,  1)(<30,Om,!0,//O,!,!,!,!,//O,!,Om,-4`1:\,//O,!,Om,4:/OH^-165)
-  MCa(1,.66)(<30,Om,!0,//O,!,!,!~dr,!,//O,!,Om,-4`1:\,//O,!,Om)
-  MCa(1,.35)(<30,Om,!0,//O,!,!,!,!,//O,!,Om,-4:\`1,//O,!,Om)
-  MCa(1,  0)(<30,Om,!0,//O,!,!,!,//O,!,//O,!,Om,-4:\`1,//O,!,Om)
-  MCa(0.5,0)(<30,Om,!0,//O,!,!,!,//O,!,//O,!,Om)
-  MCa(0,  0)(<30,Om,!0,//O,!,!,!,//O,!,"{S-CoA}")
-  MCa(0,0.4)(<30,Om,!0,//O,!,!,!,//O,!,Om)
-  MCa(0,0.7)(<30,Om,!0,//O,!,!~dr,!,//O,!,Om)
-  MCa(0,  1)(<30,Om,!0,//O,!,!,!,//O,!,Om,3:/OH)
-  %------------------------------------------------------------------------
-  EXT(
-    p10:=(.58w,.9h);
-    drawarrow p10..p10+(a,0);
-    drawarrow p10+(.2a,-.8a){dir90}..{dir 0}(p10+(.5a,0)){dir0}..{dir-90}p10+(.8a,-.5a);
-    label.bot("Acetyl-CoA",p10+(.2a,-.8a));
-    label.bot("CoA-SH",p10+(.8a,-.5a)+(em,0));
-    p10:=(.9w,.83h);
-    drawdblarrow p10..p10+(0,-a);
-    draw p10+(0,-0.5a){dir -90}..{dir 180}p10+(-0.5a,-.8a);
-    label.lft("H_2_O",p10+(-0.5a,-.8a));
-    p10:=(.9w,.56h);
-    drawdblarrow p10..p10+(0,-a);
-    draw p10+(-0.5a,-0.2a){dir 0}..{dir -90}p10+(0,-.5a);
-    label.lft("H_2_O",p10+(-0.5a,-.2a));
-    p10:=(.9w,.30h);
-    drawdblarrow p10..p10+(0,-a);
-    drawarrow p10+(-.5a,-.2a){dir 0}..{dir-90}p10+(0,-.5a){dir-90}..{dir180}p10+(-.5a,-.8a);
-    label.lft("NAD^+",p10+(-0.5a,-.2a));
-    label.lft("NADH2^+",p10+(-0.5a,-.8a));
-    p10:=(.73w,0.1h);
-    drawarrow p10..p10+(-a,0);
-    drawarrow p10+(-0.05w,0){dir -180}..{dir 90}p10+(-0.08w,0.05h);
-    label.top("CO_2_",p10+(-0.8a,0.53a));
-    p10:=(.40w,.1h);
-    drawarrow  p10..p10+(-a,0);
-    drawarrow p10+(-.2a,0.8a){dir -90}..p10+(-0.5a,0){dir -180}..
-                 {dir 90}p10+(-0.8a,0.5a);
-    label.top("NAD^+^,CoA-SH",p10+(em,0.8a));
-    label.top("NADH2^+^,CO_2_",p10+(-0.8a-em,0.5a));
-    p10:=(.10w,.22h);
-    drawdblarrow p10..p10+(0,a);
-    drawdblarrow p10+(.5a,.2a){dir-180}..{dir90}p10+(0,.5a){dir90}..{dir0}p10+(.5a,.8a);
-    label.rt("GDP,Pi",p10+(0.5a,0.2a));
-    label.rt("GTP,CoA-SH",p10+(0.5a,0.8a));
-    p10:=(.10w,.5h);
-    drawdblarrow p10..p10+(0,a);
-    drawdblarrow p10+(.5a,.2a){dir-180}..{dir 90}p10+(0,.5a){dir90}..{dir0}p10+(.5a,.8a);
-    label.rt("FAD",p10+(0.5a,0.2a));
-    label.rt("FADH2",p10+(0.5a,0.8a));
-    p10:=(.10w,.74h);
-    drawdblarrow p10..p10+(0,a);
-    draw p10+(0.05w,0.2a){dir -180}..{dir 90}p10+(0,.5a);
-    label.rt("H_2_O",p10+(0.5a,0.2a));
-    p10:=(.25w,.9h);
-    drawdblarrow p10..p10+(a,0);
-    drawdblarrow p10+(.2a,-.5a){dir90}..{dir0}p10+(.5a,0){dir0}..{dir-90}p10+(.8a,-.8a);
-    label.bot("NAD^+",p10+(.2a,-.5a));
-    label.bot("NADH2^+",p10+(.8a,-.8a));
-  )
-  endfont
+beginfont("EN:TCA cycle")
+font_wd:=160mm;
+font_ht:=75mm;
+max_bond_length:=5mm;
+%------------------------------------------------------------------------
+Om:='("{O^-^}");
+MCa(0.33,   1)(<30,Om,!0,//O,!,//O,!2,//O,!,Om)
+MCa(0.66,   1)(<30,Om,!0,//O,!4,//O,!,Om,-4`1:\,//O,!,Om,4:/OH^-165)
+MCa(1,      1)(<30,Om,!0,//O,!2,!~dr,!,//O,!,Om,-4`1:\,//O,!,Om)
+MCa(1,   0.55)(<30,Om,!0,//O,!4,//O,!,Om,-4:\`1,//O,!,Om)
+MCa(1,   0.05)(<30,Om,!0,//O,!3,//O,!,//O,!,Om,-4:\`1,//O,!,Om)
+MCa(0.66,0.05)(<30,Om,!0,//O,!3,//O,!,//O,!,Om)
+MCa(0.33,0.05)(<30,Om,!0,//O,!3,//O,!,"{S-CoA}")
+MCa(0,   0.05)(<30,Om,!0,//O,!3,//O,!,Om)
+MCa(0,   0.55)(<30,Om,!0,//O,!,!~dr,!,//O,!,Om)
+MCa(0,      1)(<30,Om,!0,//O,!3,//O,!,Om,3:/OH)
+%-------------------------------------------------------------------------
+EXT(
+defaultfont:="uhvr8r";
+defaultscale:=0.75;
+ext_setup;
+def sel_dir(expr rot)=
+  save tx; nA:=rot; if nA>=360: nA:=nA-360; fi
+  if     (nA<30)or(nA>330):   def tx=top enddef; elseif (nA>=30)and(nA<=150):  def tx=lft enddef;
+  elseif (nA>150)and(nA<210): def tx=bot enddef; elseif (nA>=210)and(nA<=330): def tx=rt enddef; fi
+enddef;
+def r_arrow(expr a)(expr r)(expr p)(expr sa,la)(expr sb,lb)(expr sc,lc)(expr sd,ld)=
+  drawarrow ((0,0)..(a,0)) rotated r shifted p;
+  if sa<>"": draw ((0.5a,0){dir 180}..{dir 90}(0,.5a*la)) rotated r shifted p;
+             sel_dir(r); label.tx(sa,p+((0,0.5a*la) rotated r)); fi
+  if sb<>"": draw ((0.5a,0){dir 0}..{dir 90}(a,.5a*lb)) rotated r shifted p;
+             sel_dir(r); label.tx(sb,p+((a,0.5a*lb) rotated r)); fi
+  if sc<>"": draw ((0.5a,0){dir 180}..{dir -90}(0,-.5a*lc)) rotated r shifted p;
+             sel_dir(r+180); label.tx(sc,p+((0,-0.5a*lc) rotated r)); fi
+  if sd<>"": draw ((0.5a,0){dir 0}..{dir -90}(a,-.5a*ld)) rotated r shifted p;
+             sel_dir(r+180); label.tx(sd,p+((a,-0.5a*ld) rotated r)); fi
+enddef;
+%------------------------------------------------------------------------
+save dx; pair dx; dx:=(12mm,0);
+label.bot("Oxaloacetate",p1+dx);   label.bot("Citrate",p2+dx);
+label.bot("cis-Aconitate",p3+dx);  label.bot("Isocitrate",p4+dx);
+label.bot("Oxalosuccinate",p5+dx); label.bot("alfa-Ketoglutarate",p6+dx);
+label.bot("Succinyl-CoA",p7+dx);   label.bot("Succinate",p8+dx);
+label.bot("Fumarate",p9+dx);       label.bot("L-Malate",p10+dx);
+sw_label_emu:=1;
+ext_setup;
+r_arrow(10mm)(  0)(p1+(1.1w1,.3h1))("",0)("",0)("Acetyl-CoA",1.5)(" CoA-SH",1);
+r_arrow(10mm)(  0)(p2+(1.1w2,.4h2))("",0)("",0)("",0)("H_2_O",1);
+r_arrow( 8mm)(270)(p3+(.5w3,-.4h3))("",0)("",0)("H_2_O",1)("",0);
+r_arrow( 8mm)(270)(p4+(.5w4,-.4h4))("",0)("",0)("NAD^+",1)("NADH2^+",1);
+r_arrow(10mm)(180)(p5+(-.1w5,.4h5))("",0)("",0)("",0)("CO_2_",1);
+r_arrow(10mm)(180)(p6+(-.1w6,.5h6))("",0)("",0)("NAD^+^,CoA-SH",1.7)("NADH2^+^,CO_2",1);
+r_arrow(10mm)(180)(p7+(-.1w7,.5h7))("",0)("",0)("GDP,Pi",1.7)("GTP,CoA-SH",1);
+r_arrow( 8mm)( 90)(p8+(.4w8,1.2h8))("",0)("",0)("FAD",1)("FADH2",1);
+r_arrow( 8mm)( 90)(p9+(.4w9,1.2h9))("",0)("",0)("H_2_O",1)("",0);
+r_arrow(10mm)(  0)(p10+(1.1w10,.3h10))("",0)("",0)("NAD^+",1)("NADH2^+",1.5);
+defaultscale:=1.5;
+label("TCA-cycle",(0.5w,0.5h));
+)
+endfont
 \end{mplibcode}
+\begin{verbatim}
+beginfont("EN:TCA cycle")
+font_wd:=160mm;
+font_ht:=75mm;
+max_bond_length:=5mm;
+Om:='("{O^-^}");
+MCa(0.33,   1)(<30,Om,!0,//O,!,//O,!2,//O,!,Om)
+MCa(0.66,   1)(<30,Om,!0,//O,!4,//O,!,Om,-4`1:\,//O,!,Om,4:/OH^-165)
+MCa(1,      1)(<30,Om,!0,//O,!2,!~dr,!,//O,!,Om,-4`1:\,//O,!,Om)
+MCa(1,   0.55)(<30,Om,!0,//O,!4,//O,!,Om,-4:\`1,//O,!,Om)
+MCa(1,   0.05)(<30,Om,!0,//O,!3,//O,!,//O,!,Om,-4:\`1,//O,!,Om)
+MCa(0.66,0.05)(<30,Om,!0,//O,!3,//O,!,//O,!,Om)
+MCa(0.33,0.05)(<30,Om,!0,//O,!3,//O,!,"{S-CoA}")
+MCa(0,   0.05)(<30,Om,!0,//O,!3,//O,!,Om)
+MCa(0,   0.55)(<30,Om,!0,//O,!,!~dr,!,//O,!,Om)
+MCa(0,      1)(<30,Om,!0,//O,!3,//O,!,Om,3:/OH)
+EXT(
+defaultfont:="uhvr8r";
+defaultscale:=0.75;
+ext_setup;
+save dx; pair dx; dx:=(12mm,0);
+label.bot("Oxaloacetate",p1+dx);   label.bot("Citrate",p2+dx);
+label.bot("cis-Aconitate",p3+dx);  label.bot("Isocitrate",p4+dx);
+label.bot("Oxalosuccinate",p5+dx); label.bot("alfa-Ketoglutarate",p6+dx);
+label.bot("Succinyl-CoA",p7+dx);   label.bot("Succinate",p8+dx);
+label.bot("Fumarate",p9+dx);       label.bot("L-Malate",p10+dx);
+sw_label_emu:=1;
+ext_setup;
+r_arrow(10mm)(  0)(p1+(1.1w1,.3h1))("",0)("",0)("Acetyl-CoA",1.5)(" CoA-SH",1);
+r_arrow(10mm)(  0)(p2+(1.1w2,.4h2))("",0)("",0)("",0)("H_2_O",1);
+r_arrow( 8mm)(270)(p3+(.5w3,-.4h3))("",0)("",0)("H_2_O",1)("",0);
+r_arrow( 8mm)(270)(p4+(.5w4,-.4h4))("",0)("",0)("NAD^+",1)("NADH2^+",1);
+r_arrow(10mm)(180)(p5+(-.1w5,.4h5))("",0)("",0)("",0)("CO_2_",1);
+r_arrow(10mm)(180)(p6+(-.1w6,.5h6))("",0)("",0)("NAD^+^,CoA-SH",1.7)("NADH2^+^,CO_2",1);
+r_arrow(10mm)(180)(p7+(-.1w7,.5h7))("",0)("",0)("GDP,Pi",1.7)("GTP,CoA-SH",1);
+r_arrow( 8mm)( 90)(p8+(.4w8,1.2h8))("",0)("",0)("FAD",1)("FADH2",1);
+r_arrow( 8mm)( 90)(p9+(.4w9,1.2h9))("",0)("",0)("H_2_O",1)("",0);
+r_arrow(10mm)(  0)(p10+(1.1w10,.3h10))("",0)("",0)("NAD^+",1)("NADH2^+",1.5);
+defaultscale:=1.5;
+label("TCA-cycle",(0.5w,0.5h));
+)
+endfont
+\end{verbatim}
 %----------------------------------------------------------------------------
 \end{document}

Modified: trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
===================================================================
--- trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf	2017-09-03 00:21:23 UTC (rev 45205)
+++ trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf	2017-09-03 23:00:53 UTC (rev 45206)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 4.26     Copyright (c) 2013-2017   Akira Yamaji
+% mcf2graph ver 4.27     Copyright (c) 2013-2017   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,
@@ -31,7 +31,7 @@
 % Set to use plain.mp label,arrow : mpost -s ahlength=3 FILENAME
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 tracingstats:=1;
-message " This is mcf2graph ver 4.2  2017.8";
+message " This is mcf2graph ver 4.2  2017.9";
 %-------------------------------------------------------------------------------------------------
 newinternal nA,nB,nC,nD,nE,nF,char_num,str_cnt,sub_usr,sub_int,tbl_cnt;
 numeric save_para[],comD[][],parD[][],cntD[],tbl_str_wd[],tbl_atom[],tbl_subst[][],tbl_atom_wt[],
@@ -146,10 +146,10 @@
   save_defaultfont:=defaultfont;
   begingroup
   save cntA,cntB,cntM,minX,minY,f_beginchar,numS,sftX,sftY,f_ext,
-       cal_FM,cal_MW,cal_MW_str,cal_MI,cal_MI_str,
+       cal_FM,cal_MW,cal_MW_str,cal_MI,cal_MI_str,wdM,htM,
        inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_MW,
        posBs,posBe,posA,posM,lineB,sB,eB,angB,angA,lenB,ang_br,info,pT;
-  numeric lineB[],sB[],eB[],angB[],angA[],lenB[],ang_br[],numS[];
+  numeric lineB[],sB[],eB[],angB[],angA[],lenB[],ang_br[],numS[],wdM[],htM[];
   pair posA[],posM[][],pT,posBs,posBe;
   string info[],cal_FM,cal_MW,cal_MW_str,cal_MI,cal_MI_str,
          inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_MW;
@@ -331,6 +331,7 @@
   pickup pencircle scaled ext_defaultline;
   dotlabeldiam:=3bp;
   labeloffset:=3bp;
+  save em;
   em=defaultscale*defaultsize;
   if (defaultfont="draw")or(f_MP=0)or(sw_label_emu=1):
     save label,dotlabel;
@@ -346,15 +347,17 @@
 %--------------------------------------------------------------------------------------------------
 def EXT(text TXT)=
   begingroup
-  save w,h,wd,ht,n,p,am,em,aw;
+  save w,h,wd,ht,n,p,am,aw;
   pair p[];
   ext_setup;
-  w:=font_wd; h:=font_ht;
-  wd:=w-2margin_left_right; ht:=h-2margin_top_bottom;
+  w:=font_wd;
+  h:=font_ht;
+  w0:=w-2margin_left_right;
+  h0:=h-2margin_top_bottom;
   p0:=(margin_left_right,margin_top_bottom);
   aw:=atom_wd;
   n:=cntM;
-  for i=1 upto n: p[i]:=posM[1][i]; endfor
+  for i=1 upto n: p[i]:=posM[1][i]; w[i]:=wdM[i]; h[i]:=htM[i]; endfor
   TXT addto mol_stru[0] also currentpicture; clearit; f_ext:=1;
   endgroup;
 enddef;
@@ -361,11 +364,11 @@
 %--------------------------------------------------------------------------------------------------
 def ext(text TXT)=
   begingroup
-  save wd,ht,n,l,p,am,em,aw,A,B;
+  save w,h,n,l,p,am,aw,A,B;
   numeric A[]dir,B[]dir;
   pair p[],A[],B[],B[]s,B[]e;
   ext_setup;
-  wd:=mol_wd; ht:=mol_ht; l:=bond_len; aw:=atom_wd;
+  w:=mol_wd; h:=mol_ht; l:=bond_len; aw:=atom_wd;
   p0:=(minX,minY); An:=cntA; Bn:=cntB;
   for i=1 upto An: A[i]:=posA[i]; A[i]dir:=ang_br[i]; endfor
   for i=1 upto Bn:
@@ -409,14 +412,20 @@
 enddef;
 %--------------------------------------------------------------------------------------------------
 vardef label_emu@#(expr STR,POS) = %% modified 'thelabel@#(expr s,z)' of plain.mp
-  save oft,fx,fy,wds,sC;
+  save oft,fx,fy,wds,sC,pC;
   pair oft,oft.lft,oft.rt,oft.top,oft.bot,oft.ulft,oft.llft,oft.urt,oft.lrt;
   string sC;
+  picture pC;
   wds:=0;
   for i=0 upto length(STR)-1:
     sC:=pic_c(i,STR);
     if not((sw_label_emu=1)and((sC="_")or(sC="^"))):
-      wds:=wds+defaultscale*defaultsize*tbl_char_wd[ASCII(sC)];
+      if (defaultfont="draw")or(f_MP=0):
+        wds:=wds+defaultscale*defaultsize*tbl_char_wd[ASCII(sC)];
+      else:
+        pC:=sC infont defaultfont scaled defaultscale;
+        wds:=wds+xpart(lrcorner pC-llcorner pC);
+      fi
     fi
   endfor
   oft:=     (  0,  0);   fx:=0.5;      fy:=0.5;
@@ -547,6 +556,8 @@
   posM[0][incr cntM]:=(sftX,sftY);
   posM[1][cntM]:=(minX+sftX,minY+sftY);
   posM[2][cntM]:=(max_x+sftX,max_y+sftY);
+  wdM[cntM]:=mol_wd;
+  htM[cntM]:=mol_ht;
   if sw_mol_frame=1: draw_frame((minX,minY),mol_wd,mol_ht,thickness_font_frame) fi
   addto mol_stru[cntM] also currentpicture;
   clearit;



More information about the tex-live-commits mailing list