Muitas linhas através da origem

Muitas linhas através da origem

Alguém pode me ajudar a desenhar uma figura com muitas retas passando pela origem

insira a descrição da imagem aqui

como na figura acima, mas sem a planta e as partes tracejadas. Desejo criar o efeito de uma linha em movimento.

Responder1

Aqui está uma maneira de usar a 3dtoolsbiblioteca deaqui. Talvez um belo dia, quando o GitHub se tornar mais acessível para usuários com algum conhecimento em matemática, esta biblioteca se tornará parte do CTAN... Esta biblioteca nos permite acessar as coordenadas e calcular analiticamente a interseção com o plano.

\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{intersections,perspective,3d,3dtools}
\begin{document}
\begin{tikzpicture}[3d view={30}{15}]
 \path (0,0,0) coordinate (O) 
  foreach \X[count=\Y] in {(3,0,0),(2,1,1),(2,0,3),(1,1,3),(0,0,3)}
   {(O) -- \X coordinate (p\Y) coordinate[pos=-0.3] (p-\Y)};
 \path[canvas is xy plane at z=2,fill=blue!30] (
 (-4,-4) coordinate (r1) -- (4,-4) coordinate
 (r2) -- (4,4)  coordinate
 (r3) -- (-4,4) -- cycle;
 \path[name path=edge] (r1) -- (r2)  -- (r3); 
 \foreach \Y in {1,...,5}
 {\path[name path=ray] (p-\Y) -- (p\Y);
 \path[name intersections={of=edge and ray,total=\t},draw,thick]
 \ifnum\t=1
  (p-\Y) -- (intersection-1) coordinate (i-\Y)
 \else 
  (p-\Y) -- (p\Y)
 \fi;
 \pgfmathsetmacro{\itest}{TD("(p\Y)o(0,0,1)")}
 \ifdim\itest pt>0pt
  \pgfmathsetmacro{\tt}{2/TD("(p\Y)o(0,0,1)")}
  \ifdim\tt pt<1pt
   \pgfmathsetmacro{\myint}{TD("\tt*(p\Y)")}
   \draw[thick,dashed] (\myint) -- (i-\Y);
   \draw[thick] (\myint) node[circle,inner sep=1pt,fill]{} -- (p\Y);
  \fi
 \fi
 }
\end{tikzpicture}
\end{document}

insira a descrição da imagem aqui

informação relacionada