如何在 chemfig 中选择性地改变键长?

如何在 chemfig 中选择性地改变键长?

嗨,我正在尝试使用 chemfig 包创建三酰甘油分子。我已经很接近了。主链有三个侧链,C 原子上的双键与前一个侧链相连。理想情况下,如果双键较短或主链分子之间的单键较长,这个问题就会得到解决。我还没能弄清楚如何有选择地改变键长,这样它就不会影响其他键长。

非常感谢您的帮助。

谢谢。

%尝试 1:

\setatomsep{50pt}\chemfig{CH([:45]-[0]O-[1]C(=[::+45]O)-[7]R_2)([:90]-CH_2 -[0]O-[1]C(=[::+45]O)-[7]R_1)([:-90]-CH_2 -[0]O-[1]C(=[::+45]O)-[7]R_3)}

% 尝试 2:

\definesubmol{x}{\setatomsep{2em}-[1]C(=[::+45]O)-[7]R_2}
\definesubmol{y}{\setatomsep{2em}-[1]C(=[::+45]O)-[7]R_1}
\definesubmol{z}{\setatomsep{2em}-[1]C(=[::+45]O)-[7]R_3}
\chemfig{CH([:45]-[0]O!x)([:90]-CH_2-[0]O!y)([:-90]-CH_2-[0]O!z)}

答案1

Chemfig 的键有一个可选参数,它采用几个参数,其中一个是缩放键长的因子:

<bond>[<angle spec>,<length factor>,<other parameters>]

因此,您只需将该选项添加到您想要更短的债券中即可:

\documentclass[a4paper,11pt]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{chemfig}

\begin{document}

\setatomsep{50pt}
\chemfig{
  CH
   (-O-[:30]C(=[:90,.7]O)-[:-30]R_2)
   (-[:90]CH_2-O-[:30]C(=[:90,.7]O)-[:-30]R_1)
   (-[:-90]CH_2-O-[:30]C(=[:90,.7]O)-[:-30]R_3)
}

\end{document}

在此处输入图片描述

相关内容