Seite 1 von 1

Ladung bei ChemFig

Verfasst: Mo 11. Apr 2011, 14:53
von Ferghun
Hallo,

Wenn ich mit ChemFig ein geladenes Molekül zeichne, dann teilen sich die Ladung und das entsprechende Atom den Platz. Das ist zwar nur ein kleiner Schöhnheitsfehler, aber vielleicht könnt ihr mir ja helfen, denn die Anleitung zu ChemFig erklärt nicht viel darüber.
Schaut euch das mal an. Hier ein Beispiel:
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{chemfig}
\usepackage[version=3]{mhchem}

\begin{document}
\chemfig{R^1-[:30]C(=[:90]O^{+}-[:150]H)-[:-30]O-[:-90]H}
\chemfig{R^1-[:30]C^{+}(-[:90]O-[:150]H)-[:-30]O-[:-90]H}
\chemfig{R^1-[:30]C(-[:90]O-[:150]H)=[:-30]O^{+}-[:-90]H}
\end{document}
Wie kriegt man das hin, dass das Atom sich nicht verändert oder bewegt, auch wenn ich eine Ladung zuzeichne?

Re: Ladung bei ChemFig

Verfasst: Di 12. Apr 2011, 08:47
von cgnieder
Ferghun hat geschrieben:Wie kriegt man das hin, dass das Atom sich nicht verändert oder bewegt, auch wenn ich eine Ladung zuzeichne?
ChemFig stellt dafür die Befehle
\chemabove{<atom>}{<darüber>}
und
\chembelow{<atom>}{<darunter>}
bereit.

Was man dann noch machen muss, ist, die Ladung zu verschieben, etwa mit
\hspace
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{chemfig}
\usepackage[version=3]{mhchem}

\begin{document}
\chemfig{R^1-[:30]C(=[:90]\chemabove{O}{\hspace{5mm}+}-[:150]H)-[:-30]O-[:-90]H}
\chemfig{R^1-[:30]\chemabove{C}{\hspace{5mm}+}(-[:90]O-[:150]H)-[:-30]O-[:-90]H}
\chemfig{R^1-[:30]C(-[:90]O-[:150]H)=[:-30]\chemabove{O}{\hspace{5mm}+}-[:-90]H}
\end{document}
Steht übrigens im ChemFig-Manual Teil II Abschnitt 6: Ions (Seite 9)

Gruß,
Clemens

Verfasst: Di 12. Apr 2011, 11:40
von Ferghun
Genial! Vielen Dank! Dann habe ich wohl immer den Befehl chemabove und chembelow falsch eingegeben.

Eine Frage kommt jedoch noch auf: Wie verschiebe ich das Ladungssymbol nach unten? Ich versuche schon die ganze Zeit den Befehl \vspace einzusetzen, jedoch will sich das Plus nicht verschieben.

Hier z.B. ist es notwendig:
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{chemfig}
\usepackage[version=3]{mhchem}

\begin{document}
\chemfig{R^{1}-C(-[:90]O-[:150]H)(-[:-90]O-[:-150]R^{2})-\chemabove{O}{\hspace{5mm}+}(-[:60]H)-[:-60]H}
\end{document}

Verfasst: Di 12. Apr 2011, 11:45
von cgnieder
Hier würde ich eine unsichtbare Bindung verwenden:
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{chemfig}
\usepackage[version=3]{mhchem}

\begin{document}
\chemfig{R^{1}-C(-[:90]O-[:150]H)(-[:-90]O-[:-150]R^{2})-O(-[0,.25,,,draw=none]{+})(-[:60]H)-[:-60]H}
\end{document}

Verfasst: Di 12. Apr 2011, 14:44
von Ferghun
Klappt wunderbar. Vielen Dank! = )