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