我怎样才能在 LaTeX 中符号化轴

我怎样才能在 LaTeX 中符号化轴

我正在学习一门关于固体刚性物体旋转运动的课程,麻省理工学院的一位教授用一个字母符号来表示物体旋转的轴,这个符号上面有一条垂直线,下面还有一条垂直线。有没有一种简单的方法可以在一行 LaTeX 中做到这一点?

在此处输入图片描述

答案1

您可以创建一个node包含参数的节点。命名节点,然后就可以使用baseline=(A.text)(假设名称为A)。然后您可以控制线条的各个方面:粗细、长度、颜色、与文本的间距等。设置inner xsep为 0,然后设置inner ysep为您想要的任何值。

在此处输入图片描述

\documentclass{article}

\usepackage{tikz}

\newcommand{\rota}[1]{\tikz[baseline=(A.text)]{
    \node[inner xsep=0pt, inner ysep=1pt](A){$#1$};
    \draw[semithick] (A)--++(0,.2)(A)--++(0,-.2);
}}

\begin{document}

The axis \rota{s} is the axis of rotation.

\end{document}

答案2

您可以使用小竖条,tipa字体里就有一条。

唯一的问题是保持主角的基线,使用\vbox带有嵌套的解决了\vtop这个问题。小条排版在一定高度,因此需要降低并打破其深度。

\documentclass{article}

\NewDocumentCommand{\axis}{m}{%
  \mathord{\vbox{%
    \offinterlineskip
    \ialign{%
      \hfil##\hfil\cr
      \SMALLVERT\cr
      \noalign{\vskip0.5pt}
      \vtop{%
        \ialign{%
          \hfil##\hfil\cr
          $\mathsurround=0pt #1$\cr
          \noalign{\vskip1pt}
          \SMALLVERT\cr
        }%
      }\cr
    }%
  }}%
}

\DeclareFontFamily{U}{cmrtipa}{}
\DeclareFontShape{U}{cmrtipa}{m}{n}{<-> tipa10}{}

\newcommand{\SMALLVERT}{%
  \usefont{U}{cmrtipa}{m}{n}%
  \raisebox{-1ex}[\dimeval{\height-1ex}][0pt]{\symbol{34}}%
}

\begin{document}

$\axis{s}+\axis{r}+\axis{x}+\axis{y}$

\end{document}

在此处输入图片描述

相关内容