1

I'd like to draw a picture like the following with chemfig electron shift visualized by arcs

How can I draw the red arcs (e.g. in H-O) and the red line (e.g. in C=C ).

I startet already:

\documentclass{standalone}

\usepackage{chemfig}
  \setatomsep{2em}
  \setbondstyle{line width=1pt}
  \setlewis{}{}{line width=1pt}

\usepackage{chemmacros}

\begin{document}
\schemestart
 \chemfig{@{a1}C(-[2]H)(-[4]H)(-[6]H)-@{a2}C(-[0]H)(-[2]H)(-[6]H)}
 \chemmove{\draw[thick,green,-] ([shift=(65:15pt)]a1) arc (65:115:17pt);}
 \chemmove{\draw[thick,green,-] ([shift=(155:15pt)]a1) arc (155:205:17pt);}
 \chemmove{\draw[thick,green,-] ([shift=(245:15pt)]a1) arc (245:295:17pt);}
 \chemmove{\draw[thick,green,-] ([shift=(-25:15pt)]a2) arc (-25:25:17pt);}
 \chemmove{\draw[thick,green,-] ([shift=(65:15pt)]a2) arc (65:115:17pt);}
 \chemmove{\draw[thick,green,-] ([shift=(245:15pt)]a2) arc (245:295:17pt);}
\schemestop
\end{document}

enter image description here

How can I split the C-C bond homgenous, which means to draw a line perpendicular to the bond, like this C-|-C

Besides: I not confident with my solution: If I change the „setatomsep“ I have to adjust all values in the chemmove-commands. Is there a more elegant solution?

enter image description here

1 Answer 1

2

Have you thought about using a couple of simple styles and arrow tips?

For example,

\documentclass[border=10pt]{standalone}
\usepackage{chemfig}
\setchemfig{
  atom sep=2em,
  bond style={line width=1pt},
  lewis style={line width=1pt},
}
\usetikzlibrary{arrows.meta,decorations.markings}
\usepackage{chemmacros}
\tikzset{
  my arc/.tip={Arc Barb[green,arc=60,length=1.5em]},
  my split/.style={postaction=decorate,decoration={markings, mark=at position .5 with {\arrow[red]{Bar[width=1em]}}}}
}
\begin{document}
  \schemestart
  \chemfig{[,,,,-my arc]
    @{a1}C(-[2]H)(-[4]H)(-[6]H)-[,,,,my split]@{a2}C(-[0]H)(-[2]H)(-[6]H)
  }
  \schemestop
\end{document}

arrow tips

Note that I updated your obsolete syntax which generates warnings on compilation and will eventually generate errors, according to the manual.

2
  • 1
    You make my work much simpler. Works perfect for single bonds. But with double bonds I got two arcs (and only one is needed). For example with \chemfig{ C(-[2,,,,-my arc]H)(-[4,,,,-my arc]H)(-[6,,,,-my arc]H)-[,,,,my split]C(=[1,,,,my arc-]O)(-[7,,,,my arc-]O(-[0,,,,-my arc]H))} Commented Jul 30, 2018 at 16:06
  • @Solarflares I suggest asking a follow-up and linking this question. I wouldn't expect that, but I maybe the double bonds are drawn as two paths rather than one double. (I only know the chemfig I learnt to answer this question.) If you ask a follow-up explaining that problem, you might get a better solution, especially if you link here and include an MWE.
    – cfr
    Commented Jul 30, 2018 at 23:25

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .