Tikz: 座標を使った計算

Tikz: 座標を使った計算

質問に触発されてある点を通り、別の点と平行な線を描くにはどうすればよいでしょうか?座標を使って計算をしようとしています。以下のコードは動作しませんが、少し変更すれば動作すると思います。基本的には

  • では%Q1、ベクトル(1,1)を(x)に加えて(y)を得ようとしています。
  • では%Q2、距離1.5と角度270°で定義されたベクトルを(x)に追加して(y)を取得しようとしています。
  • %Q3別の文脈でも同じです%Q2(おそらく同じ構文も同じです)

\documentclass{article}
\usepackage{tkz-euclide}
\usetkzobj{all}
\usetikzlibrary{calc,patterns,angles,quotes}

\begin{document}
\begin{center}
\begin{tikzpicture}[dot/.style={circle,inner sep=1pt,fill,label={$#1$},name=#1},
  extended line/.style={shorten >=-#1,shorten <=-#1},
  extended line/.default=1cm]

\node [dot=x] at (0,0) {};
% --------
%\node [dot=y] at (x) +($(1,1)$) {};        %Q1
%\node [dot=y] at (x) +($(1.5;270)$) {};    %Q2
\node [dot=y] at (x) ++(1.5;270) {};        %Q2
% --------
\draw [extended line=0.5cm] (x) -- (y);
\end{tikzpicture}
\end{center}
\begin{center}
\begin{tikzpicture}[]

\ccordinate (a) at (0,0);
\ccordinate (b) at (a)+(2;45);              %Q3
\draw [extended line=0.5cm] (a) -- (b);
\end{tikzpicture}
\end{center}

\end{document}

答え1

コメントのおかげで、答えは次のとおりです:

\documentclass{article}
\usepackage{tkz-euclide}
\usetkzobj{all}
\usetikzlibrary{calc,patterns,angles,quotes}

\begin{document}
\begin{center}
\begin{tikzpicture}[x=1cm,y=1cm,
  dot/.style={circle,inner sep=1pt,fill,label={$#1$},name=#1},
  dott/.style={circle,inner sep=1pt,fill},
  extended line/.style={shorten >=-#1,shorten <=-#1},
  extended line/.default=1cm]

\node [dot=x] at (0,0) {};
\node [dot=y] at ($(x)+(45:2)$) {};
\node [dot=z] at ($(x)+(1,0)$) {};
\draw [extended line=0.5cm] (x) -- (y);
\draw [extended line=0.5cm] (x) -- (z);

\coordinate (a) at (2,0);
\coordinate (b) at ($(a)+(-45:1)$);
\draw [extended line=0.5cm] (a) -- (b);
\node[dott] at (a) {};
\node at (a) [above right = 0.7mm of a] {$a$};
\node[dott] at (b) {};
\node at (b) [above] {$b$};

\end{tikzpicture}
\end{center}

\end{document}

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

関連情報