logos” post=84616Caro Claudio,
Grazie mille per i commenti al codice. Ho imparato molte cose dai tuoi aggiustamenti, anche se ancora mi sfugge qualcosa. Se non devo chiamare il pacchetto xcolor perché già caricato da TikZ, tu hai messo le opzioni all’inizio della classe: è un procedimento generale? Se un pacchetto viene caricato da un altro, le opzioni di quello caricato in automatico si mettono nelle opzioni della classe? O vale solo per xcolor?
Onestamente è un procedimento che ho visto solo con [tt]xcolor[/tt] e TikZ/pgfplots perciò ad intuizione direi che vale quando un pacchetto [tt]x[/tt] viene caricato da un altro senza opzioni particolari e nel documento si carica [tt]x[/tt] con opzioni diverse.
logos” post=84616
Per quanto riguarda lo shading che volevo fare, a me andrebbe bene anche con un trapezio anziché con una curva di Bezier: in quel caso si potrà fare facilmente, magari centrando lo spettro visibile ingrandito in modo che il trapezio sia equilatero? Anche in quel caso bisogna usare una funzione generale oppure è più semplice?
Purtroppo no, nel senso che PGF definisce solo 3 tipi di shading: orizzontale, verticale e radiale. Capisco che con il trapezio sembri più facile, ma non è così. La mia osservazione è sempre valida: l’ombreggiatura tiene come riferimento la parte più ampia della forma. Prova a compilare questo esempio e capirai cosa intendo:`
\documentclass[dvipsnames*,svgnames,border=10pt,tikz]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}
% Spectrum-def
\pgfdeclarehorizontalshading{rainbow}{100bp}{
color(0bp)=(violet); color(25bp)=(violet);
color(35bp)=(blue); color(40bp)=(cyan);
color(50bp)=(green); color(53bp)=(yellow);
color(63bp)=(red); color(100bp)=(DarkRed!40!black)}
\begin{document}
\begin{tikzpicture}
\node[minimum width=8.65cm,minimum height=4cm,rectangle, shading=rainbow,draw,ultra thick](x){};
\node[minimum size=4cm,trapezium, shading=rainbow,draw,ultra thick]at (x.center){};
\end{tikzpicture}
\end{document}
` Il trapezio viene disegnato sopra un rettangolo e i due hanno la stessa base.
Ciao
Claudio