texlive[42248] Master/texmf-dist: mcf2graph (10oct16)
commits+karl at tug.org
commits+karl at tug.org
Mon Oct 10 23:14:37 CEST 2016
Revision: 42248
http://tug.org/svn/texlive?view=revision&revision=42248
Author: karl
Date: 2016-10-10 23:14:36 +0200 (Mon, 10 Oct 2016)
Log Message:
-----------
mcf2graph (10oct16)
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_example.tex
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
Added Paths:
-----------
trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-060.eps
Removed Paths:
-------------
trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-042.eps
Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG 2016-10-10 21:13:18 UTC (rev 42247)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG 2016-10-10 21:14:36 UTC (rev 42248)
@@ -1,6 +1,11 @@
*******************************************************************************
- Changelog of mcf2graph software package by Akira Yamaji 2016-08-21
+ Changelog of mcf2graph software package by Akira Yamaji 2016-10-10
*******************************************************************************
+[ver. 3.98 / 2016-10-10]
+ -add option parameter sw_clip (clipping font)
+ -add max_bond_length , delete max_bond_width
+ -update MCF syntax manual
+
[ver. 3.97 / 2016-08-21]
-change bond type name 'ov' to 'si_'
-add bond type 'wf_','wb_','bd_'
Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/README
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/README 2016-10-10 21:13:18 UTC (rev 42247)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/README 2016-10-10 21:14:36 UTC (rev 42248)
@@ -1,7 +1,7 @@
********************************************************************************
mcf2graph : Convert Molecular Coding Format to graphics with METAFONT/METAPOST
Author : Akira Yamaji
- version : 3.97 2016-08-21
+ version : 3.98 2016-10-10
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 2016-10-10 21:13:18 UTC (rev 42247)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf 2016-10-10 21:14:36 UTC (rev 42248)
@@ -1,11 +1,10 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format for mcf_example.tex by Akira Yamaji 2016.08.21
+% Molecular Coding Format for mcf_example.tex by Akira Yamaji 2016.10.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph.mf; %%% it must be version 3.97 or later
+input mcf2graph.mf; %%% it must be version 3.98 or later
%-------------------------------------------------------------------------
font_wd#:=33mm#;
font_ht#:=24mm#;
-max_bond_width:=0.15;
%-------------------------------------------------------------------------
sw_auxout:=1;
sw_font_frame:=0;
Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex 2016-10-10 21:13:18 UTC (rev 42247)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex 2016-10-10 21:14:36 UTC (rev 42248)
@@ -68,7 +68,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\begin{center}
- {\LARGE\bf Molecular Coding Format examples}\vspace{5mm}\\
+ {\Huge\sf Molecular Coding Format examples}\vspace{5mm}\\
Author : Akira Yamaji \quad Date : \today\\
Located at : http://www.ctan.org/pkg/mcf2graph\vspace{3mm}\\
\end{center}
Deleted: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-042.eps
===================================================================
(Binary files differ)
Added: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-060.eps
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-060.eps
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-060.eps 2016-10-10 21:13:18 UTC (rev 42247)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-060.eps 2016-10-10 21:14:36 UTC (rev 42248)
Property changes on: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-060.eps
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/postscript
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf 2016-10-10 21:13:18 UTC (rev 42247)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf 2016-10-10 21:14:36 UTC (rev 42248)
@@ -1,12 +1,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2016.08.21
+% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2016.10.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph.mf; %% it must be version 3.97 or later
+input mcf2graph.mf; %% it must be version 3.98 or later
%------------------------------------------------------------------------
-font_wd#:=60mm#;% font width
-font_ht#:=40mm#;% font height
-max_bond_width:=0.18;
-%------------------------------------------------------------------------
sw_auxout:=0;
sw_mol_frame:=0;
sw_expand:=0;
@@ -13,21 +9,118 @@
sw_start_vector:=0;
%%%%%sw_checklist:=1;
%***********************************************************************
+font_wd#:=35mm#;
+font_ht#:=25mm#;
+margin_left_right:=2mm;
+\max_bond_length#:=10mm#;
+ratio_thickness_bond:=0.04;
+ratio_atom_bond:=0.5;
+%***********************************************************************
+beginfont("EN:Glycine")
+ MCf(<30,NH2,!0,!,COOH)
+endfont
+%***********************************************************************
+beginfont("EN:Alanine")
+ MCf(<30,NH2,!0,/Me,!,COOH)
+endfont
+%***********************************************************************
+beginfont("EN:Valine")
+ MCf(<30,NH2,!0,!,COOH,2\,/Me,!)
+endfont
+%***********************************************************************
+beginfont("EN:Leucine")
+ MCf(<30,NH2,!0,!,COOH,2\,!,/Me,!)
+endfont
+%***********************************************************************
+beginfont("EN:Isoleucine")
+ MCf(<30,NH2,!0,!,COOH,2\,/Me,!2)
+endfont
+%***********************************************************************
+beginfont("EN:Serine")
+ MCf(<30,NH2,!0,!,COOH,2\,!,OH)
+endfont
+%***********************************************************************
+beginfont("EN:Threonine")
+ MCf(<30,NH2,!0,!,COOH,2\,/Me,!,OH)
+endfont
+%***********************************************************************
+beginfont("EN:Cysteine")
+ MCf(<30,NH2,!0,!,COOH,2\,!,SH)
+endfont
+%***********************************************************************
+beginfont("EN:Methionine")
+ MCf(<30,NH2,!0,!,COOH,2\,!2,SMe)
+endfont
+%***********************************************************************
+beginfont("EN:Phenylalanine")
+ MCf(<30,NH2,!0,!,COOH,2\,!,Ph)
+endfont
+%***********************************************************************
+beginfont("EN:Tyrosine")
+ MCf(<30,NH2,!0,!,COOH,2\,!,Ph,-3:/OH)
+endfont
+%***********************************************************************
+beginfont("EN:Triptophan")
+ MCf(<30,NH2,!0,!,COOH,2\,!,<24,|,?5,-4=Ph,2=dr,5=dl,4:NH)
+endfont
+%***********************************************************************
+beginfont("EN:Prorine")
+ MCf(<18,?5,3:NH,4:/COOH)
+endfont
+%***********************************************************************
+beginfont("EN:Glutamine")
+ MCf(<30,NH2,!0,!,COOH,2\`1,-45,-45,//O,!,NH2)
+endfont
+%***********************************************************************
+beginfont("EN:Asparagine")
+ MCf(<30,NH2,!0,!,COOH,2\,!,//O,!,NH2)
+endfont
+%***********************************************************************
+beginfont("EN:Aspartic acid")
+ MCf(<30,NH2,!0,!,COOH,2\,!,COOH)
+endfont
+%***********************************************************************
+beginfont("EN:Glutamic acid")
+ MCf(<30,NH2,!0,!,COOH,2\,!2,COOH)
+endfont
+%***********************************************************************
+beginfont("EN:Lysine")
+ MCf(<30,NH2,!0,!,COOH,2\,!4,NH2)
+endfont
+%***********************************************************************
+beginfont("EN:Arginine")
+ MCf(<30,NH2,!0,!,COOH,2\,-45,-45,60,NH,!,//NH,!,NH2)
+endfont
+%***********************************************************************
+beginfont("EN:Hystidine")
+ MCf(<30,NH2,!0,!,COOH,2\,!,|,?5,$(1,3)dl,3:N,5:NH)
+endfont
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_wd#:=60mm#;
+font_ht#:=35mm#;
+ratio_thickness_bond:=0.015;
+ratio_atom_bond:=0.36;
+sw_font_frame:=1;
+margin_left_right:=2mm;
+margin_top_bottom:=1mm;
+%***********************************************************************
beginfont("EN:Chain 1")
+ font_ht#:=20mm#;
sw_numberB:=1;
numberB_end:=6;
- max_bond_width:=0.20;
ratio_chain_ring:=1;
+%----------------------------------------------------------------------
MCf(<30,-60,60,-90,120,-90,60,
- @(1^-60,2^60,3^-45,4^30,5^-45,6^60)/Me~dt`.6
+ @(1^-60,2^60,3^-45,4^30,5^-45,6^60)/Me~dt`.4
)
endfont
%***********************************************************************
beginfont("EN:Chain 2")
+ font_ht#:=20mm#;
sw_numberB:=1;
numberB_end:=6;
- max_bond_width:=0.20;
ratio_chain_ring:=1;
+%----------------------------------------------------------------------
MCf(<30,!6,
@(1^-60,2^60,3^-60,4^60,5^-60,6^60)/Me~dt`.6
)
@@ -34,166 +127,239 @@
endfont
%***********************************************************************
beginfont("EN:Jump and Branch")
+ font_ht#:=20mm#;
+ margin_top_bottom:=2mm;
+ sw_clip:=1;
sw_numberA:=1;
- max_bond_width:=0.20;
ratio_chain_ring:=1;
+%----------------------------------------------------------------------
MCf(<30,!6,3*,0,!,5*,-30)
endfont
%***********************************************************************
beginfont("EN:Jump and Branch")
+ font_ht#:=20mm#;
+ margin_top_bottom:=2mm;
sw_numberA:=1;
- max_bond_width:=0.20;
+ sw_clip:=1;
ratio_chain_ring:=1;
+%----------------------------------------------------------------------
MCf(<30,!6,3\,!)
endfont
%***********************************************************************
+beginfont("EN:branch1")
+ font_ht#:=20mm#;
+ margin_top_bottom:=2mm;
+ sw_numberA:=1;
+ sw_clip:=1;
+ numberA_end:=9;
+ ratio_chain_ring:=1;
+%----------------------------------------------------------------------
+ MCf(<-30,!8,2\,!,4*\,!,6\*,!,8\\,!)
+endfont
+%***********************************************************************
+beginfont("EN:branch2")
+ font_ht#:=23mm#;
+ margin_top_bottom:=2mm;
+ sw_clip:=1;
+ sw_numberA:=1;
+ numberA_end:=7;
+ ratio_chain_ring:=1;
+%----------------------------------------------------------------------
+ MCf(<-30,!6,2\~dr,!,4\`1.5,!,6\^15,-60)
+endfont
+%***********************************************************************
beginfont("EN:Connect atom")
+ font_ht#:=20mm#;
+ margin_top_bottom:=2mm;
+ sw_clip:=1;
sw_numberA:=1;
- max_bond_width:=0.20;
ratio_chain_ring:=1;
+%----------------------------------------------------------------------
MCf(<30,!6,3\,!,&5)
endfont
%***********************************************************************
beginfont("EN:ring")
- max_bond_width:=0.25;
+ font_ht#:=20mm#;
+ sw_clip:=1;
+ margin_top_bottom:=3mm;
sw_numberB:=1;
- sw_start_vector:=1;
+%----------------------------------------------------------------------
MCf(?6)
endfont
%***********************************************************************
beginfont("EN:rotate 1")
- max_bond_width:=0.25;
+ font_ht#:=20mm#;
+ margin_top_bottom:=3mm;
+ sw_clip:=1;
sw_numberB:=1;
- sw_start_vector:=1;
- MCf(``1,0~vf,0~vf,<90,0~vf,<-90,0~vf)
+ numberB_end:=5;
+ MCf(``1,0,0,<90,0,<-90,0,0,$(1,2,3,4,5)vf,@(3,4^180)/Me~dt`.5)
endfont
%***********************************************************************
beginfont("EN:change bond 1")
+ font_wd#:=70mm#;
+ font_ht#:=15mm#;
+ sw_clip:=1;
ratio_chain_ring:=1;
- MCf(<30,!~dm,!~dl,!~dr,!~tm)
+ margin_top_bottom:=3mm;
+ MCf(<30,!~dm,!,!~dl,!,!~dr,!,!~tm)
endfont
%***********************************************************************
beginfont("EN:change bond 2")
+ font_wd#:=70mm#;
+ font_ht#:=15mm#;
+ margin_top_bottom:=3mm;
+ sw_clip:=1;
ratio_chain_ring:=1;
- MCf(<30,!~wf,!~wb,!~zf,!~zb,!~vf)
+ MCf(<30,!~wf,!,!~wb,!,!~zf,!,!~zb)
endfont
%***********************************************************************
beginfont("EN:change bond 3")
+ font_ht#:=12mm#;
+ margin_top_bottom:=3mm;
+ sw_clip:=1;
ratio_chain_ring:=1;
- MCf(<30,!5,1=vb,2=dt,3=wv,4=bd,5=bz)
+ MCf(<30,!~vf,!,!~vb)
endfont
%***********************************************************************
+beginfont("EN:change bond 3")
+ font_wd#:=70mm#;
+ sw_clip:=1;
+ ratio_chain_ring:=1;
+ margin_top_bottom:=3mm;
+ MCf(<30,!7,1=dt,3=wv,5=bd,7=bz)
+endfont
+%***********************************************************************
beginfont("EN:change bond 4")
+ margin_top_bottom:=3mm;
+ sw_clip:=1;
ratio_chain_ring:=1;
MCf(<30,!7,$(2,4,6)dr)
endfont
%***********************************************************************
beginfont("EN:over line")
+ sw_clip:=1;
+ font_ht#:=20mm#;
ratio_chain_ring:=1;
- max_bond_width:=0.25;
- MCf(<-30,!8`.4,!`.2,60`.6,90`3,@(2~si_,4~wf_,6~wb_,8~bd_)/Me`1)
+ MCf(<-30,!8,!,60,90`8,@(2~si_,4~wf_,6~wb_,8~bd_)/Me`2)
endfont
%***********************************************************************
beginfont("EN:change bond length1")
- sw_start_vector:=1;
+ font_ht#:=15mm#;
sw_numberB:=1;
MCf(<30,!2,!2`1.2,!2)
endfont
%***********************************************************************
beginfont("EN:change bond length2")
- sw_start_vector:=1;
+ font_ht#:=15mm#;
sw_numberB:=1;
MCf(<30,!2,``1.2,!4)
endfont
%***********************************************************************
-beginfont("EN:Make brock")
- sw_start_vector:=1;
- sw_numberB:=1;
- MCf(<30,!2,{,``1.2,!2,},!2)
-endfont
-%***********************************************************************
beginfont("EN:change ring length")
- sw_start_vector:=1;
+ font_ht#:=25mm#;
+ sw_clip:=1;
MCf(?6,4\,?6`1.2,5=?6,11=?6)
endfont
%***********************************************************************
-beginfont("EN:change atom 1")
- sw_start_vector:=1;
+beginfont("EN:Insert atom")
+ sw_clip:=1;
+ font_ht#:=10mm#;
MCf(<30,!2,O,!2,N,!2)
endfont
%***********************************************************************
-beginfont("EN:change atom 2")
- MCd(1,1)(.5,.8)(<30,!6,2:O,@(3,5)N)
+beginfont("EN:change atom")
+ font_ht#:=18mm#;
+ MCd(1,1)(.5,1)(<30,!6,2:O,@(3,5)N)
sw_numberA:=1;
- MCd(1,1)(.5,.2)(<30,!6,2:O,@(3,5)N)
+ MCd(1,1)(.5,.05)(<30,!6,2:O,@(3,5)N)
endfont
%***********************************************************************
-beginfont("EN:change atom 3")
- MCd(.7,1)(.5,1)(?6,4\,?6,2:N)
- sw_numberA:=1;
- MCd(.7,1)(.5,0)(?6,4\,?6)
-endfont
-%***********************************************************************
beginfont("EN:change atom brock address 1")
- MCd(.7,1)(.5,1)(?6,4\,|,?6,2:O)
+ font_wd#:=70mm#;
+ font_ht#:=15mm#;
+ MCd(1,1)(0,.5)(?6,4\,|,?6,2:O)
sw_numberA:=1;
- MCd(.7,.5)(.5,0)(?6,4\,?6)
+ MCd(1,.88)(1,.5)(?6,4\,?6)
endfont
%***********************************************************************
beginfont("EN:change atom brock address 2")
- MCd(.7,1)(.5,1)(?6,4\,|,?6,||,2:N)
+ font_wd#:=70mm#;
+ font_ht#:=15mm#;
+ MCd(1,1)(0,.5)(?6,4\,|,?6,||,2:N)
sw_numberA:=1;
- MCd(.7,.5)(.5,0)(?6,4\,?6)
+ MCd(1,.88)(1,.5)(?6,4\,?6)
endfont
%***********************************************************************
beginfont("EN:change atom absolute address")
- MCd(.7,1)(.5,1)(?6,4\,?6,#2:N)
+ font_wd#:=70mm#;
+ font_ht#:=15mm#;
+ MCd(1,1)(0,.5)(?6,4\,?6,#2:N)
sw_numberA:=1;
- MCd(.7,1)(.5,0)(?6,4\,?6)
+ MCd(1,.88)(1,.5)(?6,4\,?6)
endfont
%***********************************************************************
beginfont("EN:change atom relative adress")
- MCd(.7,1)(.5,1)(?6,4\,?6,-2:N)
+ font_wd#:=70mm#;
+ font_ht#:=15mm#;
+ MCd(1,1)(0,.5)(?6,4\,?6,-2:N)
sw_numberA:=3;
- MCd(.7,1)(.5,0)(?6,4\,?6)
+ MCd(1,.88)(1,.5)(?6,4\,?6)
endfont
%***********************************************************************
beginfont("EN:fused ring")
+ font_ht#:=18mm#;
+ margin_top_bottom:=1.5mm;
+ sw_clip:=1;
sw_numberB:=1;
MCf(<30,?6,3=?6,$(3)dt,$(7,8,9,10,11)bd)
endfont
-%***********************************************************************
+%-----------------------------------------------------------------------
beginfont("EN:fused large 6 ring")
+ font_ht#:=18mm#;
+ margin_top_bottom:=1.5mm;
sw_numberB:=1;
+ sw_clip:=1;
MCf(<30,?6,3=?6[13],$(3)dt,$(7,8,9,10,11)bd)
endfont
-%***********************************************************************
-beginfont("EN:fused ring 1")
- sw_start_vector:=1;
+%-----------------------------------------------------------------------
+beginfont("EN:fuse multi ring")
+ font_wd#:=70mm#;
+ font_ht#:=20mm#;
sw_numberB:=1;
+ sw_clip:=1;
MCf(<30,?6,$(-3,-4,-4,-2,-2,-4,-4)?6,$(4,8,13,20,25,28,33)dt)
endfont
%***********************************************************************
beginfont("EN:fused ring 2")
- sw_numberB:=1;
- MCd(1,.62)( 0,0)(<30,?6,3=?6,(11,4)=?6[4],$(11,4)dt,$(12,13,14,15)bd)
- MCd(1,.52)(.54,1)(<30,?6,3=?6,(11,4)=?5[3],$(11,4)dt,$(12,13,14)bd)
- MCd(1,.52)(1, 0)(<30,?6,3=?6,(11,4)=?4[2],$(11,4)dt,$(12,13)bd)
+ font_wd#:=75mm#;
+ font_ht#:=20mm#;
+ sw_numberB:=1;
+ MCd(1,1)( 0,.5)(<30,?6,3=?6,(11,4)=?6[4],$(11,4)dt,$(12,13,14,15)bd)
+ MCd(1,.9)(.5,.5)(<30,?6,3=?6,(11,4)=?5[3],$(11,4)dt,$(12,13,14)bd)
+ MCd(1,.9)( 1,.5)(<30,?6,3=?6,(11,4)=?4[2],$(11,4)dt,$(12,13)bd)
endfont
%***********************************************************************
beginfont("EN:fused ring 3")
+ font_ht#:=20mm#;
+ margin_top_bottom:=2mm;
sw_numberB:=1;
- MCd(1,.6)(0,1)(?6,$(3,10)?6,(16,4)=?6[3],$(16,4)dt,$(17,18,19)bd)
- MCd(1,.6)(1,0)(?6,$(3,10)?6,(16,4)=?5[2],$(16,4)dt,$(17,18)bd)
+ MCd(1,1)(0,1)(?6,$(3,10)?6,(16,4)=?6[3],$(16,4)dt,$(17,18,19)bd)
+ MCd(1,1)(1,0)(?6,$(3,10)?6,(16,4)=?5[2],$(16,4)dt,$(17,18)bd)
endfont
%***********************************************************************
beginfont("EN:fused ring 4")
- max_bond_width:=0.15;
+ sw_clip:=1;
+ font_ht#:=22mm#;
+ margin_top_bottom:=2mm;
sw_numberB:=1;
MCf(<-30,?6,$(3,10,15)?6,(21,4)=?6[2],$(21,4)dt,$(22,23)bd)
endfont
%***********************************************************************
beginfont("EN:Spiro ring ")
+ sw_clip:=1;
+ font_ht#:=18mm#;
+ margin_top_bottom:=3mm;
sw_numberA:=1;
numberA_end:=7;
ratio_chain_ring:=1;
@@ -200,61 +366,63 @@
MCf(<30,!6,4*,?5)
endfont
%***********************************************************************
-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: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)
-endfont
-%***********************************************************************
beginfont("EN:substituent 1")
+ font_ht#:=25mm#;
+ sw_clip:=1;
MCf(<30,!,/Me,!,/Et,!3,/Pr,!,/iPr,!3,/tBu,!,/Ph^-30,!)
endfont
%***********************************************************************
beginfont("EN:substituent 2")
- sw_start_vector:=1;
- MCf(<30,!,//O,!,/*H,!,*/H,!,/?3,!,**?3,!)
+ font_ht#:=20mm#;
+ sw_clip:=1;
+ MCf(<30,!,//O,!,/*H,!,*/H,!,**?3,!)
endfont
%***********************************************************************
beginfont("EN:substituent 3")
- sw_start_vector:=1;
- MCf(<30,``1,!,/Me~zf`2^30,!,/Me~zf`2^30,!2,*/Pr>lr,!2,*/Pr>rl,!)
+ font_ht#:=18mm#;
+ sw_clip:=1;
+ MCf(<30,``1,!2,/Me~zf`2^30,!2,*/Pr>lr,!2,*/Pr>rl,!)
endfont
%***********************************************************************
beginfont("EN:substituent 3")
+ font_wd#:=70mm#;
+ font_ht#:=22mm#;
+ margin_top_bottom:=2mm;
sw_numberA:=1;
- numberA_end:=12;
- MCf(<30,!11,2:/Me,3:/Et,6:/Pr,7:/iPr,10:/tBu,11:/Ph^-30)
+ sw_clip:=1;
+ numberA_end:=18;
+ MCf(<-30,!17,2:/Me,4:/Et,6:/Pr,10:/iPr,14:/tBu,16:/Ph^-30)
endfont
%***********************************************************************
beginfont("EN:substituent 4")
- sw_numberA:=1; numberA_end:=6;
- MCf(<30,?6,@(3`2^30,3~wf,4~zf,6~wf^-30,6~zf^30)/H)
+ font_ht#:=15mm#;
+ sw_clip:=1;
+ margin_top_bottom:=2mm;
+ sw_numberA:=1; numberA_end:=9;
+ MCf(<-30,!6,@(2~wf,4~zf,6^-30)/H)
endfont
%***********************************************************************
beginfont("EN:substituent 5")
+ font_ht#:=18mm#;
+ margin_top_bottom:=2mm;
+ sw_clip:=1;
sw_numberA:=1; numberA_end:=8;
- MCf(<30,!7`1,@(2,3)/*Me`2^30,5:*/Pr>lr,7:*/Pr>rl)
+ MCf(<30,!7`1,@(3)/*Me`2^30,5:*/Pr>lr,7:*/Pr>rl)
endfont
%***********************************************************************
beginfont("EN:chain strech direction mode 1")
+ font_ht#:=27mm#;
+ sw_clip:=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
+ @(1^-60,1`1.5,1^60)/'(!2,"{vt}")>vt
)
endfont
%***********************************************************************
beginfont("EN:chain strech direction mode 2")
+ font_ht#:=23mm#;
+ sw_clip:=1;
ratio_chain_ring:=1;
MCf(
<30,!6,@(3^-30,3,3^30)/'(!,!,!,"{lr}")>lr,
@@ -263,8 +431,9 @@
endfont
%***********************************************************************
beginfont("EN:chain strech direction mode 3")
+ font_ht#:=25mm#;
+ sw_clip:=1;
ratio_chain_ring:=1;
- sw_start_vector:=1;
MCf(<-30,!6,@(6>45)/'(!3,"{45}"),
@(3>'(90,-90,90))/'(!3,"{'(90,-90,90)}")
)
@@ -271,29 +440,41 @@
endfont
%***********************************************************************
beginfont("EN:change atom and substituent")
- sw_start_vector:=1;
- MCf(<30,!2,NH,!,SO,!,SOO,!3)
+ sw_clip:=1;
+ font_ht#:=15mm#;
+ MCf(<30,!2,NH,!2,SO,!2,SOO,!)
endfont
%***********************************************************************
beginfont("EN:Change color")
- sw_start_vector:=1;
+ font_ht#:=20mm#;
+ sw_clip:=1;
+ margin_left_right:=5mm;
MCf(<30,Ph,@(2,5)N,2:red,5:blue,3=green)
endfont
%***********************************************************************
-beginfont("EN:Chain start multi characters")
-% sw_start_vector:=1;
- MCd(1,1)(0,.9)(<30,COOH,!0,!3,COOH)
- MCd(.8,1)(.3,.1)(<30,COOH,!4,COOH)
+beginfont("EN:Make brock")
+ font_ht#:=20mm#;
+ sw_clip:=1;
+ sw_numberB:=1;
+ MCf(<30,!2,{,``1.2,!2,},!2)
endfont
%***********************************************************************
+beginfont("EN:Chain start multi characters")
+ font_ht#:=20mm#;
+ MCd(1,1)( 0,1)(<30,COOH,!0,!5,COOH)
+ MCd(.8,1)(.3,0)(<30,COOH,!6,COOH)
+endfont;
+%***********************************************************************
beginfont("EN:User definition")
- sw_start_vector:=1;
+ font_ht#:=18mm#;
iBuOH:='(!,/Me,!,OH);
MCf(<30,?6,@(4,6)/iBuOH)
endfont
%***********************************************************************
beginfont("EN:Inline definition")
- sw_start_vector:=1;
+ font_ht#:=18mm#;
+ margin_left_right:=5mm;
+ sw_clip:=1;
MCf(<30,!3,/'(!,/Me,!,OH),!3)
endfont
%***********************************************************************
@@ -306,136 +487,160 @@
@(2,6,9)/Me,@(1,5)//O)
endfont
%***********************************************************************
-beginfont("EN:max_bond_width")
+beginfont("EN:margin_left_right")
+ font_ht#:=20mm#;
+ sw_font_frame:=sw_mol_frame:=1;
+ margin_left_right:=0mm;
+ margin_top_bottom:=1mm;
+ MCd(1,1)(0.5, 1)(<30,CH3,!0,!17,CH3)
+ margin_left_right:=0.4mm;
+ MCd(1,1)(0.5,.5)(<30,CH3,!0,!17,CH3)
+ margin_left_right:=5mm;
+ MCd(1,1)(0.5, 0)(<30,CH3,!0,!17,CH3)
+endfont
+%***********************************************************************
+beginfont("EN:margin_top_bottom")
+ font_ht#:=20mm#;
+ sw_font_frame:=sw_mol_frame:=1;
+ margin_left_right:=5mm;
+ margin_top_bottom:=0mm;
+ MCd(1,1)(0.0, .5)(<30,Ph,5:/NH2)
+ margin_top_bottom:=0.4mm;
+ MCd(1,1)(0.5, .5)(<30,Ph,5:/NH2)
+ margin_top_bottom:=5mm;
+ MCd(1,1)(0.95, .5)(<30,Ph,5:/NH2)
+endfont
+%***********************************************************************
+beginfont("EN:offset_thickness")
+ font_ht#:=12mm#;
+ offset_thickness#:=0.0pt#; MCd(1,1)(0.08,0.5)(<30,Ph)
+ offset_thickness#:=0.2pt#; MCd(1,1)(.5,0.5)(<30,Ph)
+ offset_thickness#:=0.5pt#; MCd(1,1)(0.92,0.5)(<30,Ph) endfont
+%***********************************************************************
+beginfont("EN:offset_bond_gap")
+ font_ht#:=12mm#;
+ offset_bond_gap#:=0.0pt#;
+ MCd(1,1)(0.08, .5)(<30,Ph)
+ offset_bond_gap#:=0.3pt#; %<<== default
+ MCd(1,1)(.50, .5)(<30,Ph)
+ offset_bond_gap#:=1.0pt#;
+ MCd(1,1)(0.92, .5)(<30,Ph)
+endfont
+%***********************************************************************
+beginfont("EN:offset_atom")
+ font_ht#:=14mm#;
+ offset_atom#:=0.0pt#;
+ MCd(1,1)(0.08, .5)(<30,?6,@(3)O)
+ offset_atom#:=0.8pt#; %<<== default
+ MCd(1,1)(.5, .5)(<30,?6,@(3)O)
+ offset_atom#:=2.0pt#;
+ MCd(1,1)(0.92, .5)(<30,?6,@(3)O)
+endfont
+%***********************************************************************
+beginfont("EN:offset_wedge") offset_wedge#:=0.0pt#;
+ font_ht#:=14mm#;
+ MCd(1,1)(0.08, .5)(<30,?6,5:*/Me)
+ offset_wedge#:=0.4pt#; %<<== default
+ MCd(1,1)(.5, .5)(<30,?6,5:*/Me)
+ offset_wedge#:=1.0pt#;
+ MCd(1,1)(0.92, .5)(<30,?6,5:*/Me)
+endfont
+%***********************************************************************
+beginfont("EN:max_bond_length")
+ font_ht#:=25mm#;
sw_mol_frame:=1;
- max_bond_width:=0.10;
+ max_bond_length#:=6mm#;
MCd(1,1)(0, .5)(<30,Ph)
- max_bond_width:=0.15;
- MCd(1,1)(.33, .5)(<30,Ph)
- max_bond_width:=0.25;
+ max_bond_length#:=8mm#;
+ MCd(1,1)(.4, .5)(<30,Ph)
+ max_bond_length#:=20mm#; %<<== default
MCd(1,1)(1, .5)(<30,Ph)
endfont
%***********************************************************************
beginfont("EN:ratio_thickness_bond")
+ font_ht#:=12mm#;
ratio_thickness_bond:=0.005;
- MCd(1,.6)(0, .5)(<30,Ph)
- ratio_thickness_bond:=0.015;
- MCd(1,.6)(.5, .5)(<30,Ph)
+ MCd(1,1)(0.08, .5)(<30,Ph)
+ ratio_thickness_bond:=0.015; %<<== default
+ MCd(1,1)(.5, .5)(<30,Ph)
ratio_thickness_bond:=0.03;
- MCd(1,.6)(1, .5)(<30,Ph)
+ MCd(1,1)(0.92, .5)(<30,Ph)
endfont
%***********************************************************************
-beginfont("EN:offset_thickness")
- offset_thickness#:=0.0pt#; MCd(1,.3)(.1,0.5)(<30,Ph) endfont
-beginfont() offset_thickness#:=0.2pt#; MCd(1,.3)(.5,0.5)(<30,Ph) endfont
-beginfont() offset_thickness#:=0.5pt#; MCd(1,.3)(.9,0.5)(<30,Ph) endfont
-%***********************************************************************
beginfont("EN:ratio_char_bond")
+ font_ht#:=15mm#;
ratio_char_bond:=1.0;
- MCd(1,.6)(0, .5)(<30,?6,5:O,2:NH)
- ratio_char_bond:=1.5;
- MCd(1,.6)(.5, .5)(<30,?6,5:O,2:NH)
+ MCd(1,1)( 0, .5)(<30,?6,6:O,3:NH)
+ ratio_char_bond:=1.5; %<<== default
+ MCd(1,1)(.5, .5)(<30,?6,6:O,3:NH)
ratio_char_bond:=2.0;
- MCd(1,.6)(1, .5)(<30,?6,5:O,2:NH)
+ MCd(1,1)( 1, .5)(<30,?6,6:O,3:NH)
endfont
%***********************************************************************
beginfont("EN:ratio_bondgap_bond")
+ font_ht#:=12mm#;
ratio_bondgap_bond:=0.10;
- MCd(1,.6)(0, .5)(<30,Ph)
- ratio_bondgap_bond:=0.15;
- MCd(1,.6)(.5, .5)(<30,Ph)
+ MCd(1,1)(0.08, .5)(<30,Ph)
+ ratio_bondgap_bond:=0.15; %<<== default
+ MCd(1,1)(.5, .5)(<30,Ph)
ratio_bondgap_bond:=0.20;
- MCd(1,.6)(1, .5)(<30,Ph)
+ MCd(1,1)(0.92, .5)(<30,Ph)
endfont
%***********************************************************************
-beginfont("EN:offset_bond_gap") offset_bond_gap#:=0.0pt#;
-MCd(1,.3)(.1, .5)(<30,Ph) endfont
-beginfont() offset_bond_gap#:=0.3pt#; %<<== default
-MCd(1,.3)(.5, .5)(<30,Ph) endfont
-beginfont() offset_bond_gap#:=1.0pt#;
-MCd(1,.3)(.9, .5)(<30,Ph) endfont
-%***********************************************************************
beginfont("EN:ratio_atom_bond")
+ font_ht#:=15mm#;
ratio_atom_bond:=0.25;
- MCd(1,.6)(0, .5)(<30,?6,@(2,5)O)
- ratio_atom_bond:=0.33;
- MCd(1,.6)(.5, .5)(<30,?6,@(2,5)O)
+ MCd(1,1)(0.08, .5)(<30,?6,@(3)O)
+ ratio_atom_bond:=0.33; %<<== default
+ MCd(1,1)(.5, .5)(<30,?6,@(3)O)
ratio_atom_bond:=0.45;
- MCd(1,.6)(1, .5)(<30,?6,@(2,5)O)
+ MCd(1,1)(0.92, .5)(<30,?6,@(3)O)
endfont
%***********************************************************************
-beginfont("EN:offset_atom") offset_atom#:=0.0pt#;
-MCd(1,.3)(.1, .5)(<30,?6,@(2,5)O) endfont
-beginfont() offset_atom#:=0.8pt#; %<<== default
-MCd(1,.3)(.5, .5)(<30,?6,@(2,5)O) endfont
-beginfont() offset_atom#:=2.0pt#;
-MCd(1,.3)(.9, .5)(<30,?6,@(2,5)O) endfont
-%***********************************************************************
beginfont("EN:ratio_wedge_bond")
+ font_ht#:=15mm#;
ratio_wedge_bond:=0.1;
- MCd(1,.6)(0, .5)(<30,?6,5:*/Me)
- ratio_wedge_bond:=0.12;
- MCd(1,.6)(.5, .5)(<30,?6,5:*/Me)
+ MCd(1,1)(0.08, .5)(<30,?6,5:*/Me)
+ ratio_wedge_bond:=0.12; %<<== default
+ MCd(1,1)(.5, .5)(<30,?6,5:*/Me)
ratio_wedge_bond:=0.2;;
- MCd(1,.6)(1, .5)(<30,?6,5:*/Me)
+ MCd(1,1)(0.92, .5)(<30,?6,5:*/Me)
endfont
%***********************************************************************
-beginfont("EN:offset_wedge") offset_wedge#:=0.0pt#;
-MCd(1,.3)(.1, .5)(<30,?6,5:*/Me) endfont
-beginfont() offset_wedge#:=0.4pt#; %<<== default
-MCd(1,.3)(.5, .5)(<30,?6,5:*/Me) endfont
-beginfont() offset_wedge#:=1.0pt#;
-MCd(1,.3)(.9, .5)(<30,?6,5:*/Me) endfont
-%***********************************************************************
beginfont("EN:ratio_atomgap_atom")
+ font_ht#:=8mm#;
sw_atom_frame:=1;
ratio_atomgap_atom:=0.00;
- MCd(1,.6)(0, .5)(<30,?6,@(2,5)O)
- ratio_atomgap_atom:=0.050;
- MCd(1,.6)(.5, .5)(<30,?6,@(2,5)O)
+ MCd(1,1)(0, .5)(<-30,!2,@(2)O)
+ ratio_atomgap_atom:=0.050; %<<== default
+ MCd(1,1)(.5, .5)(<-30,!2,@(2)O)
ratio_atomgap_atom:=0.12;
- MCd(1,.6)(1, .5)(<30,?6,@(2,5)O)
+ MCd(1,1)(1, .5)(<-30,!2,@(2)O)
endfont
%***********************************************************************
beginfont("EN:ratio_chain_ring")
+ font_wd#:=70mm#;
+ font_ht#:=15mm#;
ratio_chain_ring:= 0.4;
- MCd(1,.6)(0, .5)(<30,?6,5:/Et)
- ratio_chain_ring:= 0.66;
- MCd(1,.6)(.5, .5)(<30,?6,5:/Et)
+ MCd(1,1)(0, .5)(<30,?6,4:/Et)
+ ratio_chain_ring:= 0.66; %<<== default
+ MCd(1,1)(.45, .5)(<30,?6,4:/Et)
ratio_chain_ring:= 1;
- MCd(1,.6)(1, .5)(<30,?6,5:/Et)
+ MCd(1,1)(1, .5)(<30,?6,4:/Et)
endfont
%***********************************************************************
beginfont("EN:ratio_zebragap_bond")
+ font_ht#:=15mm#;
ratio_zebragap_bond:=0.06;
- MCd(1,.6)(0, .5)(<30,Ph,5:/*Me`1)
- ratio_zebragap_bond:=0.12;
- MCd(1,.6)(.5, .5)(<30,Ph,5:/*Me`1)
+ MCd(1,1)(0.08, .5)(<-30,!2,2:/*Me`1)
+ ratio_zebragap_bond:=0.12; %<<== default
+ MCd(1,1)( .5, .5)(<-30,!2,2:/*Me`1)
ratio_zebragap_bond:=0.20;
- MCd(1,.6)(1, .5)(<30,Ph,5:/*Me`1)
+ MCd(1,1)(0.92, .5)(<-30,!2,2:/*Me`1)
endfont
%***********************************************************************
-beginfont("EN:margin_left_right")
- sw_font_frame:=sw_mol_frame:=1;
- margin_left_right:=0mm;
- MCd(1,1)(0.5, .9)(<30,CH3,!0,!17,CH3)
- margin_left_right:=0.4mm;
- MCd(1,1)(0.5, .5)(<30,CH3,!0,!17,CH3)
- margin_left_right:=5mm;
- MCd(1,1)(0.5, .1)(<30,CH3,!0,!17,CH3)
-endfont
-%***********************************************************************
-beginfont("EN:margin_top_bottom")
- sw_font_frame:=sw_mol_frame:=1;
- margin_top_bottom:=0mm;
- MCd(1,1)(0.0, .5)(<30,Ph,2:/OH,5:/NH2)
- margin_top_bottom:=0.4mm;
- MCd(1,1)(0.5, .5)(<30,Ph,2:/OH,5:/NH2)
- margin_top_bottom:=5mm;
- MCd(1,1)(1.0, .5)(<30,Ph,2:/OH,5:/NH2)
-endfont
-%***********************************************************************
beginfont("EN:Switwch numberingA")
+ font_ht#:=20mm#;
ratio_chain_ring:=1;
numberA_start:=3; numberA_end:=8;
sw_numberA:=1; MCd(1,1)(.5,.9)(<30,!9)
@@ -444,6 +649,7 @@
endfont
%***********************************************************************
beginfont("EN:Switwch numberingB")
+ font_ht#:=20mm#;
ratio_chain_ring:=1;
numberB_start:=3; numberB_end:=8;
sw_numberB:=1; MCd(1,1)(.5,.9)(<30,!9)
@@ -451,24 +657,45 @@
sw_numberB:=3; MCd(1,1)(.5,.1)(<30,!9)
endfont
%***********************************************************************
+beginfont("EN:Switwch Solid ratio")
+ font_ht#:=20mm#;
+ bond_len#:=8mm#;
+ MCd(1,1)(0,.5)(Ph,4:/Me)
+ sw_solid:=1;
+ bond_len#:=6mm#;
+ MCd(1,1)(1,.5)(Ph,4:/Me)
+endfont
+%***********************************************************************
+beginfont("EN:Switwch Expand")
+ font_ht#:=20mm#;
+ MCd(1,1)(0, .5)(<30,Ph,4:/COOH,3:/NH2)
+ sw_expand:=1;
+ MCd(1,1)(1, .5)(<30,Ph,4:/COOH,3:/NH2)
+endfont
+%***********************************************************************
beginfont("EN:Switwch substituent off")
- MCd(1,.5)( 0, .5)(<30,Ph,4:/Cl,3:/F)
+ font_ht#:=15mm#;
+ MCd(1,1)(.15, .5)(<30,Ph,4:/Cl,3:/F)
sw_subst_off:=1;
- MCd(1,.5)( 1, .5)(<30,Ph,4:/Cl,3:/F)
+ MCd(1,1)(.85, .5)(<30,Ph,4:/Cl,3:/F)
endfont
%***********************************************************************
beginfont("EN:Switwch bondtype off")
- MCd(1,.5)( 0, .5)(<30,Ph,4:/Cl,3:/F)
+ font_ht#:=15mm#;
+ MCd(1,1)(.15, .5)(<30,Ph,4:/Cl,3:/F)
sw_bond_single:=1;
- MCd(1,.5)( 1, .5)(<30,Ph,4:/Cl,3:/F)
+ MCd(1,1)(.85, .5)(<30,Ph,4:/Cl,3:/F)
endfont
%***********************************************************************
beginfont("EN:Switwch start vector")
+ font_ht#:=15mm#;
+ MCd(1,1)(.1, .5)(<30,Ph,4:/Cl,3:/F)
sw_start_vector:=1;
- MCf(<30,Ph,4:/Cl,3:/F)
+ MCd(1,1)(.9, .5)(<30,Ph,4:/Cl,3:/F)
endfont
%***********************************************************************
beginfont("EN:Switwch font frame")
+ font_ht#:=15mm#;
margin_left_right:=5mm;
margin_top_bottom:=2mm;
sw_font_frame:=3;
@@ -476,71 +703,81 @@
endfont
%***********************************************************************
beginfont("EN:Switwch molecular frame")
- MCd(1,.5)( 0, .5)(<30,Ph,4:/Cl,3:/F)
+ font_ht#:=15mm#;
sw_mol_frame:=1;
- MCd(1,.5)( 1, .5)(<30,Ph,4:/Cl,3:/F)
+ MCf(<30,Ph,4:/Cl,3:/F)
endfont
%***********************************************************************
beginfont("EN:Switwch atom frame")
+ font_ht#:=15mm#;
sw_atom_frame:=1;
MCf(<30,Ph,4:/COOH,3:/OH)
endfont
%***********************************************************************
-beginfont("EN:Switwch Solid ratio")
- MCd(1,.7)( 0, .5)(<30,Ph,4:/Cl,3:/F)
- sw_solid:=1;
- ratio_bond_width:=0.08;
- MCd(1,.7)( 1, .5)(<30,Ph,4:/Cl,3:/F)
+beginfont("EN:Switwch clipping")
+ font_ht#:=15mm#;
+ sw_mol_frame:=1;
+ MCf(<30,Ph,4:/Cl,3:/F)
endfont
-%***********************************************************************
-beginfont("EN:Switwch Expand")
- MCd(.5,.5)(0, .5)(<30,Ph,4:/COOH,3:/NH2)
- sw_expand:=1;
- MCd(.6,.6)(1, .5)(<30,Ph,4:/COOH,3:/NH2)
+beginfont("EN:Switwch clipping")
+ font_ht#:=15mm#;
+ sw_mol_frame:=1;
+ sw_clip:=1;
+ MCf(<30,Ph,4:/Cl,3:/F)
endfont
%***********************************************************************
beginfont("EN:MCd()")
+ font_ht#:=20mm#;
sw_font_frame:=1;
sw_mol_frame:=1;
- MCd(1,.8)(0.2,0.9)(<30,Ph,2:/OH,5:/NH2)
+ MCd(1,0.8)(0.1,1)(<30,Ph,4:/Cl,3:/F)
sw_mol_frame:=1;
- MCd(1,.8)(0.8,0.1)(<30,Ph,2:/OH,5:/NH2)
+ MCd(1,0.8)(0.9,0)(<30,Ph,4:/Cl,3:/F)
endfont
%***********************************************************************
beginfont("EN:MCf()")
+ font_ht#:=20mm#;
sw_font_frame:=1;
sw_mol_frame:=1;
- MCf(<30,Ph,2:/OH,5:/NH2)
+ MCf(<30,Ph,4:/Cl,3:/F)
endfont
%***********************************************************************
beginfont("EN:Local setting")
- sw_mol_frame:=1;
- MCd(1,.4)(0.0,0.5)(Ph)
+ font_ht#:=15mm#;
+ MCd(1,1)(0.0,0.5)(Ph)
+ ratio_thickness_bond:=0.05;
+ MCd(1,1)(0.5,0.5)(Ph)
+ ratio_thickness_bond:=0.015;
+ MCd(1,1)(1.0,0.5)(Ph)
endfont
-beginfont() MCd(1,.4)(0.5,0.5)(Ph) endfont
-beginfont() MCd(1,.4)(1.0,0.5)(Ph) endfont
%***********************************************************************
-sw_mol_frame:=1;
beginfont("EN:Global setting")
- MCd(1,.4)(0.0,0.5)(Ph) endfont
-beginfont() MCd(1,.4)(0.5,0.5)(Ph) endfont
-beginfont() MCd(1,.4)(1.0,0.5)(Ph) endfont
-sw_mol_frame:=0;
+ font_ht#:=15mm#;
+ ratio_thickness_bond:=0.05;
+ MCd(1,1)(0.0,0.5)(Ph)
+ MCd(1,1)(0.5,0.5)(Ph)
+ MCd(1,1)(1.0,0.5)(Ph)
+endfont
%***********************************************************************
+sw_clip:=1;
%% Output molecular infomation
beginfont()
-sw_logout:=sw_info_weight:=sw_info_formula:=1;
-MCf(<30,?6,-4=?5,$(3,8)dl,@(2,6,7,9)N,@(2,6,9)/Me,@(1,5)//O)
+ font_ht#:=15mm#;
+ sw_logout:=sw_info_weight:=sw_info_formula:=1;
+ MCf(<30,?6,-4=?5,$(3,8)dl,
+ @(2,6,7,9)N,@(2,6,9)/Me,@(1,5)//O)
endfont
%***********************************************************************
%% Output additional infomation
beginfont("EN:Tocopherol","CAS:59-02-9","FM:C29H50O2","MW:430.71")
-sw_logout:=1;
-MCf(<30,Ph,3=?6,7:O,@(1,2,5)/Me,8:/*Me^60,6:/OH,8\,|,!12,@(4,8)/*Me,12:/Me)
+ font_ht#:=15mm#;
+ sw_logout:=1;
+ MCf(<30,Ph,3=?6,7:O,@(1,2,5)/Me,8:/*Me^60,6:/OH,8\,|,!12,@(4,8)/*Me,12:/Me)
endfont
%***********************************************************************
%% Change infomation separater
beginfont("EN:Ampicillin","CAS:69-53-4","FM:C16H19N3O4S","MW:349.40")
+ font_ht#:=15mm#;
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,
@@ -549,15 +786,17 @@
endfont
%***********************************************************************
beginfont("EN:Cholesterol","CAS:57-88-5","FM:C27H46O","MW:386.65")
+ font_ht#:=15mm#;
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,!,
+ 10:/*H^180,11:/*H^-60,17:/*H^-54,
+ -1\^18,/*Me,-60,!3,/Me,!,
)
endfont
%***********************************************************************
beginfont("EN:Warfarin","CAS:81-81-2","FM:C19H16O4","MW:308.33")
+ font_ht#:=25mm#;
MCf(
<30,Ph,3=?6,8=dl,10:O,7:/OH,9://O,8\,/Ph`1,60,!,//O,!
)
@@ -564,6 +803,7 @@
endfont
%***************************************************************************
beginfont("EN:Limonin")
+ font_ht#:=30mm#;
MCf(<30,?6,$(-3,-4)?6,-5=?3,-2=wf,-1=wb,6=?5,-4=?6,-5=wf,
@(13,15,17,20)O,@(3,12,21)//O,
@(4~wf^60,8~zf^60,18^35,18^-35)/Me,@(1^60,5^180,16^60)/*H,
@@ -571,11 +811,13 @@
endfont
%***************************************************************************
beginfont("EN:Sesamine")
+ font_ht#:=25mm#;
MCf(<54,?5,1=?5,@(4,7)O,@(1^-54,2^54)*/H,
#5*\^-12,Ph,|,-3=?5,@(-1,-3)O,#8*\^-12,Ph,|,-3=?5,@(-1,-3)O)
endfont
%***************************************************************************
beginfont("EN:Colchicine","CAS:477-27-0","FM:C21H23NO6","MW:385.41")
+ font_ht#:=25mm#;
MCf(<30,Ph,@(1,2,6)/OMe,|,-4=?7,
|,-5=?7,$(-1,-4,-6)dl,-2://O,-3:/OH,
#9\,NH,!,//O,!)
@@ -582,6 +824,7 @@
endfont
%***************************************************************************
beginfont("EN:Lycorine","CAS:476-28-8","FM:C16H17NO4","MW:287.31")
+ font_ht#:=25mm#;
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
@@ -589,6 +832,7 @@
endfont
%***********************************************************************
beginfont("EN:Gibberellin A3","CAS:77-06-5","FM:C19H22O6","MW:346.37");
+ font_ht#:=20mm#;
MCf(<18,?5,3=?7,5=?6[12],8*,160`1.3,&3,13=dl,6=wf,8=wb,
5*,40~zf`1,O,50,//O^180,&14~zb,
2:/COOH,7://Me,13:*/OH,8:/*OH,14:*/Me,@(1^60,4^60)*/H)
@@ -595,16 +839,30 @@
endfont
%***************************************************************************
beginfont("EN:Quinine","CAS:130-95-0","FM:C20H24N2O2","MW:324.42")
+ font_ht#:=25mm#;
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","CAS:51-55-8","FM:C17H23NO3","MW:289.37")
+ font_ht#:=25mm#;
MCf(<-30,O,!,//O,!,!,Ph,
#1\~zb^-120,|,?7,6*\^190`1.12,N,/Me,&3~wb,#3\~wv,!,OH)
endfont
%***************************************************************************
+beginfont("EN:Rotenone");
+ font_ht#:=30mm#;
+ MCf(<-60,?5,$(-3,-2,-3,-4)?6,$(7,9,-2,-4)dl,$(3,17)dr,
+ @(2,13,16)O,10://O,@(11^-60,12^60)*/H,@(-2,-3)/OMe,1*\,/Me,!~dl)
+endfont;
+%***************************************************************************
+beginfont("EN:Pyrethrin I");
+ MCf(<30,?3,@(3^35~wf,3^-35~zf)/Me,1*\,!~dl,iPr,
+ 2\*,//O,!,O,-36~zb,|,?5,-2=d,-1:/Me,-3://O,-2\,!4,$(-1,-3)dl)
+endfont;
+%***************************************************************************
beginfont("EN:Validamycin")
+ font_ht#:=20mm#;
MCf(<30,?6,@(5,6)/OH,3\,-60,OH,
#4\,O,-60,|,?6,2:O,@(3,4,5,6)/OH,
#1\,NH,!,|,?6,2=d,@(4,5,6)/OH,-4\,!,OH)
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 2016-10-10 21:13:18 UTC (rev 42247)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex 2016-10-10 21:14:36 UTC (rev 42248)
@@ -1,11 +1,14 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format manual by Akira Yamaji 2016.08.21
+% Molecular Coding Format manual by Akira Yamaji 2016.10.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{article}
-\usepackage{graphicx}
-%%%%\usepackage[dvipdfmx]{graphicx}
+%%%%\usepackage{graphicx}
+\usepackage[dvipdfm]{graphicx}
%%%%\usepackage[pdftex]{graphicx}
%%%%\usepackage{epstopdf}
+\usepackage[dvipdfmx]{hyperref}
+%%%%\usepackage[pdftex]{hyperref}
+\hypersetup{colorlinks=true,linkcolor=blue}
\topmargin=-18mm
\textheight=254mm
\textwidth=168mm
@@ -16,23 +19,17 @@
\newcount \fontnum%
\newcount \tempnum%
\newdimen \htman%
-\newdimen \gpman%
-\htman=47mm%
-\gpman=4mm%
-\fontnum=0%
+\newdimen \wdman%
+\newdimen \htmans%
+\htman=45mm%
+\wdman=94mm%
+\htmans=42mm%
+\fontnum=20%
\tempnum=1%
%----------------------------------------------------------------------------
\font\@strufont=mcf_man_soc\relax%
%----------------------------------------------------------------------------
-\def\MCFtitle#1{\framebox{\sf No.\the\tempnum}\hspace{2mm}\bf #1}
-%----------------------------------------------------------------------------
-\def\MCFstru{%
- \rlap{\makebox(72,4)[t]{\makebox(68,48){\@strufont\char\fontnum}}}%
- \advance\fontnum\@ne\relax}%
-\def\MCFstructure{%
- \makebox(72,4)[t]{\frame{\
- \makebox(68,48){\@strufont\char\fontnum}}}%
- \advance\fontnum\@ne\relax\advance\tempnum\@ne\relax}%
+\def\MCFstructure{\hspace{5mm}{\@strufont\char\fontnum}\advance\fontnum\@ne\relax}%
%--------------------------------------------------------------------
\def\@F{F}\def\@C{C}\def\@EN{EN}\def\@NO{NO}\def\@cMW{cMW}\def\@cFM{cFM}%
\def\@fst#1:#2;{#1}\def\@sec#1:#2;{#2}%
@@ -48,10 +45,10 @@
\ifx\@tag\@cFM\edef\CALfm{\@var}\fi
\fi}%
\def\put at char{%
- \begin{picture}(84,50)%
- \put(0,45){\bf [\MOLnum]\MOLnameE}%
- \put(5,40){\small\tt FM:\CALfm{ }MW:\CALmw}%
- \put(10,0){\font\@strufont=\MOLfile\relax%
+ \begin{picture}(84,30)%
+ \put(0,25){\bf [\MOLnum]\MOLnameE}%
+ \put(5,20){\small\tt FM:\CALfm{ }MW:\CALmw}%
+ \put(5,0){\font\@strufont=\MOLfile\relax%
\hbox{\@strufont\char\MOLchar}}%
\end{picture}%
}
@@ -58,1154 +55,753 @@
%----------------------------------------------------------------------------
\def\INFO#1{\@for\@temp:=#1\do{\mol at sel\@temp}\put at char}%
%----------------------------------------------------------------------------
+\def\figex#1#2#3#4{%
+\makebox[5mm]{}%%
+\makebox[#1]{\tt #2}%
+\makebox[#1]{\tt #3}%
+\makebox[#1]{\tt #4}}%
+%----------------------------------------------------------------------------
\begin{document}
-\begin{center}
- {\LARGE\bf Molecular Coding Format manual}\vspace{3mm}\\
- Author : Akira Yamaji \quad Date : \today\\
- Located at : http://www.ctan.org/pkg/mcf2graph\vspace{3mm}\\
-\begin{minipage}{148mm}
-\quad Molecular Coding Format(MCF) is new linear notation represent chemical
- structure diagrams. This 'Coding' is named from coding(programing) technique
- 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). \\
-\end{minipage}\\
-\end{center}
+\title{\Huge\sf Molecular Coding Format manual}
+\author{Akira Yamaji}
+\date{\today}
+\maketitle
+\begin{center} Located at http://www.ctan.org/pkg/mcf2graph \end{center}
+%-----------------------------------------------------------------------------
+\vspace{10mm}
+{\@strufont%
+\makebox[10mm]{}\char0\raisebox{10mm}{\char1}\char2\raisebox{10mm}{\char3}\\
+\makebox[10mm]{}\char4\raisebox{10mm}{\char5}\char6\raisebox{10mm}{\char7}\\
+\makebox[10mm]{}\char8\raisebox{10mm}{\char9}\char10\raisebox{10mm}{\char11}\\
+\makebox[10mm]{}\char12\raisebox{10mm}{\char13}\char14\raisebox{10mm}{\char15}\\
+\makebox[10mm]{}\char16\raisebox{10mm}{\char17}\char18\raisebox{10mm}{\char19}\\}
+%-----------------------------------------------------------------------------
+\twocolumn
+\tableofcontents
+%-----------------------------------------------------------------------------
\linethickness{0.08mm}%
-\noindent%
%----------------------------------------------------------------------------
-{\bf (Molecular definition file)}
-\begin{verbatim}
-%-------------------------------------------------------------------------
-input mcf2graph.mf; % input macro
-%-------------------------------------------------------------------------
-sw_auxout:=1; % aux(information) file output on > Gloval setting
-sw_numberA:=0; % numbering atom off >
-sw_numberB:=0; % numbering bond off >
-sw_expand:=0; % substituent expand mode off >
-sw_start_vector:=0; % start vector output off >
-sw_font_frame:=0; % font frame off >
-font_wd#:=60mm#; % font width >
-font_ht#:=40mm#; % font height >
-var3:="cal_MW"; tag3:="cMW"; > AUX file table
-var4:="cal_FM"; tag4:="cFM"; >
-outputformat:="png"; hppp:=vppp:=0.1; > PNG output
-outputtemplate:="%j-%3c.png"; >
-%-------------------------------------------------------------------------
-beginfont("NO:1","EN:Ampicillin") > begin font(information)
- MCf(<45,?4,2:N,2=?5,-1:S, > begin MCF (1)
- @(3^45,4^-45)/*H,1://O^15,5:/*COOH^-18, >
- @(6^35,6^-35)/Me, >
- 4\^75,NH,!,//O,!,/*NH,!,Ph) > end MCF
-endfont > end font
-%------------------------------------------------------------------------
-beginfont("NO:2","EN:Cholesterol") > begin font(information)
- MCf(<30,?6,$(-4,-2)?6,-4=?5,7=dl, > begin MCF (2)
- 1:*/OH,@(4,12)*/Me^60,9:*/H^60, >
- 10:/*H^180,@(11,-1)/*H^-60, >
- -1\^17,/*Me,!4,/Me,!) > end MCF
-endfont > end font
-%------------------------------------------------------------------------
-bye
-
-\end{verbatim}
-%------------------------------------------------------------------------
-{\bf (Molecular structure output)}\vspace{5mm}\\
-\INFO{F:mcf_man_soc,C:90,NO:1,cMW:349.40462,cFM:C16H19N3O4S,EN:Ampicillin}%
-\INFO{F:mcf_man_soc,C:91,NO:2,cMW:386.6532,cFM:C27H46O,EN:Cholesterol}%
\newpage
-%------------------------------------------------------------------------
-\noindent%
-{\bf (Molecular information output)}\vspace{2mm}\\
-'filename'-info.aux : for use in \TeX, it takes over filename,
-char number, molecular information,etc.
-\begin{verbatim}
-(sw_auxfix=0)
-F:mcf_man_soc;C:90;cMW:349.40462;cFM:C16H19N3O4S;EN:Ampicillin
-F:mcf_man_soc;C:91;cMW:386.6532;cFM:C27H46O;EN:Cholesterol
- .....................................................
- .....................................................
-
-(sw_auxfix=1)
-F;C;cMW;cFM;EN
-mcf_man_soc;90;349.40462;C16H19N3O4S;Ampicillin
-mcf_man_soc;91;386.6532;C27H46O;Cholesterol
- ......................................
- ......................................
-
-( tag : variable )
-F : filename C : char number NO : serial number EN : english name
-cMW : molecular weight calculated cFM : molecular formula calculated
-MW : molecular weight from literature data
-
-\end{verbatim}
-%----------------------------------------------------------------------------
-{\bf (LaTeX file example)}
-%############################################################################
-\begin{verbatim}
-%----------------------------------------------------------------------------
-\documentclass[a4paper]{article}
-\usepackage{graphicx}
-\pagestyle{empty}
-\makeatletter%
-%--------------------------------------------------------------------
-\def\@F{F}\def\@C{C}\def\@EN{EN}\def\@NO{NO}\def\@MW{MW}\def\@FMc{FMc}%
-\def\@fst at param#1:#2;{#1}\def\@sec at param#1:#2;{#2}%
-\def\mol at sel#1{%
-\if#1\empty\relax\else%
- \edef\@tag{\expandafter\@fst at param#1;}%
- \edef\@var{\expandafter\@sec at param#1;}%
- \ifx\@tag\@F\edef\MOLfile{\@var}\fi%
- \ifx\@tag\@C\edef\MOLchar{\@var}\fi%
- \ifx\@tag\@EN\edef\MOLnameE{\@var}\fi%
- \ifx\@tag\@NO\edef\MOLnum{\@var}\fi
- \ifx\@tag\@MW\edef\CALmw{\@var}\fi
- \ifx\@tag\@FMc\edef\CALfm{\@var}\fi
-\fi}%
-\def\put at char{%
- \begin{picture}(84,42)%
- \put(0,38){\bf [\MOLnum]\MOLnameE{ }\small\tt/FM:\CALfm/MW:\CALmw}%
- \put(10,0){\font\@strufont=\MOLfile\relax%
- \hbox{\@strufont\char\MOLchar}}%
- \end{picture}%
-\def\INFO#1{\@for\@temp:=#1\do{\mol at sel\@temp}\put at char}%
-\makeatother
-%--------------------------------------------------------------------
-\begin{document}
-\unitlength=1mm%
-\INFO{F:mcf_man_soc,C:90,NO:1,cMW:349.40462,cFM:C16H19N3O4S,EN:Ampicillin}%
-\INFO{F:mcf_man_soc,C:91,NO:2,cMW:386.6532,cFM:C27H46O,EN:Cholesterol}%
-\end{document}
-%--------------------------------------------------------------------
-\end{verbatim}\vspace{5mm}%
-%############################################################################
-%----------------------------------------------------------------------------
-\noindent
+\section{Introduction}
+Molecular Coding Format(MCF) is new linear notation
+ represent chemical structure diagrams.
+This 'Coding' is named from coding(programing) technique
+like adressing,grouping,macro,etc.
+There are no Meta language commands in MCF.
+mcf2graph.m convert MCF file to graphics file
+pk font,PNG,SVG,EPS or MDL MOL file(V2000).\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Chain(1)}
+\section{MCF syntax}
+\subsection{Make bond}
+\subsubsection{Chain}
\begin{verbatim}
-real number plus (+): anticlockwize
-real number minus(-): clockwize
+ real number plus (+): anticlockwize
+ real number minus(-): clockwize
-<30,-60,60,-90,120,-90,60
-
+ <30,-60,60,-90,120,-90,60
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Chain(2)}
\begin{verbatim}
-! : take value 60 or -60 depend on
+ ! : take value 60 or -60 depend on
current angle and enviroment
-!6 : !,!,!,!,!,!
+ !6 : !,!,!,!,!,!
<30,!,!,!,!,!,!
<30,!6
-
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Jump to atom and branch bond}
+\subsubsection{Jump and branch bond}
\begin{verbatim}
-n* : Jump to An
-
+ n* : Jump to An
+ ** An: atom number(-999<=n<=4095)
+
<30,!6,3*,0,!,5*,-30
+\end{verbatim}
+\MCFstructure
+%------------------------------------
+\begin{verbatim}
+ 3\ : 3*,0
-** An(-999<=n<=4095): atom number
+ <30,!6,3\,!
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Jump to atom and branch bond}
+\subsubsection{Branch bond}
\begin{verbatim}
-3\ : 3*,0
+ 2\ : 2*,0
+ 4*\ : 4*,0~wf
+ 6\* : 6*,0~zf
+ 8\\ : 8*,0~dm
- <30,!6,3\,!
+ <30,!8,2\,!,4*\,!,6\*,!,8\\,!
+\end{verbatim}
+\MCFstructure
+%-----------------------------------------------------------------------------
+\begin{verbatim}
+ 2\~dr : 2*,0~dr
+ 4\`1.5 : 4*,0`1.5
+ 6\^15 : 6*,0^15
+ <-30,!6,
+ 2\~dr,!,
+ 4\`1.5,!,
+ 6\^15,-60
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Connect atom}
+\subsubsection{Connect atom}
\begin{verbatim}
-&n : Connect to An
+ &n : Connect to An
<30,!6,3\,!,&5
-
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Ring}
+\subsubsection{Ring}
\begin{verbatim}
-?n : n membered ring
-
- ?6
-
- ** ?6 : <-120,60,60,60,60,60,&1
- ** ?n(3<=n<=20)
- ** bold arrow is default angle and position
+ ?n : n membered ring(3<=n<=20)
+ ?6 : <-120,60,60,60,60,60,&1
+ ?6
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Rotate current angle}
+\subsubsection{Rotate current angle}
\begin{verbatim}
-<angle : rotate current angle
+ <angle : rotate current angle
- ``1,
- 0~vf,0~vf,<90,0~vf,<-90,0~vf
+ 0,0,<90,0,<-90,0,0,$(1,2,3,4,5)vf
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change bond type (1)}
+\subsection{Change bond type}
+\subsubsection{Double,triple}
\begin{verbatim}
-a~type : ~~type,a
-dm : double middle
-dl : double left side
-dr : double right side
-tm : triple
+ a~type : ~~type,a
+ dm : double middle
+ dl : double left side
+ dr : double right side
+ tm : triple
<30,!~dm,!~dl,!~dr,!~tm
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change bond type (2)}
+\subsubsection{Wedge}
\begin{verbatim}
-a~type : ~~type,a
-wf : wedge forward
-wb : wedge backward
-zf : wedge dotted
-zb : wedge dotted backward
-vf : vector forward
+ wf : wedge forward
+ wb : wedge backward
+ zf : wedge dotted
+ zb : wedge dotted backward
- <30,!~wf,!~wb,!~zf,!~zb,!~vf,!~vb
+ <30,!~wf,!,!~wb,!,!~zf,!,!~zb
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change bond type (3)}
+\subsubsection{Vector}
\begin{verbatim}
-Bn=bond type : change bond type at Bn
-vb : vector backward
-dt : dotted
-wv : wave
-bd : broad
-bz : broad dotted
+ vf : vector forward
+ vb : vector backward
- <30,!5,1=vb,2=dt,3=wv,4=bd,5=bz
+ <30,!~vf,!,!~vb
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change bond type (4)}
+\subsubsection{Dotted,wave,broad}
\begin{verbatim}
-$(2,4,6)dr : 2=dr,4=dr,6=dr
+ Bn=bond type : change bond type at Bn
+ dt : dotted
+ wv : wave
+ bd : broad
+ bz : broad dotted
-<30,!7,$(2,4,6)dr
+ <30,!7,1=dt,3=wv,5=bd,7=bz
+\end{verbatim}
+\MCFstructure
+%-----------------------------------------------------------------------------
+\subsubsection{Change multi bond type}
+\begin{verbatim}
+ $(2,4,6)dr : 2=dr,4=dr,6=dr
-** <30,!7,2=dr,4=dr,6=dr
+ <30,!7,$(2,4,6)dr
+ ** <30,!7,2=dr,4=dr,6=dr
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Over line}
+\subsubsection{Over line}
\begin{verbatim}
-si_ : single over line
-wf_ : wedge forward over line
-wb_ : wedge backward over line
-bd_ : broad over line
+ si_ : single over line
+ wf_ : wedge forward over line
+ wb_ : wedge backward over line
+ bd_ : broad over line
-<-30,!8`.4,!`.2,60`.6,90`3,
-@(2~si_,4~wf_,6~wb_,8~bd_)/Me`1
-
+ <-30,!8,!,60,90`8,
+ @(2~si_,4~wf_,6~wb_,8~bd_)/Me`2
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change bond length (1)}
+\subsection{Change bond length}
+\subsubsection{Chain length}
\begin{verbatim}
-(!,!n)`length : change length of !,!n
+ (!,!n)`length : change length of !,!n
<30,!2,!2`1.2,!2
-** !2`1.2 : '`1.2,!2
+ ** !2`1.2 : '`1.2,!2
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change bond length (2)}
\begin{verbatim}
``length : change all bond length after
<30,!2,``1.2,!4
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Make block}
+\subsubsection{Ring length}
\begin{verbatim}
-{ : start brock
-} : end brock
+ ?n`length : change ring length
- <30,!2,{,``1.2,!2,},!2
-\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change ring length}
-\begin{verbatim}
-?n`length : change ring length
-
?6,4\,?6`1.2,5=?6,11=?6
-** fused ring size depend on
+ ** fused ring size depend on
attached bond length
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change atom (1)}
+\newpage
+\subsection{Change atom}
+\subsubsection{Insert atom}
\begin{verbatim}
-Insert hetero atom
+ Insert hetero atom
<30,!2,O,!2,N,!2
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change atom (2)}
+\subsubsection{Addressed atom}
\begin{verbatim}
-2:O : change A2 C to O
-@(3,5)N : change A3,A5 C to N
+ 2:O : change A2 C to O
+ @(3,5)N : change A3,A5 C to N
<30,!6,2:O,@(3,5)N
-
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change atom (3)}
+\subsubsection{Brock address}
\begin{verbatim}
-2:N : change A2 C to N
+ | : divide brock
- ?6,4\,?6,2:N
+ ?6,4\,|,?6,2:O
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change atom (brock address 1)}
\begin{verbatim}
-| : divide brock
+ || : reset brock adress
-?6,4\,|,?6,2:O
+ ?6,4\,|,?6,||,2:N
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change atom (brock address 2)}
+\subsubsection{Absolute address}
\begin{verbatim}
-|| : reset brock adress
+ #2:N : change A#2 C to N
+ ** #n : (1<=n<=3095)
-?6,4\,|,?6,||,2:N
-\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change atom (absolute address)}
-\begin{verbatim}
-#2:N : change A#2 C to N
-
?6,4\,|,?6,#2:N
-
-** #n : (1<=n<=3095)
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change atom (relative address)}
+\subsubsection{Relative address}
\begin{verbatim}
--2:N : change A(-2) C to N
+ -2:N : change A(-2) C to N
+ ** -n : (1<=n<=999)
?6,4\,?6,-2:N
-
-** -n : (1<=n<=999)
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Fuse ring (attached 1 bond)}
+\subsection{Fuse ring}
+\subsubsection{Attached 1 bond}
\begin{verbatim}
-?6,3=?6 : fuse ?6 at B3
+ ?6,3=?6 : fuse ?6 at B3
+ ** Bn(n:-999<=n<=4095): bond number
?6,3=?6
-
-** Bn(n:-999<=n<=4095): bond number
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Fuse large ring (attached 1 bond)}
\begin{verbatim}
-?6,3=?6[13] : fuse ?6[13] at B3
-?6[13]: 6 membered ring scaled 13/10
+ ?6,3=?6[13] : fuse ?6[13] at B3
+ ?6[13]: 6 membered ring scaled 13/10
+ ** ?m[n] (5<=m<=8,11<=n<=15)
?6,3=?6[13]
-
-** ?m[n] (5<=m<=8,11<=n<=15)
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Fuse multi ring (attached 1 bond)}
\begin{verbatim}
-
-?6,$(-3,-4,-4,-2,-2,-4,-4)?6
-?6,$(4,8,13,20,25,28,33)?6
-
+ ?6,$(-3,-4,-4,-2,-2,-4,-4)?6
+ ?6,$(4,8,13,20,25,28,33)?6
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Fuse ring (attached 2 bond)}
+\subsubsection{Attached 2 bond}
\begin{verbatim}
-(4,11)=?6[4] : fuse 4/6 ring to B11..B4
-(4,11)=?5[3] : fuse 3/5 ring to B11..B4
-(4,11)=?4[2] : fuse 2/4 ring to B11..B4
+ (4,11)=?6[4] : fuse 4/6 ring to B11..B4
+ (4,11)=?5[3] : fuse 3/5 ring to B11..B4
+ (4,11)=?4[2] : fuse 2/4 ring to B11..B4
+ ** ?m[n] (4<=m<=6,n=m-2)
-MCd(1,.7)( 0,0)(<30,?6,3=?6,(11,4)=?6[4])
-MCd(1,.6)(.54,1)(<30,?6,3=?6,(11,4)=?5[3])
-MCd(1,.6)( 1,0)(<30,?6,3=?6,(11,4)=?4[2])
-
-** ?m[n] (4<=m<=6,n=m-2)
+ MCd(1,.7)( 0,0)(<30,?6,3=?6,(11,4)=?6[4])
+ MCd(1,.6)(.54,1)(<30,?6,3=?6,(11,4)=?5[3])
+ MCd(1,.6)( 1,0)(<30,?6,3=?6,(11,4)=?4[2])
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Fuse ring (attached 3 bond)}
+\subsubsection{Attached 3 bond}
\begin{verbatim}
-(16,4)=?6[3] : fuse 3/6 ring to B16..B4
-(16,4)=?5[2] : fuse 2/5 ring to B16..B4
+ (16,4)=?6[3] : fuse 3/6 ring to B16..B4
+ (16,4)=?5[2] : fuse 2/5 ring to B16..B4
+ ** ?m[n] (5<=m<=6,n=m-3)
-MCd(1,.55)(0,0)(?6,$(3,10)?6,(16,4)=?6[3])
-MCd(1,.55)(1,0)(?6,$(3,10)?6,(16,4)=?5[2])
-
-** ?m[n] (5<=m<=6,n=m-3)
+ MCd(1,.55)(0,0)(?6,$(3,10)?6,(16,4)=?6[3])
+ MCd(1,.55)(1,0)(?6,$(3,10)?6,(16,4)=?5[2])
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Fuse ring (attached 4 bond)}
+\subsubsection{Attached 4 bond}
\begin{verbatim}
-(21,4)=?6[2] : fuse 2/6 ring to B21..B4
+ (21,4)=?6[2] : fuse 2/6 ring to B21..B4
-MCf(<-30,?6,$(3,10,15)?6,(21,4)=?6[2])
+ MCf(<-30,?6,$(3,10,15)?6,(21,4)=?6[2])
-** ?m[n] (m=6,n=2)
+ ** ?m[n] (m=6,n=2)
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Spiro ring}
+\subsubsection{Spiro ring}
\begin{verbatim}
-4*,?5 : add ?5(5 membered ring) at A4
+ 4*,?5 : add ?5(5 membered ring) at A4
-<30,!6,4*,?5
+ <30,!6,4*,?5
-An* : jump to An
+ An* : jump to An
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Branch bond (1)}
+\subsection{Substituent}
+\subsubsection{Insert substituent}
\begin{verbatim}
-2\ : 2*,0
-4*\ : 4*,0~wf
-6\* : 6*,0~zf
-8\\ : 8*,0~dm
+ <30,!,/Me,!,/Et,!3,/Pr,!,/iPr,
+ !3,/tBu,!,/Ph^-30,!
-MCf(<30,!8,2\,!,4*\,!,6\*,!,8\\,!)
+ ** Me:methyl Et:ethyl
+ Pr:propyl iPr:isopropyl
+ tBu:tertial buthyl Ph:phenyl
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Branch bond (2)}
+\subsubsection{Insert modified substituent}
\begin{verbatim}
-2\~dr : 2*,0~dr
-4\`1.5 : 4*,0`1.5
-6\^15 : 6*,0^15
+ / : single
+ // : double
+ */ : wedge forward
+ /* : wedge dotted forward
+ ** : direct
-MCf(<-30,
- !6,2\~dr,!,4\`1.5,!,6\^15,-60)
-
+ <30,!,//O,!,/*H,!,*/H,!,/?3,!,**?3,!
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Insert substituent(1)}
\begin{verbatim}
-MCf(<30,
-!,/Me,!,/Et,!3,/Pr,!,/iPr,!3,/tBu,!,/Ph^-30,!)
+ ~ : change type
+ ^ : change angle
+ ` : change length
+ > : change enviroment
-** Me:methyl Et:ethyl
- Pr:propyl iPr:isopropyl
- tBu:tertial buthyl Ph:phenyl
+ <30,``1,!,/Me~zf`2^30,!,/Me~zf`2^30,
+ !2,*/Pr>lr,!2,*/Pr>rl,!)
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Insert substituent(2)}
+\subsubsection{Add substituent}
\begin{verbatim}
-/ : single
-// : double
-*/ : wedge forward
-/* : wedge dotted forward
-** : direct
-
-MCf(<30,!,//O,!,/*H,!,*/H,!,/?3,!,**?3,!)
+ <-30,!17,2:/Me,4:/Et,6:/Pr,
+ 10:/iPr,14:/tBu,16:/Ph^-30
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Insert substituent(3)}
+\subsubsection{Add modified substituent}
\begin{verbatim}
-~ : change type
-^ : change angle
-` : change length
-> : change enviroment
+ ~,^,` : change type,angle,length
-MCf(<30,``1,
- !,/Me~zf`2^30,!,/Me~zf`2^30,
- !2,*/Pr>lr,!2,*/Pr>rl,!)
+ <-30,!6,@(2~wf,4~zf,6^-30)/H
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Add substituent(1)}
\begin{verbatim}
-sw_numberA:=1; numberA_end:=12;
-MCf(<30,!11,
- 2:/Me,3:/Et,6:/Pr,7:/iPr,
- 10:/tBu,11:/Ph^-30)
-\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Add substituent(2)}
-\begin{verbatim}
-~,^,` : change type,angle,length
- of substituent
+ ^,`,> : change angle,length,environment
-MCf(<30,?6,
- @(3`2^30,3~wf,4~zf,6~wf^-30,6~zf^30)/H)
+ <30,!7`1,@(3)/*Me`2^30,5:*/Pr>lr,7:*/Pr>rl
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Add substituent(3)}
+\subsection{Chain environment}
+\subsubsection{Horizontal,vertical}
\begin{verbatim}
-~,^,`,> : change type,angle,length,
- environment of substituent
+ >hz : horizontal enviroment (default)
+ >vt : vertical enviroment
-MCF(<30,!7`1,
-@(2,3)/*Me`2^30,5:*/Pr>lr,7:*/Pr>rl)
+ ?4,@(3^-90,3^-30,3^90)/'(!3,"{hz}")>hz,
+ @(1^-60,1`2,1^60)/'(!2,"{vt}")>vt
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Chain strech direction environment (1)}
+\subsubsection{Left-right,right-left}
\begin{verbatim}
->hz : horizontal enviroment (default)
->vt : vertical enviroment
+ >lr : left-right enviroment
+ >rl : right-left enviroment
- ?4,
- @(3^-90,3^-30,3^90)/'(!3,"{hz}")>hz,
- @(1^-60,1`2,1^60)/'(!2,"{vt}")>vt
-
-\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Chain strech direction environment (2)}
-\begin{verbatim}
->lr : left-right enviroment
->rl : right-left enviroment
-
<30,!6,
@(3^-30,3,3^30)/'(!3,"{lr}")>lr,
@(5^-30,5,5^30)/'(!3,"{rl}")>rl
-
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Chain strech direction environment (3)}
+\subsubsection{Fixed angle,multi angle}
\begin{verbatim}
- >45 : fixed angle enviroment
- >'(-90,90,-90) : multi angle enviroment
+ >45 : fixed angle enviroment
+ >'(-90,90,-90) : multi angle enviroment
<-30,!6,@(2>45)/'(!3,"{45}"),
@(6>'(-90,90,-90))/'(!3,"{(-90,90,-90)}")
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change atom and Substituent}
+\subsection{Miscellaneous}
+%-----------------------------------------------------------------------------
+\subsubsection{Change atom and Substituent}
\begin{verbatim}
-NH,SO,SOO : inset hetero atom and substituent
- simultaneously
+ NH,SO,SOO :
+ inset hetero atom and substituent
+ simultaneously
<30,!2,NH,!,SO,!,SOO,!3
-
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change color}
+\subsubsection{Change color}
\begin{verbatim}
-@(5)green : change color of A5 green
-$(3)red : change color of B3 red
+ @(5)green : change color of A5 green
+ $(3)red : change color of B3 red
- <30,Ph,@(2,5)N,
- 2:red,5:blue,3=green
+ <30,Ph,@(2,5)N,2:red,5:blue,3=green
-** METAFONT ignore color command
+ ** METAFONT ignore color command
\end{verbatim}
-\end{minipage}
%%%%\MCFstructure % for Metafont
-\makebox(72,3.5)[t]{\frame{\makebox(68,42.3)%
-{\includegraphics{mcf_man_soc-042.eps}}}}% for dvipdfmx
-%%%%{\includegraphics[width=30mm]{mcf_man_soc-042.png}}}}% for pdfLaTeX
+\includegraphics{mcf_man_soc-060.eps}% for dvipdfmx
\advance\fontnum\@ne\relax\advance\tempnum\@ne\relax%
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Chain start multiple characters}
+\subsubsection{Make block}
\begin{verbatim}
-if chain start multi charactor string,
-use !0 instead of !
+ { : start brock
+ } : end brock
+ <30,!2,{,``1.2,!2,},!2
+\end{verbatim}
+\MCFstructure
+%-----------------------------------------------------------------------------
+\subsubsection{Chain start multiple characters}
+\begin{verbatim}
+ if chain start multi charactor string,
+ use !0 instead of !
+
MCd( 1,1)(0 ,0.9)(<30,COOH,!0,!3,COOH)
MCd(.8,1)(0.3,0.1)(<30,COOH,!4,COOH)
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{User definition}
+\subsubsection{User definition}
\begin{verbatim}
-iBuOH : user defined substructure
+ iBuOH : user defined substructure
iBuOH:='(!,/Me,!,OH)
MCf(<30,?6,@(4,6)/iBuOH)
-
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Inline definition}
+\subsubsection{Inline definition}
\begin{verbatim}
-Insert user defined substructure
+ Insert user defined substructure
<30,!3,/'(!,/Me,!,OH),!3
-
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Font size}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\section{Option parameter}
+%------------------------------------------------------------------------------
+\subsection{Size parameter}
+\subsubsection{Font size}
\begin{verbatim}
beginfont("EN:Caffeine")
font_wd#:=30mm#; %<==font width
font_ht#:=20mm#; %<==font height
- sw_font_frame:=1;
MCf(<30,?6,-4=?5,$(3,8)dl,@(2,6,7,9)N,
- @(2,6,9)/Me,@(1,5)//O)
- endfont
+ @(2,6,9)/Me,@(1,5)//O) endfont
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Max ratio bond/width length}
+\subsubsection{Margin left and right}
\begin{verbatim}
- max_bond_width:=0.10;
- MCd(1,1)( 0, .5)(<30,Ph)
- max_bond_width:=0.15;
- MCd(1,1)(.33,.5)(<30,Ph)
- max_bond_width:=0.25;
- MCd(1,1)( 1, .5)(<30,Ph)
-
-** default: max_bond_width=0.15
+ default: margin_left_right=0.4mm
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
+\begin{picture}(12,20)
+\put(1,14){\makebox(10,6)[r]{\tt 0mm}}
+\put(1, 7){\makebox(10,6)[r]{\tt 0.4mm}}
+\put(1, 0){\makebox(10,6)[r]{\tt 5mm}}
+\end{picture}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Ratio thickness/bond length}
+\subsubsection{Margin top and bottom}
\begin{verbatim}
-ratio_thickness_bond:= 0.005;
-MCd(1,.6)(0, .5)(<30,Ph)
-ratio_thickness_bond:= 0.015;
-MCd(1,.6)(.5,.5)(<30,Ph)
-ratio_thickness_bond:= 0.030;
-MCd(1,.6)(1, .5)(<30,Ph)
-
-** default: ratio_thickness_bond=0.015
+ default: margin_top_bottom=0.4mm
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0mm}{0.4mm}{5mm}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Offset thickness of bond}
+\subsubsection{Offset thickness of bond}
\begin{verbatim}
-beginfont() offset_thickness#:=0pt#;
-MCd(1,.3)(0, .5)(<30,Ph) endfont
-beginfont() offset_thickness#:=0.2pt#;
-MCd(1,.3)(.5,.5)(<30,Ph) endfont
-beginfont() offset_thickness#:=0.5pt#;
-MCd(1,.3)(1, .5)(<30,Ph) endfont
-
-** default: offset_thickness#=0.2pt#
+ default: offset_thickness#=0.2pt#
\end{verbatim}
-\end{minipage}
-\MCFstru\MCFstru\MCFstructure%
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0pt}{0.2pt}{0.5pt}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Ratio char/bond thickness}
+\subsubsection{Offset of doublebond gap}
\begin{verbatim}
-ratio_char_bond:=1.0;
-MCd(1,.6)(0, .5)(<30,?6,5:O,2:NH)
-ratio_char_bond:=1.5;
-MCd(1,.6)(.5,.5)(<30,?6,5:O,2:NH)
-ratio_char_bond:=2.0;
-MCd(1,.6)(1, .5)(<30,?6,5:O,2:NH)
-
-** default: ratio_char_bond=1.5
+ default: offset_bond_gap#=0.3pt#
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0.0pt}{0.3pt}{1.0pt}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Ratio bondgap/bond length}
+\subsubsection{Offset of atom width}
\begin{verbatim}
-ratio_bondgap_bond:= 0.10;
-MCd(1,.6)(0, .5)(<30,Ph)
-ratio_bondgap_bond:= 0.15;
-MCd(1,.6)(.5,.5)(<30,Ph)
-ratio_bondgap_bond:= 0.20;
-MCd(1,.6)(1, .5)(<30,Ph)
-
-** default: ratio_bondgap_bond=0.15
+ default: offset_atom#=0.8pt#
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0.0pt}{0.8pt}{2.0pt}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Offset of doublebond gap}
+\subsubsection{Offset of wedge width}
\begin{verbatim}
-beginfont() offset_bond_gap#:=0.0pt#;
-MCd(1,.3)(0, .5)(<30,Ph) endfont
-beginfont() offset_bond_gap#:=0.3pt#;
-MCd(1,.3)(.5,.5)(<30,Ph) endfont
-beginfont() offset_bond_gap#:=1.0pt#;
-MCd(1,.3)(1, .5)(<30,Ph) endfont
-
-** default: offset_bond_gap#=0.3pt#
+ default: offset_wedge#=0.4pt#
\end{verbatim}
-\end{minipage}
-\MCFstru\MCFstru\MCFstructure%
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0.0pt}{0.4pt}{1.0pt}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Ratio atom/bond length}
+\subsubsection{Max bond length}
\begin{verbatim}
-ratio_atom_bond:= 0.25;
-MCd(1,.6)(0, .5)(<30,?6,@(2,5)O)
-ratio_atom_bond:= 0.36;
-MCd(1,.6)(.5,.5)(<30,?6,@(2,5)O)
-ratio_atom_bond:= 0.45;
-MCd(1,.6)(1, .5)(<30,?6,@(2,5)O)
-
-** default: ratio_atom_bond=0.36
+ default: max_bond_length#=10mm#
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{18mm}{6mm}{8mm}{20mm}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Offset of atom width}
+\subsection{Ratio parameter}
+%-----------------------------------------------------------------------------
+\subsubsection{Thickness/bond length}
\begin{verbatim}
-beginfont() offset_atom#:=0.0pt#;
-MCd(1,.3)(0, .5)(<30,Ph,@(2,4,6)N) endfont
-beginfont() offset_atom#:=0.8pt#;
-MCd(1,.3)(.5,.5)(<30,Ph,@(2,4,6)N) endfont
-beginfont() offset_atom#:=2.0pt#;
-MCd(1,.3)(1, .5)(<30,Ph,@(2,4,6)N) endfont
-
-** default: offset_atom#=0.8pt#
+ default: ratio_thickness_bond=0.015
\end{verbatim}
-\end{minipage}
-\MCFstru\MCFstru\MCFstructure%
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0.005}{0.015}{0.030}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Ratio wedge/bond length}
+\subsubsection{Char/bond thickness}
\begin{verbatim}
-ratio_wedge_bond:=0.10;
-MCd(1,.6)(0, .5)(<30,?6,5:*/Me)
-ratio_wedge_bond:=0.12;
-MCd(1,.6)(.5,.5)(<30,?6,5:*/Me)
-ratio_wedge_bond:=0.20;;
-MCd(1,.6)(1, .5)(<30,?6,5:*/Me)
-
-** default: ratio_wedge_bond=0.12
+ default: ratio_char_bond=1.5
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{1.0}{1.5}{2.0}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Offset of wedge width}
+\subsubsection{Bondgap/bond length}
\begin{verbatim}
-beginfont() offset_wedge#:=0.0pt#;
-MCd(1,.3)(0, .5)(<30,?6,5:*/Me) endfont
-beginfont() offset_wedge#:=0.4pt#;
-MCd(1,.3)(.5,.5)(<30,?6,5:*/Me) endfont
-beginfont() offset_wedge#:=1.0pt#;
-MCd(1,.3)(1, .5)(<30,?6,5:*/Me) endfont
-
-** default: offset_wedge#=0.4pt#
+ default: ratio_bondgap_bond= 0.15
\end{verbatim}
-\end{minipage}
-\MCFstru\MCFstru\MCFstructure%
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0.10}{0.15}{0.20}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Ratio font atom gap/atom length}
+\subsubsection{Atom/bond length}
\begin{verbatim}
-ratio_atomgap_atom:=0.0;
-MCd(1,.6)(0, .5)(<30,?6,@(2,5)O)
-ratio_atomgap_atom:=0.050;
-MCd(1,.6)(.5,.5)(<30,?6,@(2,5)O)
-ratio_atomgap_atom:=0.12;
-MCd(1,.6)(1, .5)(<30,?6,@(2,5)O)
-
-** default: ratio_atomgap_atom=0.050
+ default: ratio_atom_bond= 0.36
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0.25}{0.36}{0.46}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Ratio chain/ring length}
+\subsubsection{Wedge/bond length}
\begin{verbatim}
-ratio_chain_ring:= 0.4;
-MCd(1,.6)(0, .5)(<30,?6,5:/Et)
-ratio_chain_ring:= 0.66;
-MCd(1,.6)(.5,.5)(<30,?6,5:/Et)
-ratio_chain_ring:= 1.0;
-MCd(1,.6)(1, .5)(<30,?6,5:/Et)
-
-** default: ratio_chain_ring=0.66
+ default: ratio_wedge_bond=0.12
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0.10}{0.12}{0.20}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Ratio zebra gap/bond length}
+\subsubsection{Font atom gap/atom length}
\begin{verbatim}
-ratio_zebragap_bond:=0.06;
-MCd(1,.6)(0, .5)(<30,Ph,5:/*Me`1)
-ratio_zebragap_bond:=0.12;
-MCd(1,.6)(.5,.5)(<30,Ph,5:/*Me`1)
-ratio_zebragap_bond:=0.20;
-MCd(1,.6)(1, .5)(<30,Ph,5:/*Me`1)
-
-** default: ratio_zebragap_bond=0.12
+ default: ratio_atomgap_atom= 0.050
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0.0}{0.050}{0.12}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Margin left and right}
+\subsubsection{Chain/ring length}
\begin{verbatim}
-margin_left_right:=0mm;
-MCd(1,1)(0.5,0.9)(<30,CH3,!0,!17,CH3)
-margin_left_right:=0.4mm;
-MCd(1,1)(0.5,0.5)(<30,CH3,!0,!17,CH3)
-margin_left_right:=5mm;
-MCd(1,1)(0.5,0.1)(<30,CH3,!0,!17,CH3)
-
-** default: margin_left_right=0.4mm
+ default: ratio_chain_ring= 0.66
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0.4}{0.65}{1.0}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Margin top and bottom}
+\subsubsection{Zebra gap/bond length}
\begin{verbatim}
-margin_top_bottom:=0mm;
-MCd(1,1)(0.1,0.5)(<30,Ph,2:/OH,5:/NH2)
-margin_top_bottom:=0.4mm;
-MCd(1,1)(0.5,0.5)(<30,Ph,2:/OH,5:/NH2)
-margin_top_bottom:=5mm;
-MCd(1,1)(0.9,0.5)(<30,Ph,2:/OH,5:/NH2)
-
-** default: margin_top_bottom=0.4mm
+ default: ratio_zebragap_bond=0.12
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\figex{20mm}{0.06}{0.12}{0.20}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Switch numbering atom}
+\subsection{Drawing mode}
+%-----------------------------------------------------------------------------
+\subsubsection{Numbering atom}
\begin{verbatim}
numberA_start:=3; numberA_end:=8;
-
- sw_numberA:=1; MCd(1,1)(.5,.9)(<30,!9)
- sw_numberA:=2; MCd(1,1)(.5,.5)(<30,!9)
- sw_numberA:=3; MCd(1,1)(.5,.1)(<30,!9)
-
- ** default: numberA_start=1 numberA_end=4095
+ default: sw_numberA=0 :
+ numberA_start=1 numberA_end=4095
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
+\begin{picture}(5,20)
+\put(0,14){\makebox[5mm]{\tt 1}}
+\put(0, 8){\makebox[5mm]{\tt 2}}
+\put(0, 2){\makebox[5mm]{\tt 3}}
+\end{picture}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Switch numbering bond}
+\subsubsection{Numbering bond}
\begin{verbatim}
numberB_start:=3; numberB_end:=8;
-
- sw_numberB:=1; MCd(1,1)(.5,.9)(<30,!9)
- sw_numberB:=2; MCd(1,1)(.5,.5)(<30,!9)
- sw_numberB:=3; MCd(1,1)(.5,.1)(<30,!9)
-
- ** default: numberB_start=1 numberB_end=4095
+ default: sw_numberB=0 :
+ numberB_start=1 numberB_end=4095
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
+\begin{picture}(5,20)
+\put(0,14){\makebox[5mm]{\tt 1}}
+\put(0, 8){\makebox[5mm]{\tt 2}}
+\put(0, 2){\makebox[5mm]{\tt 3}}
+\end{picture}
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Switch substituent off}
+\subsubsection{Solid mode}
\begin{verbatim}
+ MCd(1,1)(0,.5)(Ph,4:/Me)
+ sw_solid:=1;
+ bond_len#:=6mm#;
+ MCd(1,1)(1,.5)(Ph,4:/Me)
+\end{verbatim}
+\MCFstructure\\
+\makebox[5mm]{}%
+\makebox[30mm]{\tt 0 :default}%
+\makebox[30mm]{\tt 1}%
+%-----------------------------------------------------------------------------
+\subsubsection{Expand mode}
+\begin{verbatim}
+ MCd(1,.5)(0,0.5)(<30,Ph,4:/COOH,3:/NH2)
+ sw_expand:=1;
+ MCd(1,.5)(1,0.5)(<30,Ph,4:/COOH,3:/NH2)
+\end{verbatim}
+\MCFstructure\\
+\makebox[5mm]{}%
+\makebox[30mm]{\tt 0 :default}%
+\makebox[30mm]{\tt 1}%
+%-----------------------------------------------------------------------------
+\subsubsection{Substituent off mode}
+\begin{verbatim}
MCd(1,.5)( 0,0.5)(<30,Ph,4:/Cl,3:/F)
-
sw_subst_off:=1;
MCd(1,.5)( 1,0.5)(<30,Ph,4:/Cl,3:/F)
-
- ** default: sw_subst_off=0
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\makebox[5mm]{}%
+\makebox[30mm]{\tt 0 :default}%
+\makebox[30mm]{\tt 1}%
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Switch all bond single}
+\subsubsection{Single bond mode}
\begin{verbatim}
MCd(1,.5)( 0,0.5)(<30,Ph,4:/Cl,3:/F)
-
sw_bond_single:=1;
MCd(1,.5)( 1,0.5)(<30,Ph,4:/Cl,3:/F)
-
- ** default: sw_bond_single=0
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\makebox[5mm]{}%
+\makebox[30mm]{\tt 0 :default}%
+\makebox[30mm]{\tt 1}%
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Switch start vector}
+\subsection{Frame,vector}
+%-----------------------------------------------------------------------------
+\subsubsection{Start vector}
\begin{verbatim}
+ MCf(<30,Ph,4:/Cl,3:/F)
sw_start_vector:=1;
MCf(<30,Ph,4:/Cl,3:/F)
-
- ** default: sw_start_vector=0
\end{verbatim}
-\end{minipage}
-\MCFstructure
-\vspace{\gpman}\\
+\MCFstructure\\
+\makebox[5mm]{}%
+\makebox[30mm]{\tt 0 :default}%
+\makebox[30mm]{\tt 1}%
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Switch font frame}
+\subsubsection{Font frame}
\begin{verbatim}
-sw_font_frame=0 : no frame **default
-sw_font_frame=1 : draw frame of font
-sw_font_frame=2 : draw frame inside margin
-sw_font_frame=3 : draw both
+ sw_font_frame=0 : no frame **default
+ sw_font_frame=1 : draw frame of font
+ sw_font_frame=2 : draw frame inside margin
+ sw_font_frame=3 : draw both
-sw_font_frame:=3;
-margin_left_right:=5mm; margin_top_bottom:=2mm;
-MCf(<30,Ph,4:/Cl,3:/F)
+ sw_font_frame:=3;
+ margin_left_right:=5mm;
+ margin_top_bottom:=2mm;
+ MCf(<30,Ph,4:/Cl,3:/F)
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Switch molecular frame}
+\subsubsection{Molecular frame}
\begin{verbatim}
- MCd(1,.5)(0,0.5)(<30,Ph,4:/Cl,3:/F)
-
sw_mol_frame:=1;
MCd(1,.5)(1,0.5)(<30,Ph,4:/Cl,3:/F)
-
- ** default: sw_mol_frame=0
+ ** default: sw_mol_frame=0
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Switch atom frame}
+\subsubsection{Atom frame}
\begin{verbatim}
-
sw_atom_frame:=1;
MCf(<30,Ph,4:/COOH,3:/OH)
-
- ** default: sw_atom_frame=0
+ ** default: sw_atom_frame=0
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Switch solid mode}
+\subsection{Clipping font}
\begin{verbatim}
- 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
+ beginfont()
+ sw_clip:=0;
+ MCf(<30,Ph,4:/Cl,3:/F) endfont
+ ** default: sw_clip=0
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Switch Expand}
\begin{verbatim}
- MCd(1,.5)(0,0.5)(<30,Ph,4:/COOH,3:/NH2)
-
- sw_expand:=1;
- MCd(1,.5)(1,0.5)(<30,Ph,4:/COOH,3:/NH2)
-
- ** default: sw_expand=0
+ beginfont()
+ sw_clip:=1;
+ MCf(<30,Ph,4:/Cl,3:/F) endfont
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
-%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Function MCd (draw)}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\section{MCF draw function}
+\subsection{Function MCd (draw)}
\begin{verbatim}
MCd(a,b)(c,d)(...)
a: ratio molecular width/font width
@@ -1213,72 +809,57 @@
c: x axis position
d: y axis position
- MCd(1,0.8)(0.2,0.9)(<30,Ph,2:/OH,5:/NH2)
- MCd(1,0.8)(0.8,0.1)(<30,Ph,2:/OH,5:/NH2)
+ MCd(1,0.8)(0.2,0.9)(<30,Ph,3:/F,4:/Cl)
+ MCd(1,0.8)(0.8,0.1)(<30,Ph,3:/F,4:/Cl)
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Function MCf (fit draw)}
+\subsection{Function MCf (fit draw)}
\begin{verbatim}
MCf(...) : MCd(1,1)(0.5,0.5)(...)
sw_font_frame:=1;
sw_mol_frame:=1;
- MCf(<30,Ph,2:/OH,5:/NH2)
+ MCf(<30,Ph,3:/F,4:/Cl)
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Local setting}
+\subsection{Local setting}
\begin{verbatim}
-beginfont()
- sw_mol_frame:=1; % <<== Local setting
- MCd(1,.4)( 0,.5)(Ph)
-endfont
-beginfont() MCd(1,.4)(.5,.5)(Ph) endfont
-beginfont() MCd(1,.4)( 1,.5)(Ph) endfont
+ beginfont() MCd(1,.4)(0,.5)(Ph) endfont
+ beginfont()
+ ratio_thickness_bond:=0.05;
+ MCd(1,.4)(0.5,.5)(Ph)
+ endfont
+ beginfont() MCd(1,.4)(1,.5)(Ph) endfont
\end{verbatim}
-\end{minipage}
-\MCFstru\MCFstru\MCFstructure%
-\vspace{\gpman}\\
+\MCFstructure
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Global setting}
+\subsection{Global setting}
\begin{verbatim}
-sw_mol_frame:=1; % <<== Global setting
-beginfont() MCd(1,.4)( 0,.5)(Ph) endfont
-beginfont() MCd(1,.4)(.5,.5)(Ph) endfont
-beginfont() MCd(1,.4)( 1,.5)(Ph) endfont
+ ratio_thickness_bond:=0.05;
+ beginfont() MCd(1,.4)( 0,.5)(Ph) endfont
+ beginfont() MCd(1,.4)(.5,.5)(Ph) endfont
+ beginfont() MCd(1,.4)( 1,.5)(Ph) endfont
\end{verbatim}
-\end{minipage}
-\MCFstru\MCFstru\MCFstructure%
-\vspace{\gpman}\\
+\MCFstructure
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Output molecular information}
+\subsection{Output molecular information}
\begin{verbatim}
var3:="calc_weight"; tag3:="cMW";
var4:="calc_formula"; tag4:="cFM";
%% Output to mcf_man_soc-info.aux %%
-F:mcf_man_soc;C:85;cMW:194.19174;cFM:C8H10N4O2
+..... ;C:85;cMW:194.19174;cFM:C8H10N4O2
cMW:calculated molecular weight
cFM:calculated molecular formula
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Output additional information}
+\subsection{Output additional information}
\begin{verbatim}
beginfont("EN:Tocopherol","CAS:59-02-9")
-MCf(...) endfont
+ MCf(...) endfont
%% Output to mcf_man_soc-info.aux %%
F:mcf_man_soc;C:86;EN:Tocopherol;CAS:59-02-9
@@ -1286,56 +867,46 @@
*F:filename *C:char number EN:molecular name
CAS:CAS number *:default output
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Change aux information delimiter}
+\subsection{Change aux information delimiter}
\begin{verbatim}
aux_delimiter:="/";
beginfont("EN:Ampicillin","CAS:69-53-4")
-MCf(...) endfont
+ MCf(...) endfont
%% Output to mcf_man_soc-info.aux %%
F:mcf_man_soc/C:90/EN:Ampicillin/CAS:69-53-4
-**default aux_delimiter=";"
-
+ **default aux_delimiter=";"
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Fixed aux information}
+\subsection{Fixed aux information}
\begin{verbatim}
-tag3:="NO"; var3:="inf_NO";
-tag4:="EN"; var4:="inf_EN";
-sw_auxfix:=1; auxtag_out;
-beginfont("EN:Cholesterol","NO:1") ... endfont
+ tag3:="NO"; var3:="inf_NO";
+ tag4:="EN"; var4:="inf_EN";
+ sw_auxfix:=1; auxtag_out;
+ beginfont("EN:Cholesterol","NO:1")
+ ..... endfont
-%% Output to mcf_man_soc-info.aux %%
-F;C;NO;EN
-mcf_man_soc;91;1;Ampicillin
+ %% Output to mcf_man_soc-info.aux %%
+ F;C;NO;EN
+ mcf_man_soc;91;1;Ampicillin
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Example(1) Warfarin}
+\newpage
+\section{MCF example}
+\subsection{Warfarin}
\begin{verbatim}
<30,Ph,3=?6,8=dl,
10:O,7:/OH,9://O,
8\,/Ph`1,60,!,//O,!
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Example(2) Limonin}
+\subsection{Limonin}
\begin{verbatim}
<30,?6,$(-3,-4)?6,-5=?3,
-2=wf,-1=wb,6=?5,-4=?6,-5=wf,
@@ -1344,34 +915,27 @@
@(1^60,5^180,16^60)/*H,
14\*,|,?5,$(1,4)dl,3:O
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Example(3) Sesamine}
+\subsection{Sesamine}
\begin{verbatim}
- <54,?5,1=?5,@(4,7)O,@(1^-54,2^54)*/H,
+ <54,?5,1=?5,
+ @(4,7)O,@(1^-54,2^54)*/H,
#5*\^-12,Ph,|,-3=?5,@(-1,-3)O,
#8*\^-12,Ph,|,-3=?5,@(-1,-3)O
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Example(4) Colchicine}
+\subsection{Colchicine}
\begin{verbatim}
- <30,Ph,@(1,2,6)/OMe,-4=?7,-5=?7,
+ <30,Ph,@(1,2,6)/OMe,
+ -4=?7,-5=?7,
$(-1,-4,-6)dl,-2://O,-3:/OH,
9\,NH,!,//O,!
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Example(5) Lycorine}
+\subsection{Lycorine}
\begin{verbatim}
<30,Ph,
-4=?6,-2=?6,6=?5,(9,12)=?5[3],
@@ -1380,12 +944,9 @@
9:/*H^180,10:*/H^60,
13:*/OH,14:/*OH
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Example(6) Gibberellin}
+\subsection{Gibberellin}
\begin{verbatim}
<18,?5,3=?7,5=?6[12],
8*,160`1.3,&3,
@@ -1394,12 +955,9 @@
2:/COOH,7://Me,13:*/OH,8:/*OH,
14:*/Me,@(1^60,4^60)*/H
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Example(7) Quinine}
+\subsection{Quinine}
\begin{verbatim}
<30,Ph,3=Ph,7:N,6:/OMe,
10\,*/OH,/H~zf^-60,!,
@@ -1407,12 +965,9 @@
4*\,!~dr,
2*,165~zf,60,&5~zb
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Example(8) Atoropin}
+\subsection{Atoropin}
\begin{verbatim}
<-30,O,!,//O,!,!,Ph,
#1\~zb^-120,
@@ -1419,23 +974,34 @@
|,?7,6*\^190`1.02,N,/Me,&3~wb,
#3\~wv,!,OH
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Example(9) Validamycin}
+\subsection{Rotenone}
\begin{verbatim}
+ <-60,?5,$(-3,-2,-3,-4)?6,
+ $(7,9,-2,-4)dl,$(3,17)dr,
+ @(2,13,16)O,10://O,@(11^-60,12^60)*/H,
+ @(-2,-3)/OMe,1*\,/Me,!~dl
+\end{verbatim}
+\MCFstructure
+%-----------------------------------------------------------------------------
+\subsection{Pyrethrin I}
+\begin{verbatim}
+ <30,?3,@(3^35~wf,3^-35~zf)/Me,
+ 1*\,!~dl,iPr,2\*,//O,!,O,-36~zb,|,
+ ?5,-2=d,-1:/Me,-3://O,-2\,!4,$(-1,-3)dl
+\end{verbatim}
+\MCFstructure
+%-----------------------------------------------------------------------------
+\subsection{Validamycin}
+\begin{verbatim}
<30,?6,@(5,6)/OH,3\,-60,OH,
#4\,O,-60,|,?6,2:O,@(3,4,5,6)/OH,
#1\,NH,!,|,?6,2=d,@(4,5,6)/OH,-4\,!,OH
\end{verbatim}
-\end{minipage}
\MCFstructure
-\vspace{\gpman}\\
%-----------------------------------------------------------------------------
-\begin{minipage}[t][\htman]{90mm}
-\MCFtitle{Example(10) Paclitaxel}
+\subsection{Paclitaxel}
\begin{verbatim}
?6,5=d,3*,{,``1,36,45,45,45,45,},,
-4=?6,-4=?4,-1=wb,-3=wf,-1:O,||,
@@ -1446,7 +1012,114 @@
7\*,O,-45,//O,60,Ph,11*\,O,-60,//O,60,
12\*^-15,O,60,//O,-60
\end{verbatim}
-\end{minipage}
\MCFstructure
%-----------------------------------------------------------------------------
+\onecolumn%
+\section{Example to use mcf2graph}
+\subsection{Molecular definition file example}
+\begin{verbatim}
+%-------------------------------------------------------------------------
+input mcf2graph.mf; % input macro
+%-------------------------------------------------------------------------
+sw_auxout:=1; % aux(information) file output on > Gloval setting
+font_wd#:=60mm#; % font width >
+font_ht#:=40mm#; % font height >
+var3:="cal_MW"; tag3:="cMW"; > AUX file table
+var4:="cal_FM"; tag4:="cFM"; >
+%%%% var5:="cal_MW"; tag5:="cMW"; >
+%%%% var6:="cal_FM"; tag6:="cFM"; >
+%%%% var7:="inf_USE"; tag7:="USE"; >
+%%%% var8:="inf_EXA"; tag8:="EXA"; >
+%%%% var9:="inf_EXB"; tag9:="EXB"; >
+%%%% auxtag_out; >
+%%%% sw_checklist:=1; >
+%%%% sw_MOLout:=1; >
+outputformat:="png"; hppp:=vppp:=0.1; > PNG output
+outputtemplate:="%j-%3c.png"; >
+%-------------------------------------------------------------------------
+beginfont("NO:1","EN:Ampicillin") > begin font(information)
+ MCf(<45,?4,2:N,2=?5,-1:S, > begin MCF (1)
+ @(3^45,4^-45)/*H,1://O^15,5:/*COOH^-18, >
+ @(6^35,6^-35)/Me, >
+ 4\^75,NH,!,//O,!,/*NH,!,Ph) > end MCF
+endfont > end font
+%------------------------------------------------------------------------
+beginfont("NO:2","EN:Cholesterol") > begin font(information)
+ MCf(<30,?6,$(-4,-2)?6,-4=?5,7=dl, > begin MCF (2)
+ 1:*/OH,@(4,12)*/Me^60,9:*/H^60, >
+ 10:/*H^180,@(11,-1)/*H^-60, >
+ -1\^17,/*Me,!4,/Me,!) > end MCF
+endfont > end font
+%------------------------------------------------------------------------
+bye
+\end{verbatim}
+%------------------------------------------------------------------------
+\subsection{Molecular structure output example}
+\INFO{F:mcf_man_soc,C:100,NO:1,cMW:349.40462,cFM:C16H19N3O4S,EN:Ampicillin}%
+\INFO{F:mcf_man_soc,C:101,NO:2,cMW:386.6532,cFM:C27H46O,EN:Cholesterol}%
+\newpage
+%------------------------------------------------------------------------
+\noindent%
+\subsection{Molecular information output example}
+'filename'-info.aux : for use in \TeX, it takes over filename,
+char number, molecular information,etc.
+\begin{verbatim}
+(sw_auxfix=0)
+F:mcf_man_soc;C:109;cMW:349.40462;cFM:C16H19N3O4S;EN:Ampicillin
+F:mcf_man_soc;C:110;cMW:386.6532;cFM:C27H46O;EN:Cholesterol
+ .....................................................
+ .....................................................
+
+(sw_auxfix=1)
+F;C;cMW;cFM;EN
+mcf_man_soc;90;349.40462;C16H19N3O4S;Ampicillin
+mcf_man_soc;91;386.6532;C27H46O;Cholesterol
+ ......................................
+ ......................................
+
+( tag : variable )
+F : filename C : char number NO : serial number EN : english name
+cMW : molecular weight calculated cFM : molecular formula calculated
+MW : molecular weight from literature data
+\end{verbatim}
+%----------------------------------------------------------------------------
+\subsection{LaTeX file example}
+%############################################################################
+\begin{verbatim}
+%--------------------------------------------------------------------
+\documentclass[a4paper]{article}
+\usepackage{graphicx}
+\pagestyle{empty}
+\makeatletter%
+%--------------------------------------------------------------------
+\def\@F{F}\def\@C{C}\def\@EN{EN}\def\@NO{NO}\def\@MW{MW}\def\@FMc{FMc}%
+\def\@fst at param#1:#2;{#1}\def\@sec at param#1:#2;{#2}%
+\def\mol at sel#1{%
+\if#1\empty\relax\else%
+ \edef\@tag{\expandafter\@fst at param#1;}%
+ \edef\@var{\expandafter\@sec at param#1;}%
+ \ifx\@tag\@F\edef\MOLfile{\@var}\fi%
+ \ifx\@tag\@C\edef\MOLchar{\@var}\fi%
+ \ifx\@tag\@EN\edef\MOLnameE{\@var}\fi%
+ \ifx\@tag\@NO\edef\MOLnum{\@var}\fi
+ \ifx\@tag\@MW\edef\CALmw{\@var}\fi
+ \ifx\@tag\@FMc\edef\CALfm{\@var}\fi
+\fi}%
+\def\put at char{%
+ \begin{picture}(84,42)%
+ \put(0,38){\bf [\MOLnum]\MOLnameE{ }\small\tt/FM:\CALfm/MW:\CALmw}%
+ \put(10,0){\font\@strufont=\MOLfile\relax%
+ \hbox{\@strufont\char\MOLchar}}%
+ \end{picture}%
+\def\INFO#1{\@for\@temp:=#1\do{\mol at sel\@temp}\put at char}%
+\makeatother
+%--------------------------------------------------------------------
+\begin{document}
+\unitlength=1mm%
+\INFO{F:mcf_man_soc,C:100,NO:1,cMW:349.40462,cFM:C16H19N3O4S,EN:Ampicillin}%
+\INFO{F:mcf_man_soc,C:101,NO:2,cMW:386.6532,cFM:C27H46O,EN:Cholesterol}%
\end{document}
+%--------------------------------------------------------------------
+\end{verbatim}%
+%############################################################################
+\end{document}
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 2016-10-10 21:13:18 UTC (rev 42247)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex 2016-10-10 21:14:36 UTC (rev 42248)
@@ -1,7 +1,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2016.8.21
+% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2016.10.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%% mcf2graph.mf it must be version 3.97 or later
+%%% mcf2graph.mf it must be version 3.98 or later
\documentclass{article}
%------------------------------------------------------------------------------
\usepackage{luamplib}%
@@ -79,7 +79,7 @@
%------------------------------------------------------------------------------------
\begin{document}
\begin{center}
- {\LARGE\bf MCF example for luamplib(Lua\LaTeX)}\vspace{5mm}\\
+ {\Huge\sf MCF example for luamplib(Lua\LaTeX)}\vspace{5mm}\\
Author : Akira Yamaji \quad Date : \today\\
Located at : http://www.ctan.org/pkg/mcf2graph\vspace{2mm}\\
\end{center}
Modified: trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
===================================================================
--- trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf 2016-10-10 21:13:18 UTC (rev 42247)
+++ trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf 2016-10-10 21:14:36 UTC (rev 42248)
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 3.97 Copyright (c) 2013-2016 Akira Yamaji
+% mcf2graph ver 3.98 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,
@@ -30,7 +30,7 @@
% Set output checklist : mpost -s ahlength=2 FILENAME
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
tracingstats:=1;
-message " This is mcf2graph ver 3.9 2016.8";
+message " This is mcf2graph ver 4.0 2016.10";
%-------------------------------------------------------------------------------------------------
pair posB[],posA[],pairT,Ls,Le,pairA;
numeric angB[],angA[],br_ang[],sB[],eB[],f_FON[],atom_w[],atom_h[],atom_d[],strA[],stkB[],stkA[],
@@ -38,13 +38,13 @@
comMC[][],parMC[][],stock_p[],cntMC[],colorA[],colorB[],tblN[],tblB[][],wtA[],sumA[],
CH[],NH[],NO[],SO[],CCl[],CF[],CBr[],?[],![],Ph[];
path pA,pB,pC,pT;
-string info[],tblA[],com_str[],var[],tag[],cal_FM,mp_log_name,inf_EN,inf_JN,inf_FM,
- inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_str,cal_MW_str,aux_delimiter;
+string info[],tblA[],com_str[],var[],tag[],cal_FM,mp_log_name,inf_NO,inf_MW,inf_EN,inf_JN,inf_FM,
+ inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_str,cal_MW_str,aux_delimiter,s_tag,s_var;
picture atom_font[],chem_structure,temp_picture;
%-------------------------------------------------------------------------------------------------
sw_numberA:=sw_numberB:=sw_mol_frame:=sw_auxout:=sw_solid:=sw_expand:=sw_start_vector:=0;
-char_num:=str_cnt:=proc_end:=sw_font_frame:=sw_atom_frame:=sw_checklist:=sw_MOLout:=0;
-sw_subst_off:=sw_bond_single:=sw_auxfix:=0;
+char_num:=str_cnt:=proc_end:=sw_font_frame:=sw_atom_frame:=sw_checklist:=0;
+sw_MOLout:=sw_subst_off:=sw_bond_single:=sw_auxfix:=sw_clip:=0;
numberA_start:=numberB_start:=1; numberA_end:=numberB_end:=4095; aux_max:=20;
aux_delimiter:=";"; var1:="jobname"; tag1:="F"; var2:="char_num"; tag2:="C";
for i=3 upto aux_max: var[i]:=tag[i]:=""; endfor
@@ -78,11 +78,12 @@
?3:=?20:=Ph:=Ph1:=Ph2:=hz:=0; vt:=1;
first_def_number:=500; user_def_number:=2500; ab_def_number:=3000;
margin_left_right:=margin_top_bottom:=0.4mm; ratio_chain_ring:= 0.66; ratio_atom_bond:=0.36;
-ratio_thickness_bond:=0.015; offset_atom#:=0.8pt#; max_bond_width:=0.25;
-ratio_char_bond:=1.5; ratio_bondgap_bond:=0.15; ratio_zebragap_bond:=0.12;
-ratio_zebra_black:=0.4; ratio_wedge_bond:=0.12; ratio_atomgap_atom:=.050;
-offset_thickness#:=0.2pt#; offset_bond_gap#:=0.3pt#; offset_zebra_gap#:=0.1pt#;
-offset_wedge#:=0.4pt#;
+ratio_thickness_bond:=0.015; offset_atom#:=0.8pt#;
+ratio_char_bond:=1.5; ratio_bondgap_bond:=0.15; ratio_zebragap_bond:=0.12;
+ratio_zebra_black:=0.4; ratio_wedge_bond:=0.12; ratio_atomgap_atom:=.050;
+offset_thickness#:=0.2pt#; offset_bond_gap#:=0.3pt#; offset_zebra_gap#:=0.1pt#;
+offset_wedge#:=0.4pt#; thickness_font_frame#:=0.2pt#;
+max_bond_length#:=10mm; bond_len#:=8mm#;
par_s=ASCII("{"); par_e=ASCII("}"); score_u=ASCII("_"); hat=ASCII("^");
max_inf_num:=12; for i:=1 upto max_inf_num: info[i]:=":"; endfor
def def_com(expr n)(text tx)= nA:=n; forsuffixes list=tx:: list:=nA; nA:=nA+1; endfor enddef;
@@ -94,12 +95,12 @@
%-------------------------------------------------------------------------------------------------
def parameter_list=
sw_checklist,sw_numberA,sw_numberB,sw_mol_frame,sw_auxout,sw_solid,sw_expand,sw_MOLout,
- sw_start_vector,sw_atom_frame,sw_font_frame,sw_subst_off,sw_bond_single,
+ sw_start_vector,sw_atom_frame,sw_font_frame,sw_subst_off,sw_bond_single,sw_clip,
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#,
- offset_zebra_gap,offset_zebra_gap#,offset_bond_gap,offset_bond_gap#,
- offset_thickness,offset_thickness#,numberA_start,numberA_end,numberB_start,numberB_end
+ ratio_chain_ring,offset_atom#,max_bond_width,ratio_bondgap_bond,ratio_zebra_black,
+ ratio_zebragap_bond,ratio_wedge_bond,ratio_atomgap_atom,bond_len#,
+ offset_wedge#,max_bond_length#,offset_zebra_gap#,offset_bond_gap#,thickness_font_frame#,
+ offset_thickness#,numberA_start,numberA_end,numberB_start,numberB_end
enddef;
%-------------------------------------------------------------------------------------------------
nA:=0; for list=parameter_list: stock_p[incr nA]:=list; endfor
@@ -110,29 +111,33 @@
enddef;
%-------------------------------------------------------------------------------------------------
def beginfont(text s)=
- inf_EN:=inf_JN:=inf_FM:=inf_CAS:=inf_USE:=inf_EXA:=inf_EXB:="";
- len_x:=len_y:=cntA:=inf_num:=inf_MW:=f_beginchar:=0;
- store_par(parameter_list); stock_wd#:=font_wd#; stock_ht#:=font_ht#;
- ratio_bond_width:=1/30;
- for list=s: inf_num:=inf_num+1; info[inf_num]:=list;
- if substring (0,2) of list="NO": inf_NO:=scantokens(substring (3,length(list)) of list);
- elseif substring (0,2) of list="MW": inf_MW:=scantokens(substring (3,length(list)) of list);
- elseif substring (0,2) of list="EN": inf_EN:=substring (3,length(list)) of list;
- elseif substring (0,2) of list="JN": inf_JN:=substring (3,length(list)) of list;
- elseif substring (0,2) of list="FM": inf_FM:=substring (3,length(list)) of list;
- elseif substring (0,3) of list="CAS": inf_CAS:=substring (4,length(list)) of list;
- elseif substring (0,3) of list="USE": inf_USE:=substring (4,length(list)) of list;
- elseif substring (0,3) of list="EXA": inf_EXA:=substring (4,length(list)) of list;
- elseif substring (0,3) of list="EXB": inf_EXB:=substring (4,length(list)) of list; fi
+ inf_EN:=inf_JN:=inf_FM:=inf_CAS:=inf_USE:=inf_EXA:=inf_EXB:=""; inf_MW:="0";
+ len_x:=len_y:=cntA:=inf_num:=f_beginchar:=0;
+ store_par(parameter_list); save_wd#:=font_wd#; save_ht#:=font_ht#;
+ ratio_bond_width:=0.025;
+ clearit;
+ for list=s:
+ inf_num:=inf_num+1; info[inf_num]:=list;
+ nA:=0; for i=0 upto length(list): if pic_c(i,list)=":": nA:=i; fi exitif nA>0; endfor
+ if nA>0:
+ s_tag:=substring (0,nA) of list; s_var:=substring (nA+1,length(list)) of list;
+ if s_tag="NO": inf_NO:=s_var; elseif s_tag="MW": inf_MW:=s_var;
+ elseif s_tag="EN": inf_EN:=s_var; elseif s_tag="JN": inf_JN:=s_var;
+ elseif s_tag="FM": inf_FM:=s_var; elseif s_tag="CAS": inf_CAS:=s_var;
+ elseif s_tag="USE": inf_USE:=s_var; elseif s_tag="EXA": inf_EXA:=s_var;
+ elseif s_tag="EXB": inf_EXB:=s_var;
+ fi
+ fi
endfor
enddef;
%-------------------------------------------------------------------------------------------------
def endfont=
if (sw_font_frame=1)or(sw_font_frame=3):
- AUX(0,0)(draw_frame(font_wd,font_ht,(0,0),0.2pt);) fi
+ AUX(0,0)(draw_frame(font_wd,font_ht,(0,0),thickness_font_frame);) fi
if (sw_font_frame=2)or(sw_font_frame=3):
AUX(0,0)(draw_frame(font_wd-2margin_left_right,font_ht-2margin_top_bottom,
- (margin_left_right,margin_top_bottom),0.2pt);) fi
+ (margin_left_right,margin_top_bottom),thickness_font_frame);) fi
+ if sw_font_frame=4: AUX(0,0)(draw_corner(font_wd,font_ht,thickness_font_frame);) fi
if (sw_auxout=1)or(sw_checklist=1)or(sw_MOLout=1): mol_check; fi
if sw_auxout=1: auxfile_out; fi
if sw_checklist=1: checklist_out; fi
@@ -140,38 +145,44 @@
if f_beginchar=1:
char_num:=char_num+1; currentpicture:=chem_structure; chem_structure:=nullpicture;
endchar; fi
- restore_par(parameter_list); font_wd#:=stock_wd#; font_ht#:=stock_ht#;
+ restore_par(parameter_list); font_wd#:=save_wd#; font_ht#:=save_ht#;
if proc_end=1: scantokens("bye"); fi
enddef;
%-------------------------------------------------------------------------------------------------
def size_setup=
- BL# := font_wd#*ratio_bond_width;
- wedge_wd# := ratio_wedge_bond*BL#+offset_wedge#;
- zebra_gap# := ratio_zebragap_bond*BL#+offset_zebra_gap#;
- if (ratio_atom_bond*BL#+offset_atom#)<.8BL#:
- AL#:=ratio_atom_bond*BL#+offset_atom#; else: AL#:=.8BL#; ratio_chain_ring:= .5; fi
- gap# := ratio_bondgap_bond*BL#+offset_bond_gap#;
- bond_pen_wd# := ratio_thickness_bond*BL#+offset_thickness#;
- char_pen_wd# := ratio_char_bond*bond_pen_wd#;
- define_pixels(BL,zebra_gap,wedge_wd,AL,gap,bond_pen_wd,char_pen_wd,font_wd,font_ht);
+ if sw_solid=0: bond_len#:=font_wd#*ratio_bond_width; fi
+ wedge_wd# := ratio_wedge_bond*bond_len#+offset_wedge#;
+ zebra_gap# := ratio_zebragap_bond*bond_len#+offset_zebra_gap#;
+ if (ratio_atom_bond*bond_len#+offset_atom#)<.8bond_len#:
+ atom_wd#:=ratio_atom_bond*bond_len#+offset_atom#;
+ else:
+ atom_wd#:=.8bond_len#; ratio_chain_ring:= .5;
+ fi
+ gap#:= ratio_bondgap_bond*bond_len#+offset_bond_gap#;
+ bond_pen_wd# := ratio_thickness_bond*bond_len#+offset_thickness#;
+ char_pen_wd# := ratio_char_bond*bond_pen_wd#;
+ define_pixels(bond_len,zebra_gap,wedge_wd,atom_wd,gap,bond_pen_wd,char_pen_wd,
+ font_wd,font_ht,thickness_font_frame);
font_size_setup;
enddef;
%-------------------------------------------------------------------------------------------------
-def scaling= min_x:=min_y:= 4095.999; max_x:=max_y:=-4095.999;
+def scaling=
+min_x:=min_y:= 4095.999; max_x:=max_y:=-4095.999;
for i=1 upto cntA: xpos:=xpart(posA[i]); ypos:=ypart(posA[i]);
if strA[i]<>0: str_len:=nC:=num_d:=0;
- for j=0 upto length(com_str[strA[i]])-1: nA:=ASCII(pic_c(j,com_str[strA[i]]));
+ for j=0 upto length(com_str[strA[i]])-1:
+ nA:=ASCII(pic_c(j,com_str[strA[i]]));
if (nA=score_u)or(nA=hat)or(nA=par_s)or(nA=par_e):
- if (nA=hat)and(nC<.5AL): nC:=.5AL; fi;
- if (nA=score_u)and(num_d<.5AL): num_d:=.5AL; fi;
+ if (nA=hat)and(nC<.5atom_wd): nC:=.5atom_wd; fi;
+ if (nA=score_u)and(num_d<.5atom_wd): num_d:=.5atom_wd; fi;
else: str_len:=str_len+atom_w[nA]; fi
endfor
str_ang:=(br_ang[i] mod 360); num_f:=str_len;
if (str_ang<=91)or(str_ang>=269): num_f:=0; else: str_len:=0; fi
- if (xpos-num_f+.5AL)<min_x: min_x:=xpos-num_f+.5AL;
- elseif (xpos+str_len-.5AL)>max_x: max_x:=xpos+str_len-.5AL; fi
- if (ypos-num_d-.5AL)<min_y: min_y:=ypos-num_d-.5AL;
- elseif (ypos+nC+.5AL)>max_y: max_y:=ypos+nC+.5AL; fi
+ if (xpos-num_f+.5atom_wd)<min_x: min_x:=xpos-num_f+.5atom_wd;
+ elseif (xpos+str_len-.5atom_wd)>max_x: max_x:=xpos+str_len-.5atom_wd; fi
+ if (ypos-num_d-.5atom_wd)<min_y: min_y:=ypos-num_d-.5atom_wd;
+ elseif (ypos+nC+.5atom_wd)>max_y: max_y:=ypos+nC+.5atom_wd; fi
else: if xpos<min_x: min_x:=xpos; elseif xpos>max_x: max_x:=xpos; fi
if ypos<min_y: min_y:=ypos; elseif ypos>max_y: max_y:=ypos; fi fi
endfor
@@ -365,7 +376,6 @@
def MCf(text s)= MCd(1,1)(.5,.5)(s); enddef; % MC fill draw
%-------------------------------------------------------------------------------------------------
def MCd(expr RW,RH)(expr FW,FH)(text s)=
- if f_beginchar=0: beginchar(char_num,font_wd#,font_ht#,0); clearit; f_beginchar:=1; fi
mc_num:=user_def_number; ab_num:=ab_def_number; crR:=-ratio_chain_ring;
adrA:=adrB:=cntA:=cntB:=adrS:=cntPS:=angA[0]:=angB[0]:=br_ang[0]:=sB[0]:=cntC:=cntP:=0;
stkA[0]:=stkB[0]:=stkL[0]:=stkM[0]:=strAT:=f_lineT:=f_lenT:=f_envT:=f_rotT:=0;
@@ -375,13 +385,31 @@
''(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;
- else: size_setup; proc_skeleton; scaling; resize(RW,RH); size_setup;
- if ratio_bond_width>max_bond_width:
- 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
+ if sw_solid>=1:
+ size_setup; proc_skeleton; scaling;
+ else:
+ size_setup; proc_skeleton; scaling; resize(RW,RH); size_setup;
+ if bond_len#>max_bond_length#:
+ sw_solid:=1; bond_len#:=max_bond_length#;
+ size_setup; proc_skeleton; scaling; sw_solid:=0;
+ 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
+ %----------------------------------------------------------------------------------------
+ if f_beginchar=0:
+ if sw_clip=1:
+ f_wd#:=font_wd#*((len_x+2margin_left_right)/font_wd);
+ f_ht#:=font_ht#*((len_y+2margin_top_bottom)/font_ht);
+ font_wd:=len_x+2margin_left_right; font_ht:=len_y+2margin_top_bottom;
+ else:
+ f_wd#:=font_wd#; f_ht#:=font_ht#;
+ fi
+ beginchar(char_num,f_wd#,f_ht#,0);
+ f_beginchar:=1;
+ fi
for i=1 upto cntB: if lineB[i]<si_ : draw_bond(i,sB[i],eB[i],angB[i],lineB[i]); fi endfor
for i=1 upto cntB: if lineB[i]>=si_: draw_bond(i,sB[i],eB[i],angB[i],lineB[i]); fi endfor
for i=1 upto cntA:
@@ -389,12 +417,15 @@
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
else: nA:=i; fi
- draw_atom(i,posA[i],0,decimal(nA),1);
+ if i<10: draw_atom(i,posA[i],0,decimal(nA),1);
+ else: draw_atom(i,posA[i]+(-.2atom_wd,0),0,decimal(nA),1);
+ fi
elseif sw_numberB>=1:
else: draw_atom(i,posA[i],br_ang[i],com_str[strA[i]],strW[strA[i]]);
fi
endfor
- sft_X:=-min_x+(font_wd-len_x)*FW; sft_Y:=-min_y+(font_ht-len_y)*FH;
+ sft_X:=margin_left_right-min_x+(font_wd-len_x-2margin_left_right)*FW;
+ sft_Y:=margin_top_bottom-min_y+(font_ht-len_y-2margin_top_bottom)*FH;
if sw_mol_frame=1: AUX(sft_X,sft_Y)(draw_frame(len_x,len_y,(min_x,min_y),0.2pt);) fi
if sw_start_vector=1: AUX(sft_X,sft_Y)(start_vector) fi
addto chem_structure also currentpicture shifted (sft_X,sft_Y);
@@ -401,8 +432,13 @@
clearit;
enddef;
%------------------------------------------------------------------------------------------------
-def draw_frame(expr LX,LY,PS,PN)= draw unitsquare xscaled LX yscaled LY shifted PS wpcs PN;
+def draw_frame(expr LX,LY,PS,PN)=
+ draw ((PN/2,PN/2)--(LX-PN/2,PN/2)--(LX-PN/2,LY-PN/2)--(PN/2,LY-PN/2)--cycle) shifted PS wpss PN;
enddef;
+def draw_corner(expr LX,LY,PN)=
+ drawdot (PN/2,PN/2) wpss PN; drawdot (LX-PN/2,PN/2) wpss PN;
+ drawdot (LX-PN/2,LY-PN/2) wpss PN; drawdot (PN/2,LY-PN/2) wpss PN;
+enddef;
def start_vector= draw (posA[1] shifted (-1mm,0))--(posA[1] shifted (-4mm,0))
withpen penrazor rotated 90 scaled .8mm;
fill (posA[1] shifted (-2mm,-1mm))--posA[1]--(posA[1] shifted (-2mm,1mm))--cycle;
@@ -510,9 +546,9 @@
def termB=
if f_term=0: if f_bra=0: br_ang[incr cntA]:=angT; else: f_bra:=0; fi f_term:=1; fi enddef;
def proc_cyc(expr n)= add_bond(angle(posA[n]-posB[cntB+1])-angT); enddef;
-def glu_c(expr n)= if strA[n]<>0: nB:=angT mod 180; nC:=.5strW[strA[n]]*AL;
+def glu_c(expr n)= if strA[n]<>0: nB:=angT mod 180; nC:=.5strW[strA[n]]*atom_wd;
if (nB<45)or(nB>135):glu:=glu+((sind(nB)*nC)++nC);
- else :glu:=glu+((cosd(nB)*.5AL)++.5AL) fi fi
+ else :glu:=glu+((cosd(nB)*.5atom_wd)++.5atom_wd) fi fi
enddef;
%-------------------------------------------------------------------------------------------------
def add_bond(expr m)=
@@ -521,9 +557,9 @@
if tn>=0: br_ang[cntA]:=angT+tn/2-90; else: br_ang[cntA]:=angT+tn/2+90; fi
else: f_bra:=0; fi
angB[cntB]:=angT:=(angT+tn) mod 360;
- if f_end=0: if lenB[cntB]=_size_a: posB[cntB+1]:=sfB(posB[cntB],AL,angT);
+ if f_end=0: if lenB[cntB]=_size_a: posB[cntB+1]:=sfB(posB[cntB],atom_wd,angT);
else: nA:=lenB[cntB];glu:=0; if nA<0: nA:=-nA; glu_c(adrT);glu_c(cntA+1); fi
- posB[cntB+1]:=sfB(posB[cntB],nA*BL+glu,angT); fi
+ posB[cntB+1]:=sfB(posB[cntB],nA*bond_len+glu,angT); fi
posA[cntA+1]:=posB[cntB+1]; f_term:=0;
else: f_end:=0; f_term:=1; fi
enddef;
@@ -539,21 +575,23 @@
def pic_c(expr i,s)= substring(i,i+1) of s enddef;
def draw_atom(expr n,p,r,s,w)=
if ((r mod 360)<=90+1)or((r mod 360)>=270-1): dx:=1; else: dx:=-1; fi
- pairT:=p-(.5AL*w*dx,.5AL); u:=j:=0;
+ pairT:=p-(.5atom_wd*w*dx,.5atom_wd); u:=j:=0;
for i=0 upto length(s)-1: nB:=ASCII(pic_c(i,s));
if dx<0: if nB=par_s:k:=i+1;j:=1;forever:exitif pic_c(i+(incr j),s)="}";endfor fi
if j>0: nB:=ASCII(pic_c(k+(decr j),s)); fi fi
if nB=score_u: if u=0: u:=-.5; else:u:=0; fi;
elseif nB=hat: if u=0: u:= .5; else:u:=0; fi;
- elseif (nB<>par_s)and(nB<>par_e): nA:=atom_w[nB]; pairA:=pairT+(.5*((dx-1)*nA),u*AL);
- if sw_atom_frame=1: draw_frame(nA,AL,pairA,0.01pt); fi
+ elseif (nB<>par_s)and(nB<>par_e):
+ nA:=atom_w[nB]; pairA:=pairT+(.5*((dx-1)*nA),u*atom_wd);
+ if sw_atom_frame=1: draw_frame(nA,atom_wd,pairA,0.1pt); fi
if (sw_numberA>=1)or(sw_numberB>=1):
- erase fill unitsquare xscaled nA yscaled AL shifted pairA wpcs 0.01pt; fi
+ erase fill unitsquare xscaled nA yscaled atom_wd shifted pairA wpcs 0.01pt; fi
addto currentpicture also atom_font[nB] shifted (pairA-(0,atom_d[nB])) Cp(colorA[n]);
pairT:=pairT+(nA*dx,0); fi endfor
enddef;
%-------------------------------------------------------------------------------------------------
def wpcs expr n= withpen pencircle scaled n enddef;
+def wpss expr n= withpen pensquare scaled n enddef;
def sqr(expr WD,HT)= ((0,0)--(WD,0)--(WD,HT)--(0,HT)--cycle) enddef;
def sfB(expr p,l,r)= p shifted ((l,0) rotated r) enddef;
def wz_put(expr PA,PB,PD,CL)= save nA,nC,nD; nC:=length(Le-Ls);
@@ -568,13 +606,13 @@
def cut_off(expr p,w,h,s)=
p intersectionpoint sqr(1.1w,1.1h) shifted (s-(.5(1.1w),.5(1.1h))); enddef;
def clipping(expr SA,SB,PA,PB,LEN)=
- pT:=PA--PB; tn:=0.6AL/LEN;
+ pT:=PA--PB; tn:=0.6atom_wd/LEN;
if (SA=0)and(SB=0): Ls:=PA; Le:=PB; pA:=pB:=pT; pC:=0.1[PA,PB]--0.1[PB,PA];
- elseif SA=0: Ls:=PA; Le:=cut_off(pT,AL*strW[SB],AL,PB);
+ elseif SA=0: Ls:=PA; Le:=cut_off(pT,atom_wd*strW[SB],atom_wd,PB);
pA:=Ls--Le; pB:=Ls--tn[PB,PA]; pC:=0.1[PA,PB]--Le;
- elseif SB=0: Ls:= cut_off(pT,AL*strW[SA],AL,PA); Le:=PB;
+ elseif SB=0: Ls:= cut_off(pT,atom_wd*strW[SA],atom_wd,PA); Le:=PB;
pA:=Ls--Le; pB:=tn[PA,PB]--Le; pC:=Ls--(0.1)[PB,PA];
- else: Ls:=cut_off(pT,AL*strW[SA],AL,PA); Le:=cut_off(pT,AL*strW[SB],AL,PB);
+ else: Ls:=cut_off(pT,atom_wd*strW[SA],atom_wd,PA); Le:=cut_off(pT,atom_wd*strW[SB],atom_wd,PB);
pB:=tn[PA,PB]--tn[PB,PA]; pC:=pA:=Ls--Le; fi
enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -679,7 +717,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def font_size_set(expr m)(expr n)(expr o)(expr s)=
for j=0 upto length(s)-1: num_a:=ASCII(pic_c(j,s));
- if f_FON[num_a]=1: atom_w[num_a]:=m*AL; atom_h[num_a]:=n*AL; atom_d[num_a]:=o*AL; fi
+ if f_FON[num_a]=1: atom_w[num_a]:=m*atom_wd; atom_h[num_a]:=n*atom_wd; atom_d[num_a]:=o*atom_wd; fi
endfor
enddef;
def font_size_setup= font_size_set( 1)( 1)(0)("CGHMNOQ");
@@ -703,7 +741,7 @@
z01=( 0,hP); z02=(hP, 0); z03=(hP,hP); z05=(aW,hP); z07=(fW, 0); z08=( 0,hH); z09=(hP,hH);
z10=(fW,hH); z12=( 0,fH); z13=(hP,fH); z14=(hW,fH); z16=(aW,fH); z18=(hP,aH); z19=(hW,hP);
s;
- atom_font[ASCII(c)]:=currentpicture shifted (ratio_atomgap_atom*AL,ratio_atomgap_atom*AL);
+ atom_font[ASCII(c)]:=currentpicture shifted (ratio_atomgap_atom*atom_wd,ratio_atomgap_atom*atom_wd);
clearxy; save x,y; clearit; fi
enddef;
%-------------------------------------------------------------------------------------------------
@@ -860,15 +898,17 @@
" 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);
+ message "% Bond length = "&fdr(3)(bond_len)&" Atom size = "&fdr(3)(atom_wd);
message "% Atom count="&fdr(3)(cntA)&" Bond count="&fdr(3)(cntB)&
" Ring count="&fdr(3)(cntB-cntA+1)&" Hide H ="&fdr(3)(hide_H);
message "%-----------------------------------< atom >< bond >-------";
- for i=1 upto cntA: message "% "&fdr(3)(i)&" ("&fdr(10)(xpart(posA[i])/BL)&" ) ("&
- fdr(10)(ypart(posA[i])/BL)&" ) "&fixed_l(8)(com_str[strA[i]])&" "&fdr(3)(Bcnt[i]); endfor
+ for i=1 upto cntA: message "% "&fdr(3)(i)&" ("&fdr(10)(xpart(posA[i])/bond_len)&" ) ("&
+ fdr(10)(ypart(posA[i])/bond_len)&" ) "&fixed_l(8)(com_str[strA[i]])&" "&fdr(3)(Bcnt[i]);
+ endfor
message "%Bond list---------------------------------------------------------";
for i=1 upto cntB: if lineB[i]<>0: message "% "&fdr(3)(incr nA)&" "&fdr(3)(sB[i])&
- " -> "&fdr(3)(eB[i])&" ("&fdr(3)(bondC[i]-si+1)&")"; fi endfor
+ " -> "&fdr(3)(eB[i])&" ("&fdr(3)(bondC[i]-si+1)&")"; fi
+ endfor
message "%Fomula / Molecular weight ---------------------------------------";
if cal_MWp<=40: cal_MW_str:=fdr(10)(cal_MW);
else: cal_MW_str:=fdr(10)(cal_MWp)&" * 100"; fi
@@ -875,12 +915,12 @@
for i=1 upto tbl_max:
if sumA[i]>=1:
message "% "&fixed_l(4)(stripP(tblA[i]))&"("&fdr(9)(wtA[i])&") * "&fdr(6)(sumA[i])&" = "
- if tmp_wtp<=40: &fdr(12)(wtA[i]*sumA[i]); else: &fdr(12)(tmp_wtp)&" * 100"; fi fi endfor
+ if tmp_wtp<=40: &fdr(12)(wtA[i]*sumA[i]); else: &fdr(12)(tmp_wtp)&" * 100"; fi fi
+ endfor
message "% Weight Calc: " &cal_MW_str &" / Input: "
- if inf_MW>0: &decimal(inf_MW) &" / weight gap= " &decimal(cal_MW-inf_MW) fi;
+ if scantokens(inf_MW)>0: &inf_MW &" / weight gap= " &decimal(cal_MW-scantokens(inf_MW)) fi;
message "% Fomula Calc: "&cal_FM&" / Input: "
- if inf_FM<>"":&inf_FM&" / "&
- if inf_FM=cal_FM: "MACTCH" else: "NOT MACTCH" fi fi;
+ if inf_FM<>"":&inf_FM&" / "& if inf_FM=cal_FM: "MACTCH" else: "NOT MACTCH" fi fi;
message "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%";
enddef;
%------------------------------------------------------------------------------------------------
@@ -888,7 +928,7 @@
mp_log_name:=jobname&"-"&fit_zero(char_num)&decimal(char_num)&"-"&inf_EN&".mol";
printf ""; printf " -MCFtoMOL- "&fixed_l(20)(info[1]); printf "";
printf fdr(3)(cntA)&fdr(3)(cntB)&" 0 0 0 0 0 0 0 0999 V2000";
- for i=1 upto cntA: printf fdr(10)(xpart(posA[i])/BL)& fdr(10)(ypart(posA[i])/BL)&
+ for i=1 upto cntA: printf fdr(10)(xpart(posA[i])/bond_len)& fdr(10)(ypart(posA[i])/bond_len)&
fdr(10)(0)&" "&fixed_l(2)(stripP(com_str[strA[i]]))&" 0 0 0 0"; endfor
for i=1 upto cntB: if lineB[i]<>0:
if (lineB[i]=dl)or(lineB[i]=dr)or(lineB[i]=dm): nA:=2;
More information about the tex-live-commits
mailing list