Chemfig-Problem: Zyklus bindet an das falsche Atom

Chemfig-Problem: Zyklus bindet an das falsche Atom

Ich versuche, Heparin mit Chemfig zu zeichnen. Leider, als ich schrieb:

\chemfig[cram width=2pt]{HO-[2,0.5,2]?<[7,0.7](-[2,0.4]OH)-[,,,,line width=2pt](-[6,0.5]OSO_3|{}^\ominus)>[1,0.7](-[2,1]O-[:10]?<[:-50](-[:170,0.5]HO)-[:10,,,,line width=2pt](-[:-55,0.5]OH)>[:-10](-[6,0.5]OH)-[:130]O-[:190]?(-[:150,0.5]-[2,0.5]OH))-[3,0.7]O-[4]?(-[6,0.3]COO|{}^\ominus)}

Ich habe nicht das erwartete Ergebnis erhalten, da beide Zyklen am selben Kohlenstoffatom gebunden sind, was nicht mein Ziel ist:

Bildbeschreibung hier eingeben

Haben Sie eine Idee, wie man dieses Problem lösen kann? Ich habe überlegt, ob ich diese Option verwenden soll, \definesubmolaber ich bin nicht an diese Option gewöhnt. Vielen Dank

Antwort1

Ihre Formel verwendet Haken, symbolisiert durch ?. Im Moment ?beziehen sich alle Vorkommen von auf denselben Haken, daher sehen Sie, dass die Linien alle mit dem ersten Vorkommen von verbunden sind ?.

Sie benötigen (mindestens) zwei Hooks. Um sie zu unterscheiden, fügen Sie einen Namen in eckigen Klammern hinzu. (Siehe Abschnitt 11 derChemfig-Handbuch.) Fügen Sie in Ihrem Fall [a]nach dem ersten und letzten Fragezeichen und [b]nach den anderen beiden Vorkommen hinzu.

Bildbeschreibung hier eingeben

\documentclass{article}
\usepackage{chemfig}
\begin{document}

\chemfig[cram width=2pt]{
  HO-[2,0.5,2]?[a]<[7,0.7]( % <<< First hook a
     -[2,0.4]OH
  )-[,,,,line width=2pt](
     -[6,0.5]OSO_3|{}^\ominus
  )>[1,0.7](
     -[2,1]O-[:10]?[b]<[:-50]( % <<< Second hook b
        -[:170,0.5]HO
     )-[:10,,,,line width=2pt](
        -[:-55,0.5]OH
     )>[:-10](
        -[6,0.5]OH
     )-[:130]O-[:190]?[b]( % <<< Second hook b
        -[:150,0.5]-[2,0.5]OH
     )
  )-[3,0.7]O-[4]?[a]( % <<< First hook a
     -[6,0.3]COO|{}^\ominus
  )
}

\end{document}

verwandte Informationen