l3drawを使用して\cplusを再作成する

l3drawを使用して\cplusを再作成する

次の MWE を検討してください。

ここに画像の説明を入力してください

\documentclass{article}
\usepackage{amsmath}
\usepackage{l3draw,xparse}
\ExplSyntaxOn
%---------------------------------------------------------
\box_new:N \default_math_plus
\hbox_set:Nn \default_math_plus {$+$}

\box_new:N \cplus_box


\dim_new:N \l__default_math_plus_width
\dim_set:Nn \l__default_math_plus_width { \box_wd:N \default_math_plus}

\fp_new:N \l__expl_cplus_fp

\cs_new_protected:Nn \expl_cplus:
 {
  \draw_begin:
  \draw_linewidth:n { \l__expl_cplus_fp }
  \draw_cap_round:
  \draw_join_round:
  \draw_path_moveto:n { 0.5\l__default_math_plus_width , 0.0\l__default_math_plus_width }
  \draw_path_lineto:n { 0.5\l__default_math_plus_width , 1.0\l__default_math_plus_width }
  \draw_path_use_clear:n { stroke }
  \draw_path_moveto:n { 0.0\l__default_math_plus_width , 0.5\l__default_math_plus_width }
  \draw_path_lineto:n { 1.0\l__default_math_plus_width , 0.5\l__default_math_plus_width }
  \draw_path_use_clear:n { stroke }
  \draw_path_circle:nn { 0.5\l__default_math_plus_width , 0.5\l__default_math_plus_width } {0.25\l__default_math_plus_width}
  \draw_path_use_clear:n { stroke }
  \draw_end:
 }
\NewDocumentCommand{\explcplus}{}
 {
  \mathbin
   {
    \fp_set:Nn \l__expl_cplus_fp { 0.08ex }
    \hbox_set:Nn \cplus_box { $\mspace{1mu}$ \expl_cplus: $\mspace{1mu}$ }
    \box_move_down:nn  { \box_dp:N \default_math_plus }{ \box_use:N \cplus_box }
   }
 }
 

%---------------------------------------------------------
\ExplSyntaxOff

\begin{document}
$a+b\explcplus c_{+\explcplus}$

$a\explcplus b+c_{+\explcplus}$

\medskip

% test for larger size

{\LARGE$a\explcplus b+c_{+\explcplus}$}
\end{document}

私は @egreg が以下の質問に対する回答で行ったことを再現しようとしています:https://tex.stackexchange.com/a/397806/10898 しかし、正しい数学スペースと深さを取得できないようです。

何が間違っているのでしょうか? または、+寸法を正しく計算するにはどうすればよいでしょうか?

最後の画像のスケーリングはオフになっており、ex適切にスケーリングされるように定義されていないようです。

関連情報