La función tdplotsetrotatedcoords funciona en ejes pero no en arcos dibujados (círculo)

La función tdplotsetrotatedcoords funciona en ejes pero no en arcos dibujados (círculo)

De acuerdo adocumentación de tikz-3dplot, tdplotsetrotatedcoordsdebe rotar entidades siguiendo el conjunto de rotaciones de ángulos de Euler:

Descripción:

Genera el estilo tdplot_rotated_coordsque proporciona la transformación de coordenadas para el marco de coordenadas girado dentro del marco de coordenadas principal actual, según los ángulos de Euler especificados por el usuario (α,β,γ). Las rotaciones utilizan la convención z(α)y(β)z(γ) de las rotaciones de Euler, donde el sistema gira γ alrededor del eje z, luego β alrededor del eje y (mundial) y luego α alrededor del ( mundo) eje z.

Sintaxis:

\tdplotsetrotatedcoords{α}{β}{γ}

MWE:

\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb}
\usepackage[english]{babel}
\usepackage{float}
\usepackage{tikz}
\usepackage{tikz-3dplot}
%%%%%%%%
\begin{document}

\tdplotsetmaincoords{70}{110}
\begin{tikzpicture}[tdplot_main_coords]

\draw[thick,->] (0,0,0) -- (1,0,0) node[anchor=north east]{$x$};
\draw[thick,->] (0,0,0) -- (0,1,0) node[anchor=north west]{$y$};
\draw[thick,->] (0,0,0) -- (0,0,1) node[anchor=south]{$z$};

\tdplotdrawarc[green]{(O)}{.8\radius}{0}{360}{}{}

\tdplotsetrotatedcoords{10}{30}{70}
\tdplotdrawarc[red]{(O)}{\radius}{0}{360}{}{}

\draw[thick,color=blue,tdplot_rotated_coords,->] (0,0,0) --(.7,0,0) node[anchor=north]{$x’$};
\draw[thick,color=blue,tdplot_rotated_coords,->] (0,0,0) --(0,.7,0) node[anchor=west]{$y’$};
\draw[thick,color=blue,tdplot_rotated_coords,->] (0,0,0) --(0,0,.7) node[anchor=south]{$z’$};
\end{tikzpicture}

\end{document}

se representa como:

Dibujo resultante

Sin embargo, el círculo rojo siempre está en el mismo plano xy que el círculo verde original sin rotar.

Esperaba que se girara hacia el plano x'y'.

¿Cómo lograrlo correctamente?
La \tdplotsetrotatedcoordsfunción parece no funcionar.

Respuesta1

Parece que tengo que encerrar el dibujo del círculo en un 'alcance', pero para los ejes no es el caso:

MWE:

\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb}
\usepackage[english]{babel}
\usepackage{float}
\usepackage{tikz}
\usepackage{tikz-3dplot}
%%%%%%%%
\begin{document}
\begin{tikzpicture}[tdplot_main_coords]
\tdplotsetmaincoords{70}{110}
\draw[thick,->] (0,0,0) -- (1,0,0) node[anchor=north east]{$x$};
\draw[thick,->] (0,0,0) -- (0,1,0) node[anchor=north west]{$y$};
\draw[thick,->] (0,0,0) -- (0,0,1) node[anchor=south]{$z$};

\tdplotdrawarc[green]{(O)}{.8\radius}{0}{360}{}{}
\tdplotsetrotatedcoords{10}{30}{70}
% Scope enclosing here:
\begin{scope}[tdplot_rotated_coords]
  \tdplotdrawarc[red]{(O)}{\radius}{0}{360}{}{}
\end{scope}

\draw[thick,color=blue,tdplot_rotated_coords,->] (0,0,0) --(.7,0,0) node[anchor=north]{$x’$};
\draw[thick,color=blue,tdplot_rotated_coords,->] (0,0,0) --(0,.7,0) node[anchor=west]{$y’$};
\draw[thick,color=blue,tdplot_rotated_coords,->] (0,0,0) --(0,0,.7) node[anchor=south]{$z’$};
\end{tikzpicture}
\end{document}

Resultado:

resultado

información relacionada