
Preciso desenhar um copolímero tribloco genérico, como apresentado neste MWE e na figura. O problema que tenho é com os lados esquerdo e direito da molécula. Quero que terminem apenas com "(" e ")" e nenhuma ligação química representada. Se eu mantiver o "-", obtenho os resultados no lado esquerdo da imagem com uma ligação química. Se eu não incluí-lo obtenho os resultados apresentados no lado direito da imagem com um erro no posicionamento do ")" e alguns caracteres inúteis.
Estou usando o chemfig 1.2e do arquivo Ubuntu 18.04. O que significa que não possuo os novos recursos introduzidos nas versões mais recentes do pacote.
Obrigado !
editar: também um ponto de bônus se as ligações químicas forem mais curtas :)
\documentclass{article}
\usepackage{mwe}
\usepackage{chemfig}
\begin{document}
% Define a function to draw polymer structures
\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$}}$};}}
\setpolymerdelim()
\chemfig{
-[@{opa,.75}]A-[@{cla,0.25}]
-[@{opb,.75}]B-[@{clb,0.25}]
-[@{opc,.75}]A\ [@{clc,0.25}]
}
\makebraces[5pt,5pt]{\!\!n_{i}}{opa}{cla}
\makebraces[5pt,5pt]{\!\!n_{i+1}}{opb}{clb}
\makebraces[5pt,5pt]{\!\!n_{i+2}}{opc}{clc}
\end{document}
Responder1
Bem-vindo! Aqui está uma maneira: defina a opacidade dessas ligações como zero.
\documentclass{article}
\usepackage{chemfig}
\begin{document}
% Define a function to draw polymer structures
\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$}}$};}}
\setpolymerdelim()
\chemfig{
-[@{opa,.75},,,,opacity=0]A-[@{cla,0.25}]
-[@{opb,.75}]B-[@{clb,0.25}]
-[@{opc,.75}]A-[@{clc,0.25},,,,opacity=0]
}
\makebraces[5pt,5pt]{\!\!n_{i}}{opa}{cla}
\makebraces[5pt,5pt]{\!\!n_{i+1}}{opb}{clb}
\makebraces[5pt,5pt]{\!\!n_{i+2}}{opc}{clc}
\end{document}
Observe que pode haver maneiras melhores. No entanto, isso éamaneira de se livrar desses laços.