I'm quite a bit baffled why my coordinate calculations are coming out so differently. All coordinates are where I expect them to be, except coordinate Z.
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\pagestyle{empty}
\setlength{\parindent}{0pt}
\begin{document}
%% Attempt 01
\begin{tikzpicture}[x=0.25cm,y=0.25cm]
%% why does this draw a 5 by 5 grid when I don't specify "step=1"???
\draw[help lines,blue!20,step=1] (0,0) grid (20,20);
%% quarter circle
\draw[blue] ( 0:20) arc(0:90:20);
%% Coordinates "B", "Bn", "Bl", "Br" all come out where I expect
%% Coordinate "Z" is not where I expected it.
\path [draw,line width=2pt,red]
(0,0) coordinate [label=135:P] (Q)
-- +( 90:20) coordinate (B) -- +( $ (B) !-1em! (Q) $ ) coordinate (Bn) node {$Bn$}
(B) -- +(0:20) coordinate (Bl) -- +( $ (B) !0.5! (Bl) $ ) coordinate [label=90:Z] (Z)
-- +(180:20) coordinate (Br)
;
%% Coordinate "X" goes where I thought coordinate "Z" would have gone too
\draw ( $ (B) !0.5!(Bl) $ ) coordinate [label=90:X] (X) circle (2pt);
\end{tikzpicture}
\vspace{1cm}
Same as example above except that $B$ is defined by \verb=(30:20)=
instead of \verb=(90:20)= relative to \verb=(0,0)=. Also, I omitted
\verb!step=1! from the \verb=help lines=.
%% Attempt 02---same as attempt 01 except for (1) the placement definition
%% of coordinate "B" and (2) not "step=1" for the "help lines".
\begin{tikzpicture}[x=0.25cm,y=0.25cm]
%% why does this draw a 5 by 5 grid when I don't specify "step=1"???
\draw[help lines,blue!20] (0,0) grid (20,20);
%% quarter circle
\draw[blue] ( 0:20) arc(0:90:20);
%% Coordinates "B", "Bn", "Bl", "Br" all come out where I expect
%% Coordinate "Z" is not where I expected it.
\path [draw,line width=2pt,red,opacity=0.50]
(0,0) coordinate [label=135:P] (Q)
-- +( 30:20) coordinate (B) -- +( $ (B) !-1em! (Q) $ ) coordinate (Bn) node {$Bn$}
(B) -- +(0:20) coordinate (Bl) -- +( $ (B) !0.5! (Bl) $ ) coordinate [label=90:Z] (Z)
-- +(180:20) coordinate (Br)
;
%% Coordinate "X" goes where I thought coordinate "Z" would have gone too
\draw ( $ (B) !0.5!(Bl) $ ) coordinate [label=90:X] (X) circle (2pt);
\end{tikzpicture}
\end{document}

Why are the coordinate calculations---for what seems to me to be the same thing---turning out so differently?
Minor question
Why must I specify "step=1" to get my help lines to look correctly? Without step=1, I only get a five-by-five grid.




stepis1cm, that's why you get a 5x5 grid if your unit vectors are0.2cmlong. – Jake Feb 16 at 17:26stepis not set relative to the units I've specified? – A.Ellett Feb 16 at 17:27Zto be whereXis. It's exactly the same coordinate calculation. – A.Ellett Feb 16 at 17:28+(...)becomes relative to(B). – percusse Feb 16 at 17:33