Ciao,
LiverpoolEdit: forse ti piacerà di più [tt]y={(0.707cm,0.707cm)}[/tt] perché in quel caso le lunghezze dei versori proiettati sono le stesse, ma l’arco rimane ellittico.
In realtà, lo preferirei così:
`\documentclass{article}
\usepackage[sc]{mathpazo}
\linespread{1.05}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}
\usepackage{caption}
\usepackage[svgnames]{xcolor}
\usepackage{tikz}
\usetikzlibrary{3d,calc,fadings}
\def\azimut{60} % definizione dell'angolo di azimut nel sistema di pgfplots
\def\el{30} % definizione dell'angolo di elevazione
\pgfmathsetmacro{\az}{270+\azimut} % calcolo dell'azimut nel sistema ISO
\pgfmathsetmacro{\xaz}{cos(\az)}
\pgfmathsetmacro{\yaz}{sin(\az)}
\pgfmathsetmacro{\xel}{cos(\el)}
\pgfmathsetmacro{\yel}{sin(\el)}
\makeatletter
\pgfset{/tikz/cs/radius/.store in=\tikz@cs@radius} % aggiunge una riga saltata nel codice della libreria 3D
\tikzoption{canvas is meridian plane at viewpoint}[]{% definisce il piano verticale passante per l'origine
\def\tikz@plane@origin{\pgfpointxyz{0}{0}{0}}% e il punto di vista
\def\tikz@plane@x{\pgfpointxyz{\xaz}{\yaz}{0}}%
\def\tikz@plane@y{\pgfpointxyz{0}{0}{1}}%
\tikz@canvas@is@plane
}
\makeatother
\tikzfading [name=dissolvenza, top color=transparent!0, bottom color=transparent!100]
\begin{document}
\begin{figure}
\centering
% I numeri assegnati ad x ed y sono le componenti delle proiezioni dei versori dei tre assi sul quadro.
% Per correggere la prospettiva, è stata utilizzata un'assonometria cavaliera frontale dimetrica
% con rapporto di riduzione circa pari a 2 (stimato ad occhio).
\begin{tikzpicture} [x={(1cm,0cm)}, y={(0.35cm,0.35cm)}, z={(0cm,1cm)}, scale=5]
% costruzione sull'equatore (azimut)
\begin{scope} [canvas is xy plane at z=0]
\fill [Coral, path fading=dissolvenza, fading angle=\azimut/2]
(0,0) — (0,-1) arc (270:\az:1); % angolo di azimut
\draw [-stealth, DarkRed] (0,-0.3) arc (270:\az:0.3); % arco orientato di azimut
\end{scope}
% costruzione sul meridiano (elevazione)
\begin{scope} [canvas is meridian plane at viewpoint]
\fill [SkyBlue, path fading=dissolvenza, fading angle=90+\el/2]
(0,0) — (1,0) arc (0:\el:1); % angolo di elevazione
\draw [gray, thick] (0,0) — (\xel,\yel); % asse visivo
\draw [gray, thick, dash pattern=on 5pt off 5pt, dash phase=5pt]
(\xel,\yel) — (1.2*\xel,1.2*\yel); % prolungamento dell'asse visivo
\draw [gray, dashed, thick] (0,0) — (1,0); % proiezione dell'asse visivo
\draw [-stealth, MidnightBlue] (0.3,0) arc (0:\el:0.3); % arco orientato di elevazione
% costruzione dell'occhio in prospettiva
\begin{scope} [shift={(1.32*\xel,1.32*\yel)}, rotate=\el]
\draw [clip] (-0.097,0.026) — (0,0) — (-0.097,-0.026);
\filldraw [SkyBlue, draw=black] (-0.075,0) circle (0.015 and 0.025);
\draw (-0.08,0.012) arc (105:-105:0.005 and 0.012);
\draw (-0.097,0.026) — (0,0) — (-0.097,-0.026);
\end{scope}
\end{scope}
% assi cartesiani
\draw [-latex] (0,0,0) — (1,0,0) node
{$x$}; % asse x
\draw [-latex] (0,-1,0) — (0,0.7,0) node [above right] {$y$}; % asse y
\draw [-latex] (0,0,0) — (0,0,.7) node [above] {$z$}; % asse z
% etichette degli angoli
\draw [DarkRed] (xyz spherical cs: longitude=180-\azimut/2, latitude=0, radius=0.45)
node {$\alpha$}; % etichetta dell'azimut
\draw [MidnightBlue] (xyz spherical cs: longitude=180-\azimut, latitude=\el/2, radius=0.37)
node {$\varepsilon$}; % etichetta dell'elevazione
\end{tikzpicture}
\caption{Definizione dell'azimut $\alpha$ e dell'elevazione $\varepsilon$ secondo la convenzione adottata da pgfplots. Nel caso specifico è $\alpha=\azimut^\circ$ e $\varepsilon=\el^\circ$.}
\end{figure}
\end{document}`
Ciao,
Marco.