Esta es una continuación deesta preguntasobre las flechas necesarias para la geometría biracional, con la misma premisa básica queesta preguntasobre xdashrightarrow
etc.
Necesito una flecha como xmapsto
pero con la mapsto
flecha discontinua. actualmente tengo
\def\dashmapsto{\mapstochar\dashrightarrow}
que da la dashmapsto
flecha. Me encantaría si pudiera tener un xdashmapsto
complemento.
Gracias por cualquier ayuda que pueda ofrecer.
Respuesta1
Simplemente combiné las dos respuestas que citas, usando la técnica de David aplicada al código de Heiko. El mérito es de ellos. Aquí estaba mi adición al código de Heiko:
\newcommand\xdashmapsto[2][]{\mathrel{\mapstochar\xdashrightarrow[#1]{#2}}}
El único giro fue recordar emplear los argumentos de la misma manera que los empleados por \xdashrightarrow
.
\documentclass{article}
\usepackage{amsfonts}
\usepackage{amsmath}
\newcommand\xdashmapsto[2][]{\mathrel{\mapstochar\xdashrightarrow[#1]{#2}}}
\makeatletter
\newcommand*{\da@rightarrow}{\mathchar"0\hexnumber@\symAMSa 4B }
\newcommand*{\da@leftarrow}{\mathchar"0\hexnumber@\symAMSa 4C }
\newcommand*{\xdashrightarrow}[2][]{%
\mathrel{%
\mathpalette{\da@xarrow{#1}{#2}{}\da@rightarrow{\,}{}}{}%
}%
}
\newcommand{\xdashleftarrow}[2][]{%
\mathrel{%
\mathpalette{\da@xarrow{#1}{#2}\da@leftarrow{}{}{\,}}{}%
}%
}
\newcommand*{\da@xarrow}[7]{%
% #1: below
% #2: above
% #3: arrow left
% #4: arrow right
% #5: space left
% #6: space right
% #7: math style
\sbox0{$\ifx#7\scriptstyle\scriptscriptstyle\else\scriptstyle\fi#5#1#6\m@th$}%
\sbox2{$\ifx#7\scriptstyle\scriptscriptstyle\else\scriptstyle\fi#5#2#6\m@th$}%
\sbox4{$#7\dabar@\m@th$}%
\dimen@=\wd0 %
\ifdim\wd2 >\dimen@
\dimen@=\wd2 %
\fi
\count@=2 %
\def\da@bars{\dabar@\dabar@}%
\@whiledim\count@\wd4<\dimen@\do{%
\advance\count@\@ne
\expandafter\def\expandafter\da@bars\expandafter{%
\da@bars
\dabar@
}%
}%
\mathrel{#3}%
\mathrel{%
\mathop{\da@bars}\limits
\ifx\\#1\\%
\else
_{\copy0}%
\fi
\ifx\\#2\\%
\else
^{\copy2}%
\fi
}%
\mathrel{#4}%
}
\makeatother
\begin{document}
\[ X \xdashmapsto{x} Y \xdashmapsto{\mathrm{longer}} Z
\xdashmapsto[\mathrm{underset}]{\mathrm{longer}} W
\]
\end{document}
Si uno encuentra que el espacio después de la flecha es demasiado grande, podría redefinirse con un pequeño espacio negativo como
\newcommand\xdashmapsto[2][]{\mathrel{\mapstochar\xdashrightarrow[#1]{#2}\!}}