![¿Cómo mover la posición del enlace con el paquete chemfig?](https://rvso.com/image/286994/%C2%BFC%C3%B3mo%20mover%20la%20posici%C3%B3n%20del%20enlace%20con%20el%20paquete%20chemfig%3F.png)
Estoy usando este código para generar una estructura química con chemfig
el paquete:
\documentclass[12pt,a4paper]{standalone}
\usepackage{chemfig}
\begin{document}
\setatomsep{2.5em}
\chemfig{B(-[:35]N*5(=(-*6(=-=(-OH)-(-NO_2)=-))-=(-Ph)-(=N?[o])-))(-[:145]N*5(-?[o]=(-Ph)-=(-*6(=-=(-O-[7]-[1](=[:65]O)(-[:15]NH(-{(CH_2CH_2O)_nH})))-=-))-))(<[:225]F)(<:[:-45]F)}
\end{document}
No me gusta cómo chemfig
hace la conexión, que se cruza con el rojo. Necesito que el enlace vaya desde N
el primer C
átomo, no hacia el segundo.
Cómo se debe cambiar el código para evitar este problema.
Respuesta1
Aquí hay otra idea: si colocas cada uno de los paréntesis entre llaves ( {(}
y {)}
), se tratan como un átomo (es decir, como C
o H
) y puedes usar el argumento opcional de los enlaces para determinar a dónde llega el enlace:
<bond>[<angle>,<length factor>,<departure atom>,<arrival atom>,<TikZ options>]
Donde <departure atom>
y < arrival atom>
son los números de posición de los átomos donde debe comenzar o terminar el enlace, respectivamente.
En su caso el siguiente fragmento (el resto del MWE sin cambios)
-[,,,2]{(}CH_2CH_2O{)}_nH
da
Respuesta2
Se puede hacer así:
\documentclass[12pt,a4paper]{standalone}
\usepackage{chemfig}
\newcommand\setpolymerdelim[2]{\def\delimleft{#1}\def\delimright{#2}}
\def\makebraces[#1,#2]#3#4#5{%
\edef\delimhalfdim{\the\dimexpr(#1+#2)/2}%
\edef\delimvshift{\the\dimexpr(#1-#2)/2}%
\chemmove{%
\node[at=(#4),yshift=(\delimvshift)]
{$\left\delimleft\vrule height\delimhalfdim depth\delimhalfdim
width0pt\right.$};%
\node[at=(#5),yshift=(\delimvshift)]
{$\left.\vrule height\delimhalfdim depth\delimhalfdim
width0pt\right\delimright_{\rlap{$\scriptstyle#3$}}$};}}
\begin{document}
\setpolymerdelim()
\setatomsep{2.5em}
\chemfig{B(-[:35]N*5(=(-*6(=-=(-OH)-(-NO_2)=-))-=(-Ph)-(=N?[o])-))(-[:145]N*5(-?[o]=(-Ph)-=(-*6(=-=(-O-[:-45]-[:10](=[:65]O)(-[:-15]NH(-[@{op,.85}:1]CH_2CH_2O-[@{cl,0.15}:0,.7]H)(-[5,0.5,,,white])))-=-))-))(<[:225]F)(<:[:-45]F)}
\makebraces[5pt,5pt]{\!n}{op}{cl}
\end{document}