Из модификации примера с порфирином я получил:
\documentclass[]{article}
\usepackage{chemfig}
\begin{document}
\chemfig{
a-?[a]=[::+63]*5(
-N?[b]=(
-(-[::63]d)=[::-54]*5(
-N?[c]-(
=(-[::63]g)-[::-54]*5(
-N?[d]-(
-[:180]*5([]
-N%(-[::-54,1.5]Fe?[b,,dotted]?[c]?[d,,dotted])
-[,,1]?[a]=-=
)
)
=-=
)
)
-=-
)
)
-=-
)
}
\end{document}
Ниже показано, что я хочу, повернув на 90 градусов. Обратите внимание, что моя проблема — это длина связи и угол четвертого кольца. Небольшие различия, такие как NH или двойные связи, я должен иметь возможность изменить сам.
решение1
Давайте сделаем это шаг за шагом. Давайте также нарисуем это как на картинке. Мы можем повернуть его позже. Имея это в виду, мы будем использовать только относительные углы для связей, т. е. мы будем использовать обозначение ::<angle>
.
Сначала нам нужно решить, где должна быть базовая линия молекулы, потому что это определяет, где нам нужно начать кодирование молекулы. Допустим, базовая линия должна быть вертикальным центром молекулы. Поэтому мы начинаем с середины с правой стороны:
\chemfig{-[::120]*5(----N=)}
Давайте добавим следующее кольцо:
\chemfig{-[::120]*5(---(=^-[::48]*5(----N=))-N=)}
Давайте добавим крючок ?
в то место, где мы хотим соединить его с нижней частью.
\chemfig{-[::120]*5(---(=^-[::48]*5(---?-N=))-N=)}
Теперь нижняя часть — поскольку мы снова начнем с самого начала, мы закодируем ее как ветвь, т.е. внутри ()
:
\chemfig{
(=_[::-120]*5(-N=---))
-[::120]*5(---(=^-[::48]*5(---?-N=))-N=)
}
Последний звонок:
\chemfig{
(=_[::-120]*5(-N=(-=_[::-48]*5(-[,,,1]NH----))---))
-[::120]*5(---(=^-[::48]*5(---?-N=))-N=)
}
Обратите внимание на -[,,,1]NH
часть, где мы используем опцию «прибытия» для облигации до , NH
поэтому она «прибывает» в N
вместо H
.
Последняя часть: второй крючок, который соединяется с первым крючком:
\chemfig{
(=_[::-120]*5(-N=(-=_[::-48]*5(-[,,,1]NH-?---))---))
-[::120]*5(---(=^-[::48]*5(---?-N=))-N=)
}
Поворот на 90 градусов легко осуществляется путем добавления [:90]
или [:-90]
в начале молекулы. Оба варианта требуют корректировки в NH
группе:
[:90]
:-[,,,2]HN-[,,2]
[:-90]
:-[,,,1]NH-[,,1]
Полный код:
\documentclass{article}
\usepackage{chemfig}
\begin{document}
\chemfig{
[:90](=_[::-120]*5(-N=(-=_[::-48]*5(-[,,,2]HN-[,,2]?---))---))
-[::120]*5(---(=^-[::48]*5(---?-N=))-N=)
}
\bigskip
\chemfig{
[:-90](=_[::-120]*5(-N=(-=_[::-48]*5(-[,,,1]NH-[,,1]?---))---))
-[::120]*5(---(=^-[::48]*5(---?-N=))-N=)
}
\end{document}
Вы всегда сможете скорректировать углы или другие детали позже:
\chemfig{
[:90](=_[::-117]*5(-N=(-=_[::-54]*5(-[,,,2]HN-[,,2]?---))---))
-[::117]*5(---(=^-[::54]*5(---?-N=))-N=)
}