summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG15
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/README2
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_data_base.mcf16
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf8
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdfbin312162 -> 312162 bytes
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf28
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdfbin383180 -> 383173 bytes
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex16
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdfbin183635 -> 183634 bytes
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex12
-rw-r--r--Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf59
11 files changed, 85 insertions, 71 deletions
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG b/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
index 6f0b66f6866..ef4458a67ee 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
@@ -1,6 +1,19 @@
*******************************************************************************
- Changelog of mcf2graph software package by Akira Yamaji 2022-12-12
+ Changelog of mcf2graph software package by Akira Yamaji 2022-12-20
*******************************************************************************
+[ver. 4.76 / 2022-12-20]
+ -change syntax of bond type
+ {a<}=dl => {a'}=dr
+ {a<}=dr => {a'}=dl
+ -change syntax of fused ring
+ {(a<,b)}=?6 => (a',b)=?6
+ {(a<,b)}=?5 => (a',b)=?5
+ {(a<,b<)}=?6 => (a',b')=?6
+ -change syntax of serial number'
+ {a--b} => {a:b}
+ -update mcf_data_base.mcf
+ -update MCF manual,example
+
[ver. 4.75 / 2022-12-12]
-change syntax of bond type
{a<}=dl : {a}=dr
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/README b/Master/texmf-dist/doc/metapost/mcf2graph/README
index 348026d4fb8..d33c4cf90f0 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 : 4.75 2021-12-12
+ version : 4.76 2021-12-20
E-mail : mcf2graph@gmail.com
Located at : http://www.ctan.org/pkg/mcf2graph
********************************************************************************
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_data_base.mcf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_data_base.mcf
index 2fd8222db10..bdc74d444bd 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_data_base.mcf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_data_base.mcf
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% molecular data base file mcf_data_base.mcf by Akira Yamaji 2021.12.12
+% molecular data base file mcf_data_base.mcf by Akira Yamaji 2021.12.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% tag1:var1;tag2:var2;tag3:var3 .....
% first character of line "%" comment out
@@ -440,8 +440,8 @@ Cat:biological;EN:Febrifugine;MW:301.34;EXA:1
+------------------------------------------------------------------------------
Cat:biological;EN:Hypericin;MW:504.44;EXA:1
+
-<30,Ph,{-4,-3,(11,4),(16<,17),19,(23<,24),(22,29)}=?6,
- {12,14,16,17,22<,24,26,28,33,35}=dl,
+<30,Ph,{-4,-3,(11,4),(16',17),19,(23',24),(22,29)}=?6,
+ {12,14,16,17,22',24,26,28,33,35}=dl,
{7,25}://O,{13,26}:/_, {2,6,11,21,23,28}:/OH
+------------------------------------------------------------------------------
Cat:biological;EN:Camphor;MW:152.23;EXA:1
@@ -481,7 +481,7 @@ Cat:biological;EN:Reserpine;MW:608.688;EXA:1
+------------------------------------------------------------------------------
Cat:biological;EN:Rotenone;MW:394.423;EXA:1
+
-<-60,?5,{-3,-2,-3,-4}=?6,{3<,7,9,17<,-2,-4}=dl,
+<-60,?5,{-3,-2,-3,-4}=?6,{3',7,9,17',-2,-4}=dl,
{2,13,16}:O,10://O,{11^-60,12^60}:*/H,{-2,-3}:/O!,@1,*\,/_,!!
+------------------------------------------------------------------------------
Cat:biological;EN:Pyrethrin I;MW:328.452;EXA:1
@@ -608,13 +608,13 @@ Cat:synthetic;EN:Pyrene;MW:202.25;EXA:-
+------------------------------------------------------------------------------
Cat:synthetic;EN:Coronene;MW:300.35;EXA:1
+
-<30,Ph,{1,(11,2),(15,3),(19,4),(23,5),(27<,7)}=?6,
+<30,Ph,{1,(11,2),(15,3),(19,4),(23,5),(27',7)}=?6,
{9,12,14,17,20,22,25,28,30}=dl
+------------------------------------------------------------------------------
Cat:synthetic;EN:Kekulene;MW:600.7;EXA:1
+
-<30,?6,{3,-3,-2,-3,-2,-3,-2,-3,-2,-3,(-2<,5<),(5<,-4<)}=?6,
- {1,5<,7,9,11,13,17,19,21,23,27,29,31,33,37,39,41,43,47,49,51,53,57,60}=dl
+<30,?6,{3,-3,-2,-3,-2,-3,-2,-3,-2,-3,(-2',5'),(5',-4')}=?6,
+ {1,5',7,9,11,13,17,19,21,23,27,29,31,33,37,39,41,43,47,49,51,53,57,60}=dl
+------------------------------------------------------------------------------
%==============================================================================
Cat:synthetic;EN:12-Crown-4;MW:176.21;EXA:-
@@ -1673,7 +1673,7 @@ Cat:pesticide;EN:Uniconazole-P;MW:291.779;EXA:-
%******************************************************************************
Cat:pesticide;EN:Azinphos-methyl;MW:317.318;EXA:-
+
-<-30,!,O,!,P,//S,/O!^160,!,S,!2,|,?6,-3=?6,{2,4,8,10}=dl,{1--3}:N,6://O
+<-30,!,O,!,P,//S,/O!^160,!,S,!2,|,?6,-3=?6,{2,4,8,10}=dl,{1:3}:N,6://O
+------------------------------------------------------------------------------
Cat:pesticide;EN:Azoxystorbin;MW:403.394;EXA:-
+
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 9dd7c5ee311..ebc920a8565 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf
@@ -1,8 +1,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format for mcf_example.tex by Akira Yamaji 2021.12.12
+% Molecular Coding Format for mcf_example.tex by Akira Yamaji 2021.12.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph.mf; %%% it must be version 4.75
-message "* mcf_exa_soc 2021.12.12";
+input mcf2graph.mf; %%% it must be version 4.76
+message "* mcf_exa_soc 2021.12.20";
message "";
%------------------------------------------------------------------------------
fsize:=(35mm,24mm);
@@ -14,7 +14,7 @@ tag1:="J"; tag2:="C"; tag3:="fm"; tag4:="mw"; tag5:="EN"; tag6:="MW";
%------------------------------------------------------------------------------
%% outputformat:="png"; hppp:=vppp:=0.1; outputtemplate:="%j-%3c.png";
%------------------------------------------------------------------------------
-%ext(defaultfont:="uhvr8r"; defaultscale:=.3; label.rt(inf_EN,(0,0));)
+%%%%ext(defaultfont:="uhvr8r"; defaultscale:=.3; label.rt(inf_EN,(0,0));)
%------------------------------------------------------------------------------
%sw_output:=Font+Info;
%ext(defaultfont:="uhvr8r"; defaultscale:=.3;
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
index 2d5e9c832eb..c4df2fa92d6 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 bed8e2420a8..f9b5e2b35eb 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
@@ -1,9 +1,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2021.12.12
+% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2021.12.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph.mf; %% it must be version 4.75
+input mcf2graph.mf; %% it must be version 4.76
% ** use data base file 'mcf_data_base.mcf'
-message "mcf_man_soc 2021.12.12"; message "";
+message "mcf_man_soc 2021.12.20"; message "";
%------------------------------------------------------------------------
sw_mframe:=0;
sw_expand:=0;
@@ -248,7 +248,7 @@ beginfont("EN:rotate 1")
numbering_end:=7;
defaultscale:=0.5;
labeloffset:=2bp;
- MC(#1,0,0,<90,0,<-90,0,<$315,0,<$90,0,<$0,0,{1--7}=vf,
+ MC(#1,0,0,<90,0,<-90,0,<$315,0,<$90,0,<$0,0,{1:7}=vf,
{3,4^180}:/_~dt)
add(
drawarrow B8/*.7{B8left}..{B3left}B3/*.7; label.urt("90",B8/*.7);
@@ -329,7 +329,7 @@ beginfont("EN:change multi bond")
fsize:=(60mm,8mm);
fmargin:=(2mm,3mm);
ratio_chain_ring:=1;
- MC(<30,!9,{2,4,6,8<}=dl)
+ MC(<30,!9,{2,4,6,8'}=dl)
endfont
%***********************************************************************
beginfont("EN:change bond length1")
@@ -361,9 +361,9 @@ endfont
beginfont("EN:change atom")
fsize:=(70mm,10mm);
msize:=(0.48,1);
- MCat(0,0.5)(<30,!5,2:O,{3--5}:N)
+ MCat(0,0.5)(<30,!5,2:O,{3:5}:N)
sw_numbering:=Atom;
- MCat(1,0.5)(<30,!5,2:O,{3--5}:N)
+ MCat(1,0.5)(<30,!5,2:O,{3:5}:N)
endfont
%***********************************************************************
beginfont("EN:change atom brock address 1")
@@ -413,7 +413,7 @@ beginfont("EN:fused ring")
fmargin:=(2mm,1.5mm);
sw_trimming:=1;
sw_numbering:=Bond;
- MC(<30,?6,3=?6,3=dt,{7--11}=bd_r)
+ MC(<30,?6,3=?6,3=dt,{7:11}=bd_r)
endfont
%-----------------------------------------------------------------------
beginfont("EN:change ring length")
@@ -422,7 +422,7 @@ beginfont("EN:change ring length")
sw_trimming:=1;
sw_numbering:=Bond;
MC(?6,@4,\,?6`1.2,5=?6,11=?6,
- {14--23}=bd_r,{5,11}=dt)
+ {14:23}=bd_r,{5,11}=dt)
endfont
%-----------------------------------------------------------------------
beginfont("EN:fused large 6 ring")
@@ -431,7 +431,7 @@ beginfont("EN:fused large 6 ring")
margin_top_bottom:=1.5mm;
sw_numbering:=Bond;
sw_trimming:=1;
- MC(<30,?6,3=?6[13],3=dt,{7--11}=bd_r)
+ MC(<30,?6,3=?6[13],3=dt,{7:11}=bd_r)
endfont
%-----------------------------------------------------------------------
beginfont("EN:fuse multi ring")
@@ -447,10 +447,10 @@ beginfont("EN:fused ring 2")
fmargin:=(2mm,2mm);
sw_numbering:=Bond;
msize:=(1,.9);
- MCat( 0,.5)(<30,?6,{3,(11,4)}=?6,{11,4}=dt,{12--15}=bd_r)
+ MCat( 0,.5)(<30,?6,{3,(11,4)}=?6,{11,4}=dt,{12:15}=bd_r)
add(defaultscale:=0.4; label("(1)",p0);)
msize:=(1,.9);
- MCat(.5,.5)(<30,?6,3=?6,(11,4)=?5,{11,4}=dt,{12--14}=bd_r)
+ MCat(.5,.5)(<30,?6,3=?6,(11,4)=?5,{11,4}=dt,{12:14}=bd_r)
add(defaultscale:=0.4; label("(2)",p0);)
msize:=(1,.9);
MCat( 1,.5)(<30,?6,3=?6,(11,4)=?4,{11,4}=dt,{12,13}=bd_r)
@@ -461,7 +461,7 @@ beginfont("EN:fused ring 3")
fsize:=(60mm,20mm);
fmargin:=(2mm,2mm);
sw_numbering:=Bond;
- MCat(0,1)(?6,{3,10}=?6,(16,4)=?6[3],{16,4}=dt,{17--19}=bd_r)
+ MCat(0,1)(?6,{3,10}=?6,(16,4)=?6[3],{16,4}=dt,{17:19}=bd_r)
add(defaultscale:=0.4; label("(1)",p0);)
MCat(1,0)(?6,{3,10}=?6,(16,4)=?5[2],{16,4}=dt,{17,18}=bd_r)
add(defaultscale:=0.4; label("(2)",p0);)
@@ -606,7 +606,7 @@ beginfont("EN:Serial number")
fsize:=(75mm,14mm);
max_blength:=8mm;
sw_numbering:=Atom; numbering_end:=15;
- MC(<30,!14,{2,6--10,14}:/_~bd_r`0.5)
+ MC(<30,!14,{2,6:10,14}:/_~bd_r`0.5)
endfont
%***********************************************************************
beginfont("EN:Change color")
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
index 3bb7a0d98c4..b2e585b42a5 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 22111988277..945826f92f8 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 2021.12.12
+% Molecular Coding Format manual by Akira Yamaji 2021.12.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{article}
\usepackage[pdftex]{graphicx}
@@ -294,9 +294,9 @@ wb_r : wedge backward (half width)
\subsubsection{Change multiple bond type}
\index{vf}%
\begin{verbatim}
-{2,4,6,8<}=dl : 2=dl,4=dl,6=dl,8=dr
+{2,4,6,8'}=dl : 2=dl,4=dl,6=dl,8=dr
-<30,!7,{2,4,6,8<}=dl
+<30,!7,{2,4,6,8'}=dl
\end{verbatim}
\MCFgraph
%-----------------------------------------------------------------------------
@@ -449,13 +449,13 @@ attached bond length
\begin{verbatim}
(Attached 3 bond)
-(16,4)=?6[3] or {(16<,4)}=?6
+(16,4)=?6[3] or {(16',4)}=?6
: fuse 3/6 ring to B16..B4
-(16,4)=?5[2] or {(16<,4)}=?5
+(16,4)=?5[2] or {(16',4)}=?5
: fuse 2/5 ring to B16..B4
** ?m[n] (5<=m<=6,n=m-3)
-1:?6,{3,10,(16<,4)}=?6
+1:?6,{3,10,(16',4)}=?6
2:?6,{3,10}=?6,(16,4)=?5[2]
\end{verbatim}
\MCFgraph
@@ -467,10 +467,10 @@ attached bond length
\begin{verbatim}
(Attached 4 bond)
-(21,4)=?6[2] or {(21<,4<)}=?6
+(21,4)=?6[2] or {(21',4')}=?6
: fuse 2/6 ring to B21..B4
-<-30,?6,{3,10,15,(21<,4<)}=?6
+<-30,?6,{3,10,15,(21',4')}=?6
** ?m[n] (m=6,n=2)
\end{verbatim}
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 f0bb0acc09f..be4964ceecc 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/doc/metapost/mcf2graph/mcf_mplib_exa.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex
index b2bdbe8ff17..241a9b703a5 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex
@@ -1,7 +1,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2021.12.12
+% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2021.12.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.75
+% ** mcf2graph.mf must be version 4.76
% ** use mcf_data_base.mcf
\documentclass{article}
%------------------------------------------------------------------------------
@@ -168,8 +168,8 @@ endfont
\begin{verbatim}
beginfont("EN:Kekulene","MW:600.7",
%------------------------------------------------------------------------------
- ": <30,?6,{3,-3,-2,-3,-2,-3,-2,-3,-2,-3,(-2<,5<),(5<,-4<)}=?6, ",
- ": {1,5<,7,9,11,13,17,19,21,23,27,29,31,33,37,39,41,43,47,49,51,53,57,60}=dl ")
+ ": <30,?6,{3,-3,-2,-3,-2,-3,-2,-3,-2,-3,(-2',5'),(5',-4')}=?6, ",
+ ": {1,5',7,9,11,13,17,19,21,23,27,29,31,33,37,39,41,43,47,49,51,53,57,60}=dl ")
%------------------------------------------------------------------------------
fsize:=(120mm,25mm);
if check(mc)=0: MC(scantokens(mc)) fi
@@ -178,8 +178,8 @@ endfont
%----------------------------------------------------------------------------
\begin{mplibcode}
beginfont("EN:Kekulene","MW:600.7",
- ": <30,?6,{3,-3,-2,-3,-2,-3,-2,-3,-2,-3,(-2<,5<),(5<,-4<)}=?6, ",
- ": {1,5<,7,9,11,13,17,19,21,23,27,29,31,33,37,39,41,43,47,49,51,53,57,60}=dl ")
+ ": <30,?6,{3,-3,-2,-3,-2,-3,-2,-3,-2,-3,(-2',5'),(5',-4')}=?6, ",
+ ": {1,5',7,9,11,13,17,19,21,23,27,29,31,33,37,39,41,43,47,49,51,53,57,60}=dl ")
fsize:=(120mm,25mm);
if check(mc)=0: MC(scantokens(mc)) fi
ext(defaultscale:=0.8;
diff --git a/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf b/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
index f6aa34ab01b..8571096ba0b 100644
--- a/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
+++ b/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 4.75 Copyright (c) 2013-2021 Akira Yamaji
+% mcf2graph ver 4.76 Copyright (c) 2013-2021 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,
@@ -38,7 +38,7 @@
% Set to use plain.mp (label,arrow,atom) : mpost -s labeloffset=2 FILENAME
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
tracingstats:=1;
-message "* This is mcf2graph ver 4.75 2021.12.12";
+message "* This is mcf2graph ver 4.76 2021.12.20";
%-------------------------------------------------------------------------------------------------
newinternal cntA,cntB,cntM,minX,minY,maxX,maxY,sftX,sftY,com,par,envT,envB,lenT,lineT,angT,rotT,
crR,nA,nB,nC,nD,nE,nF,nS,nL,nR,nU,nP,xpos,ypos,markA,markB,saveA,saveB,bondL;
@@ -78,6 +78,7 @@ def fat(expr a,b)= mposition:=b; a enddef;
def ext(text TXT)= sw_ext_all:=1; def EXT_ALL = TXT enddef; enddef;
def ext_clear= sw_ext_all:=0; def EXT_ALL = enddef; enddef;
%--------------------------------------------------------------------------------------------------
+vardef frac primary n= n-floor n enddef;
vardef iif(expr a,b,c)=if a: b else: c fi enddef;
vardef subc(expr i,s)= substring(i-1,i) of s enddef;
vardef sfrt(expr a,b,c)= a shifted ((b,0) rotated c) enddef;
@@ -451,7 +452,7 @@ def pickup_data_unit(expr t,v,f)=
endgroup;
enddef;
%--------------------------------------------------------------------------------------------------
-vardef scan_bit(expr n,b)= if b=0: false else: odd(floor(n/b)) fi enddef;
+vardef scan_bit(expr n,b)= if b>=1: odd(floor(n/b)) else: odd(floor((frac n)/b)) fi enddef;
%--------------------------------------------------------------------------------------------------
vardef scan_char(expr c,s,d,n)=
save k,n_s;
@@ -491,7 +492,7 @@ tertiarydef a op_bq b = if known b:: (_tmp_len,b),a else:: _nop,a fi enddef;
def rot_angle primary n = (_rot_ang,n) enddef;
def cyc_atom primary n = (_cyc,n) enddef;
def jump_atom_abs primary a =
- if numeric a:: (_jp_atom,$a) elseif pair a:: (_jp_atom,$1),<$0,angle(a)~0`length(a),<$0 fi
+ if numeric a:: (_jp_atom,$a) ef pair a:: (_jp_atom,$1),<$0,angle(a)~0`length(a),<$0 fi
enddef;
def jump_atom primary a =
if numeric a:: (_jp_atom,a) elseif pair a:: <$0,angle(a)~0`length(a),<$0 fi
@@ -533,9 +534,9 @@ def read_mcf(expr n)(text TXT)=
enddef;
%-------------------------------------------------------------------------------------------------
vardef read_number(text TXT)=
- save --,-+,<,nA,nB,nC;
- let -- == from_until;
- def < == -3000 enddef;
+ save ',:,nA,nB,nC;
+ let : == from_until;
+ def ' == +0.5 enddef;
parts_int:=parts_int+1;
nA:=0;
for list==TXT::
@@ -595,10 +596,11 @@ vardef change_bond(expr a,b) =
if a>=parts_int_start::
for i==1 upto cntD[a]::
if comD[a][i]==_numeric::
- if parD[a][i]>=-999:: com_par(_set_adr,parD[a][i]) com_par(_set_line,b)
- ef b==dl:: com_par(_set_adr,parD[a][i]+3000) com_par(_set_line,dr)
- ef b==dr:: com_par(_set_adr,parD[a][i]+3000) com_par(_set_line,dl)
- else:: com_par(_set_adr,parD[a][i]+3000) com_par(_set_line,b)
+ if frac parD[a][i]==0::
+ com_par(_set_adr,parD[a][i]) com_par(_set_line,b)
+ ef b==dl:: com_par(_set_adr,floor parD[a][i]) com_par(_set_line,dr)
+ ef b==dr:: com_par(_set_adr,floor parD[a][i]) com_par(_set_line,dl)
+ else:: com_par(_set_adr,floor parD[a][i]) com_par(_set_line,b)
fi
fi
endfor
@@ -621,22 +623,19 @@ vardef change_bond(expr a,b) =
else:: fuse_ring(parD[a][i],b-?3+3)
fi
else::
- if b==?6:: if (comD[a][i]>=-999)and(parD[a][i]>=-999)::
- fuse_ring_bonds((comD[a][i],parD[a][i]),6,4)
- ef comD[a][i]>=-999::
- fuse_ring_bonds((comD[a][i],parD[a][i]+3000),6,3)
- ef parD[a][i]>=-999::
- fuse_ring_bonds((comD[a][i]+3000,parD[a][i]),6,3)
- else::
- fuse_ring_bonds((comD[a][i]+3000,parD[a][i]+3000),6,2)
- fi
- ef b==?5:: if (comD[a][i]>=-999)and(parD[a][i]>=-999)::
- fuse_ring_bonds((comD[a][i],parD[a][i]),5,3)
- ef comD[a][i]>=-999::
- fuse_ring_bonds((comD[a][i],parD[a][i]+3000),5,2)
- ef parD[a][i]>=-999::
- fuse_ring_bonds((comD[a][i]+3000,parD[a][i]),5,2)
- fi
+ if b==?6::
+ if (frac comD[a][i]==0)and(frac parD[a][i]==0)::
+ fuse_ring_bonds((comD[a][i],parD[a][i]),6,4)
+ ef frac comD[a][i]==0:: fuse_ring_bonds((comD[a][i],floor parD[a][i]),6,3)
+ ef frac parD[a][i]==0:: fuse_ring_bonds((floor comD[a][i],parD[a][i]),6,3)
+ else:: fuse_ring_bonds((floor comD[a][i],floor parD[a][i]),6,2)
+ fi
+ ef b==?5::
+ if (frac comD[a][i]==0)and(frac parD[a][i]==0)::
+ fuse_ring_bonds((comD[a][i],parD[a][i]),5,3)
+ ef frac comD[a][i]==0:: fuse_ring_bonds((comD[a][i],floor parD[a][i]),5,2)
+ ef frac parD[a][i]==0:: fuse_ring_bonds((floor comD[a][i],floor parD[a][i]),5,2)
+ fi
ef b==?4:: fuse_ring_bonds((comD[a][i],parD[a][i]),4,2)
ef b==?6[3]:: fuse_ring_bonds((comD[a][i],parD[a][i]),6,3)
ef b==?6[2]:: fuse_ring_bonds((comD[a][i],parD[a][i]),6,2)
@@ -2005,8 +2004,10 @@ ONa:=STb("O{Na}")(O,Na); SO3Na:=STb("S{O_3_}{Na}")(S,O,O,O,Na);
tbl_group_end:=tbl_cnt;
parts_atom_end:=parts_cnt;
%=================================================================================================
-for i==3 upto 20: ?[i]:='((_com,_len_ss),(_get_len,_ring_len),<((-180 DIV i)-90)
- for j==2 upto i:: ,(360 DIV i) endfor,(_cyc_sB,1-i),(_com,_len_ee)); endfor
+for i=3 upto 20:
+ ?[i]:='((_com,_len_ss),(_get_len,_ring_len),<((-180 DIV i)-90)
+ for j==2 upto i:: ,(360 DIV i) endfor,(_cyc_sB,1-i),(_com,_len_ee));
+endfor
Ph:=Ph1:='(?6,-2=dl,-4=dl,-6=dl); Ph2:='(?6,-1=dl,-3=dl,-5=dl);
for i=4,5,6: for j=2 upto i-2: ?[i][j]:='(); endfor endfor
for i=5,6,7,8: for j=11 upto 15: ?[i][j]:='(); endfor endfor