Acabei de juntar isso usando exemplos de código da Internet, mas tenho um problema: quero que as marcações no final da barra 'a' fiquem paralelas ao solo, e não em um ângulo perpendicular à linha. Existe alguma possibilidade de conseguir isso?
\begin{tikzpicture}[cm={-1,-1,1,0,(0,0)},x=3.85mm,z=-1cm, scale=0.5]
\draw (2,-3,-1) coordinate (x) |- (-2,3,-1) coordinate [midway] (h) coordinate (y) -- (-2,3,1) coordinate (a) -- (-2,-3,1) coordinate (z) -- (2,-3,1) edge (x) -- (2,3,1) coordinate (v) edge (h)
-- (a) ;
\draw [dashed] (-2,-3,-1) coordinate (o) edge (x) edge (y) -- (z);
\draw [->] (0,0,0) -- (2,0,0) node [midway,above] {$x$};
\draw [->] (0,0,0) -- (0,2,0) node [midway,right] {$y$};
\draw [->] (0,0,0) -- (0,0,2) node [midway,above] {$z$};
\draw [|-|] (2, 3.5, -1) -- (-2, 3.5, -1) node[midway, below right] {a};
\end{tikzpicture}
Responder1
Provavelmente você mesmo terá que desenhar as linhas horizontais, substituindo
\draw [|-|] (2, 3.5, -1) -- (-2, 3.5, -1) node[midway, below right] {a};
por
\draw ( 2, 3.4,-1) -- ( 2, 3.6,-1);
\draw (-2, 3.4,-1) -- (-2, 3.6,-1);
\draw ( 2, 3.5,-1) -- node[right]{a} (-2, 3.5,-1) ;
Observe que você pode evitar todos os midway
s colocando o node
operador após a linha em vez de após a coordenada final.
Responder2
Não sei como gerenciar isso com apenas um comando, mas você pode desenhar as marcas como linhas separadas:
\begin{tikzpicture}[cm={-1,-1,1,0,(0,0)},x=3.85mm,z=-1cm, scale=0.5]
\draw (2,-3,-1) coordinate (x) |- (-2,3,-1) coordinate [midway] (h) coordinate (y) -- (-2,3,1) coordinate (a) -- (-2,-3,1) coordinate (z) -- (2,-3,1) edge (x) -- (2,3,1) coordinate (v) edge (h)
-- (a) ;
\draw [dashed] (-2,-3,-1) coordinate (o) edge (x) edge (y) -- (z);
\draw [->] (0,0,0) -- (2,0,0) node [midway,above] {$x$};
\draw [->] (0,0,0) -- (0,2,0) node [midway,right] {$y$};
\draw [->] (0,0,0) -- (0,0,2) node [midway,above] {$z$};
\draw [-] (2, 3.5, -1) -- (-2, 3.5, -1) node[midway, below right] {a};
\draw [-] (2, 3.75, -1) -- (2, 3.3, -1);
\draw [-] (-2, 3.7, -1) -- (-2, 3.25, -1);
\end{tikzpicture}
Neste formulário, não é muito útil se você quiser alterar as coordenadas porque terá que alterá-las para três em vez de uma linha. Se isso for um problema, você pode trabalhar com dois nós e coordenadas relativas, então você só precisa alterar as duas variáveis.
\begin{tikzpicture}[cm={-1,-1,1,0,(0,0)},x=3.85mm,z=-1cm, scale=0.5]
\draw (2,-3,-1) coordinate (x) |- (-2,3,-1) coordinate [midway] (h) coordinate (y) -- (-2,3,1) coordinate (a) -- (-2,-3,1) coordinate (z) -- (2,-3,1) edge (x) -- (2,3,1) coordinate (v) edge (h)
-- (a) ;
\draw [dashed] (-2,-3,-1) coordinate (o) edge (x) edge (y) -- (z);
\draw [->] (0,0,0) -- (2,0,0) node [midway,above] {$x$};
\draw [->] (0,0,0) -- (0,2,0) node [midway,right] {$y$};
\draw [->] (0,0,0) -- (0,0,2) node [midway,above] {$z$};
\node (a1) at (-2, 3.5, -1){};
\node (a2) at (2, 3.5, -1){};
\draw [-] (a1.center) -- (a2.center) node[midway, below right] {a};
\draw [-] (a1.center) -- +(0,-0.25,0) -- +(0,0.2,0);
\draw [-] (a2.center) -- +(0,-0.2,0) -- +(0,0.25,0);
\end{tikzpicture}
Essas duas amostras devem ficar assim: