\begin{tikzpicture}[scale = 0.9, every node/.style={scale=0.9}] \def\raynum{60} \foreach \x in {0,...,\raynum} { \ifthenelse{\x < 10 \OR \x>50} { \draw[color = darkgray] (\x /\raynum * 6 ,0) -- (3,4); }{ \draw[color = red] (\x /\raynum * 6 ,0) -- (3,4); } } \fill[ white ] (1.49,1) -- (4.51,1) -- (5.01,0) -- (0.99,0) -- cycle; \draw [color=darkgray] (0,0) -- node[below]{wall} (6,0) ; % wall \draw [color=red](1.5,1) -- node[below]{blocker} (4.5,1); %blocker %cam \node[ circle, fill = black, minimum width = 1mm, outer sep = 2mm ] (camera) at (3,4) {}; \node at (camera.north) {camera}; %magnifier \node[ circle, draw ] (mag) at (4.5, 1){}; \fill[ red ] (5,3) -- (6.7,3) -- (6.7,3.3) -- (5,3.3) -- cycle; \draw[darkgray] (8,2) coordinate (darkgray_ray_isec) -- (5,5) coordinate (orig); \draw[red] (6.4,3.3) coordinate (red_ray_isec) -- (5,5); %line \draw (mag.north east) -- (7,2); %magnifier box \draw (5,5) -- (8,5) -- (8,2) -- (5,2) -- cycle; \pic [ draw, ->, "$d\omega$", angle radius=20mm, angle eccentricity=1, pic text options={shift={(3mm,3mm)}} ] {angle = red_ray_isec--orig--darkgray_ray_isec}; \end{tikzpicture}