提取有序对的第一和第二个坐标

提取有序对的第一和第二个坐标

我正在尝试找到一种从 TeX 中的有序对中提取坐标的方法。请参阅此示例代码。

documentclass[12pt]{article}
\usepackage{xparse}
\begin{document}

% #1 and #2 are ordered pairs
\NewDocumentCommand{\coord}{ m m }
{
#1, #2

% Ordered pairs which correspond to (a) first coordinate of first pair and second 
% coordinate of second pair, (b) second coordinate of first pair and first coordinate of 
% second pair.

(#1[1], #2[2]), (#1[2]. #2[1])
}

\coord{(1, 2)}{(3, 4)}

\end{document}

预期输出\coord{(1, 2)}{(3, 4)}

(1, 2), (3, 4)
(1, 4), (2, 3)

答案1

因为您想要的语法使用了{...}{...},我们需要先删除它们,然后通过 \coordA 宏再次读取坐标。

\def\coord#1#2{\coordA#1#2}
\def\coordA(#1,#2#3)(#4,#5#6){\par(#1, #2#3), (#4, #5#6)\par(#1, #5#6), (#4, #2#3)\par}

\coord{(1, 2)}{(3, 4)}

该技巧#2#3)#2)删除了该参数前的可选空格。

相关内容