我正在尝试画画组氨酸使用 chemfig 时,我陷入了困境。我正确地绘制了大部分部件,但无法正确地连接咪唑环。以下是我目前所得到的:
\documentclass{article}
\usepackage{chemfig}
\definesubmol{ring}{N*5(=-{NH}-(-)=-)} % imidazole ring
\begin{document}
\chemfig{!{ring}-[:30]-[:-30](-[:-90]NH_2)-[:30](=[:90]O)(-[:-30]OH)} % histidine
\end{document}
有没有简单的方法可以使用我的子分子并以正确的原子和角度将其附着到主要部分?
干杯 :)
答案1
chemfig
分子可以通过在分子中首先指定一个角度作为选项来获得默认旋转:
\chemfig{[:<angle>]...}
选择正确的角度就可以达到目的:
\documentclass{article}
\usepackage{chemfig}
\definesubmol{imidazole}{N*5(=-{NH}-(-)=-)} % imidazole ring
\begin{document}
\chemfig{[:168]!{imidazole}-[:30]-[:-30](-[:-90]NH_2)-[:30](=[:90]O)(-[:-30]OH)} % histidine
\end{document}
前:
后:
必要的进一步修正应该很简单(必须切换 NH...)
实际上,为了实现某些自动化,您可以利用可选参数来\definesubmol
:
`\definesubmol{<name>}[<molecule to the left>]{<molecule to the right>}
在这种情况下:
\documentclass{article}
\usepackage{chemfig}
\definesubmol{imidazole}[N*5(=-{HN}-(-)=-)]{N*5(=-{NH}-(-)=-)} % imidazole ring
\begin{document}
\chemfig{!{imidazole}}
\chemfig{[:168]!{imidazole}}
\end{document}
\documentclass{article}
\usepackage{chemfig}
\definesubmol{imidazole}[N*5(=-{HN}-(-)=-)]{N*5(=-{NH}-(-)=-)} % imidazole ring
\begin{document}
\chemfig{[:168]!{imidazole}-[:30]-[:-30](-[:-90]NH_2)-[:30](=[:90]O)(-[:-30]OH)} % histidine
\end{document}
答案2
如果它应该与图片中的完全一样(接近),则以下修改可能会有用。假设角度为 30 度和 120 度;因此修正为:120+72=192。
您的原始定义留在序言中以供比较。
\documentclass{article}
\usepackage{chemfig}
\definesubmol{ring}{N*5(=-{NH}-(-)=-)} % imidazole ring
\begin{document}
\definesubmol{ring}{*5(-{N}=-{HN}-=)} % imidazole ring
\chemfig{[:-192]!{ring}-[:30]-[:-30](-[:-90]NH_2)-[:30](=[:90]O)(-[:-30]OH)} % histidine
\end{document}