化学・英語が苦手な方のためのchemfigシリーズ第3弾です。
今回ももっとも基本的な要素である \chemfigの使い方を説明します!
*注意!!
この記事を書いている人は化学を専攻としていません。(むしろ苦手)
作図する構造式・反応式は高校化学~大学化学基礎までとします。
今回学習する範囲は公式ドキュメントでいうと「Length of a bond~Customization of bonds」あたりです。
スポンサーリンク
結合オプション
分子を作るには構成する原子と以下の設定が必要となります。
例えばHClの場合、単結合を表す「-」の後に以下の設定をつけることができます。
(終点となる原子を表す整数, (tikzオプション)]Cl}
早速、[]の中にある要素について順を追って見ていきましょう!
【引数1】角度指定の方法
前回、angle incrementのオプションの説明で結合の角度を整数で指定する方法を紹介しました。
角度指定は主に3つの方法で指定できます。
1と2はよく使うので覚えておきましょう。もちろん複数の方法で指定することもできます。
1.整数だけで指定
2.絶対角度で指定
3.相対角度で指定
ここでいう角度というのは、
結合の始点(デフォルトでは原子または分子を四角で囲んだときの中心)を原点としたときの角度という意味です。高校の三角関数における角度θに似てますね。
θは360度を越えてもOKですしマイナス値を超えてもOKです。個人的には上に伸ばす場合を正、下に伸ばす場合を負の角度と決めてしまった方が2桁の数字で表せるので楽だと思います。

例として、天然に産出するルビーやサファイアの主成分である酸化アルミニウム(Al2O3)を3つの方法で作図します。出力する図は共通にします。
デフォルトでは[1]は45度に設定していますが30度に直しています。
\chemfig[angle increment=30]{O =[-1]Al -[1]O -[-1]Al =[1]O}
2.絶対角度で指定 [:角度]
「1.整数だけで指定する方法」で省略した角度を省略せず表示するパターンです。
結合ごとに細かく指定できるのが特徴です。
\chemfig{O =[:-30]Al -[:30]O -[:-30]Al =[:30]O}
3.相対角度で指定 [::角度]
例ではOを基準に他の原子(隣のAl以外)の角度を指定できます。
絶対角度と混乱してしまうので、使う機会は少ないかも・・・ですが構造式を回して考えたいときは相対角度で描いた方が楽です。
\chemfig{O =[:-30]Al -[::60]O -[::-60]Al =[::60]O}
【引数2】結合の長さ
結合の長さ、結合幅については前回の記事で説明していますので省略します。
前回の記事はこちら↓
【引数3】結合の始点・終点の指定
chemfigは、水平に対する結合の角度を見て、最初のグループのどの原子と2番目のグループのどの原子を結合させるかを計算します。デフォルトでは、角度が-90<θ<90であれば、第1グループの最後の原子と第2グループの最初の原子との間に結合が作られます。その他の場合、結合は第1のグループの最初の原子と第2のグループの最後の原子との間で作られます。
手動で結合位置を替える場合、結合角度のあとに自然数で結合の始点・終点を指定します。
ここで(始点となる原子を表す数),(終点となる原子を表す数)は左から1,2,3,4・・・・と数えます。
例として油脂を挙げます。
%デフォルトで設定した場合
\chemfig{R^{1} -COOCH_2 -[-2]COCOH (-[4]R^{2}) -[-2]COCOH_2 (-[4]R^{3})} \qquad
%始点と終点を手動で指定した場合
\chemfig{R^{1} -COOCH_2 -[-2,,4,4]COOCH (-[4]R^{2}) -[-2,,4,4]COOCH_2 (-[4]R^{3})}
左側の油脂では、始点と終点を4,4と指定することで2つ目のCに単結合を作ることができてますね。
【引数4】結合線のカスタマイズ
[]の5つ目のオプションはtikzのオプションになります。これは結合線を点線にしたり色をつける部分です。
tikzのオプションなのでchemfigとは離れます。ですが、よく使う線の場合(特に点線)書き方をいちいち覚えるのは面倒くさいので1つ作ったらコピペように保存した方がよさそうです。
3つほど例を挙げておきます。
\chemfig{A-[,,,,dash pattern=on 2pt off 2pt,red]B}\par
\chemfig{A-[,,,,line width=3pt, ultra thick]B}\par
\chemfig{A-[,,,, draw=none]B}
また、カスタマイズした結合の線をすべてに適応させたい場合は最初の[]を「\chemfig{」のすぐあとに置きます。
\chemfig[angle increment=30]{O =[-1]Al -[1]O -[-1]Al =[1]O} \qquad
\chemfig[angle increment=30]{[-1,,,,red]O =Al -[1]O -[-1]Al =[1]O}
次回は側鎖と環式炭化水素の描き方です。今回の記事を応用したものですので、そこまで難しくはないと思います。引き続き頑張りましょう!
参考にしたサイト様
https://www.ctan.org/pkg/chemfig
https://tex.stackexchange.com/questions/161796/ugly-bond-joints-in-chemfig
がっつりカスタマイズしたいという方は以下のサイト様が分かりやすくて参考になります。
https://math-note.xyz/latex/tikz/tikz-style/