PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wurzel schön abschließen



moggahorn
07-04-2007, 04:54
Hallo,

ich habe ein völlig unwichtiges Problem, ich würde nämlich gerne eine Wurzel schön mit einem Haken am oberen rechten Rand der Linie im Wurzelsymbol abschließen, ganz so wie man's in der Schule lernt. Voller Entsetzen musste ich aber nach etlichen Suchanfragen bei Google feststellen, dass dies anscheinend bis jetzt noch nie jemanden interessiert hat, weswegen ich mich jetzt ganz vertrauensvoll hierher wenden musste, da ich mir nicht vorstellen kann, dass man das mit Latex nicht hinbekommen kann. Vielen Dank schonmal.

Schönen Gruß
Jan

Rapmaster 2000
08-04-2007, 20:35
Hallo Jan!

Das würd mich auch interessieren! Ich hab mal was à la

\newlength{\hoch}
\newcommand{\wurzel}[1]{
$\sqrt{#1}$
\settoheight{\hoch}{$#1$} \hspace{-4.5mm}
\raisebox{\hoch}{$\lnot$}
}

versucht, musste aber feststellen, daß mein Häkchen für verschiedene Elemente unter der Wurzel unterschiedlich zum Strich über der Wurzel ausgerichtet ist. Offensichtlich hat LaTex einen komplizierteren Algorithmus um die Strichhöhe zu berechnen.
Solltest Du mal eine Lösung gefunden haben, lass hören...

Grüße

RM2

Rapmaster 2000
08-04-2007, 22:14
Ich nochmal. So funktionierts:



\newlength{\hoch}
\newcommand{\wurzel}[1]{$\sqrt{#1}$
\settoheight{\hoch}{$\sqrt{#1}$}\hspace{-1.41mm}\addtolength{\hoch}{-.51mm}\raisebox{\hoch}{\rotatebox{110}{\begin{mini page}{.7mm}\hrulefill\end{minipage}}}}


(ich weiß: umständlich, braucht 11pt Schriftgröße [sonst müssen die Längen angepasst werden] und graphicx für rotatebox)

Allerdings gehts nur im Textmode... Was muss man machen, daß es auch im mathmode funktioniert. Nur die "$" rausnehmen geht nicht - obwohl jeder der verwendeten Befehle auch im mathmode klappt.

Gruß

RM2

rais
08-04-2007, 23:18
noch nicht ganz ausgereift, aber vllt reicht es ja schon:


\documentclass{article}
\usepackage{amsmath}
\newlength{\myh}
\newcommand\mysqrt[2][]{%
\settoheight{\myh}{\vphantom{$\displaystyle#2$}}%
\sqrt[#1]{#2}\hbox{\hspace{-0.2pt}\raisebox{\myh}{\rule{0.2pt}{0.15\myh}}}%
}
\begin{document}
\[
\mysqrt{a^2 + b^2}\quad \mysqrt{\frac{1}{R_n}} \quad \mysqrt[3]{\frac{x^3}{\frac{2ax + x^2}{x^4}-1}}
\]
\end{document}

MfG,

Rapmaster 2000
08-04-2007, 23:45
Und hier noch mal rais Lösung mit anderem "Abschluss":



\documentclass[11pt]{report}
\usepackage{graphicx}
\usepackage{amsmath}
\begin{document}
\newlength{\hoch}
\newcommand{\wurzel}[2][]{\sqrt[#1]{#2}\settoheight{\hoch}{$\displaystyle\sqrt[#1]{#2}$}\hbox{\hspace{-.125mm}\addtolength{\hoch}{-.51mm}\raisebox{\hoch}{\rotatebox{110}{\begin{mini page}{.7mm}\hrulefill\end{minipage}}}}}

\begin{align}
\wurzel[2]{\frac{1}{2}}\quad \wurzel{a}\quad \wurzel{\!A}\quad \wurzel{1}\quad \wurzel{\frac{1}{\frac{1}{x}-1}} \\
\wurzel[3x+2]{\frac{\frac{1}{2}-\exp(x)}{\sin\left(\frac{1}{x}\right)+x}}
\end{align}
\end{document}


Gruß

RM2

rais
09-04-2007, 15:03
Und hier noch mal rais Lösung mit anderem "Abschluss":

erkenn' ich gar nicht wieder;-)
Wenn Du \rule statt \hrulefill nimmst, kannst Du die minipage weglassen,
wenn Du um 290° statt 110° drehst, ist der Startpunkt des Abschlusses links oben,
wenn Du dann noch vier solcher Befehle zur Verfügung stellst, dann kann man \mathchoice die Auswahl überlassen, etwa so:


\newcommand{\wurzeld}[2][]{\sqrt[#1]{#2}\settoheight{\hoch}{$\displaystyle\sqrt[#1]{#2}$}\hbox{\hspace{-0.15pt}\addtolength{\hoch}{-0.5pt}\raisebox{\hoch}{\rotatebox{290}{\rule{3pt}{ 0.3pt}}}}}
\newcommand{\wurzelt}[2][]{\sqrt[#1]{#2}\settoheight{\hoch}{$\textstyle\sqrt[#1]{#2}$}\hbox{\hspace{-0.15pt}\addtolength{\hoch}{-0.5pt}\raisebox{\hoch}{\rotatebox{290}{\rule{2.5pt }{0.3pt}}}}}
\newcommand{\wurzels}[2][]{\sqrt[#1]{#2}\settoheight{\hoch}{$\scriptstyle\sqrt[#1]{#2}$}\hbox{\hspace{-0.1pt}\addtolength{\hoch}{-0.5pt}\raisebox{\hoch}{\rotatebox{290}{\rule{2pt}{ 0.2pt}}}}}
\newcommand{\wurzelss}[2][]{\sqrt[#1]{#2}\settoheight{\hoch}{$\scriptscriptstyle\sqrt[#1]{#2}$}\hbox{\hspace{-0.1pt}\addtolength{\hoch}{-0.5pt}\raisebox{\hoch}{\rotatebox{290}{\rule{1.5pt }{0.2pt}}}}}
\newcommand{\wurzel}[2][]{%
\mathchoice{\wurzeld[#1]{#2}}{\wurzelt[#1]{#2}}{\wurzels[#1]{#2}}{\wurzelss[#1]{#2}}%
}

zum Vergleich kannst Du ja vorher/hinterher mal


\wurzel[3x+2]{\frac{\frac{1}{2}-\exp(x)}{\sin\left(\frac{1}{\wurzel{x}}\right)+x}} ausprobieren.

PS) wie sieht so ein Abschlußstrich eigentlich richtig aus?
MfG,

Rapmaster 2000
09-04-2007, 17:12
Hallo!


erkenn' ich gar nicht wieder;-)


Hatte mir ja Dein "\displaystyle" für richtige Darstellung in mathmode und das optionale Argument für "xte Wurzel aus" geborgt... und das mit der minipage war wohl etwas umständlich....


wenn Du dann noch vier solcher Befehle zur Verfügung stellst, dann kann man \mathchoice die Auswahl überlassen


Sagenhaft! Das klappt einwandfrei. Hab mir erlaubt, noch ein wenig an den Längen rumzufummeln - allerdings ist es nicht ganz von der Schriftgröße unabhängig (obwohl ich in em-Größen rechne) aber so sieht es doch ganz gut aus:




\documentclass[11pt]{report}
\usepackage{graphicx}
\usepackage{amsmath}
\begin{document}
\newlength{\hoch}
\newcommand{\wurzeld}[2][]{\sqrt[#1]{#2}\settoheight{\hoch}{$\displaystyle\sqrt[#1]{#2}$}\hbox{\hspace{-0.032em}\addtolength{\hoch}{-0.052em}\raisebox{\hoch}{\rotatebox{290}{\rule{.25 \hoch}{.4pt}}}}}
\newcommand{\wurzelt}[2][]{\sqrt[#1]{#2}\settoheight{\hoch}{$\textstyle\sqrt[#1]{#2}$}\hbox{\hspace{-0.024em}\addtolength{\hoch}{-0.05em}\raisebox{\hoch}{\rotatebox{290}{\rule{.25\ hoch}{0.3pt}}}}}
\newcommand{\wurzels}[2][]{\sqrt[#1]{#2}\settoheight{\hoch}{$\scriptstyle\sqrt[#1]{#2}$}\hbox{\hspace{-0.024em}\addtolength{\hoch}{-0.043em}\raisebox{\hoch}{\rotatebox{290}{\rule{.25 \hoch}{0.3pt}}}}}
\newcommand{\wurzelss}[2][]{\sqrt[#1]{#2}\settoheight{\hoch}{$\scriptscriptstyle\sqrt[#1]{#2}$}\hbox{\hspace{-0.024em}\addtolength{\hoch}{-0.039em}\raisebox{\hoch}{\rotatebox{290}{\rule{.25 \hoch}{0.3pt}}}}}
\newcommand{\wurzel}[2][]{%
\mathchoice{\wurzeld[#1]{#2}}{\wurzelt[#1]{#2}}{\wurzels[#1]{#2}}{\wurzelss[#1]{#2}}}

\[
\wurzel[2]{\frac{1}{2}}\quad \wurzel{a}\quad \wurzel{\!A}\quad \wurzel{1}\quad \wurzel{\frac{1}{\frac{1}{x}-1}} \] \[
\wurzel[3x+2]{\frac{\frac{1}{2}-\exp(x)}{\sin\left(\frac{1}{x}\right)+x}} \] \[
\wurzel{1+\wurzel{1+\frac{1}{\wurzel{x}}}} \]\[
\wurzel[3x+2]{\frac{\frac{1}{2}-\exp(x)}{\sin\left(\frac{1}{\wurzel{x\frac{1}{\wur zel{x}}}}\right)+x}}
\]
\end{document}



wie sieht so ein Abschlußstrich eigentlich richtig aus?


Ich besitze nur einen Text, in denen solche Abschlüsse vorkommen und dort ist es wie hier mit einem schrägen Strich nach rechts unten gemacht - allerdings ist der Winkel zum "Überstrich" wie der vom "Aufstrich" zum "Überstrich" gewählt, also müsste man noch \rotatebox dynamisch anpassen - aber ich glaube, daß ist zu viel des Guten...

Gruß

RM2

rais
10-04-2007, 00:22
Moin moin,


Hab mir erlaubt, noch ein wenig an den Längen rumzufummeln - allerdings ist es nicht ganz von der Schriftgröße unabhängig (obwohl ich in em-Größen rechne) aber so sieht es doch ganz gut aus:

oder vllt gerade weil Du den Startpunkt des Abschlusses in em verschiebst? Sollte z.B. der \hspace{..} hier nicht eher von der verwendeten Linienstärke für den Abschluß abhängig sein, als von der verwendeten Schriftgröße? Nur so als Idee...
MfG,

Rapmaster 2000
10-04-2007, 00:47
Du hast (natürlich) recht! \hspace mit absoluten Einheiten, aber die vertikale Ausrichtung mit relativen Einheiten, dann siehts auch bei bester Vergrößerung gut aus.

Dank & Gruß

RM2