Tanto di cappello al sombrero di @Liverpool! 🙂
Ecco le figure dei secchi; Vorrei sottolineare che anche se sembra che io abbia disegnato 4 figure, come in effetti appaiono sulla pagina, in realtà ho solo disegnato il primo, dopo averlo schizzato su carta millimetrata per leggere le coordinate; cosa che è sempre meglio fare, anche se si usano altri software che sono capaci di proporzionare gli oggetti in modo automatico; con picture è una cosa, direi, necessaria, poi cambiare scala è un giochetto che si fa cambiando localmente il valore di \unitlength; dopo aver fatto il primo disegno, in dieci minuti comprese le macro LaTeX per disegnare gli oggetti, gli altri mi sono costati il tempo di un copia e incolla e la modifica di qualche coordinata.
Naturalmente sto parlando di LaTeX2e, quindi dell’uso del pacchetto pict2e per adattare le capacità di LaTeX a quelle dei nuovi motori di composizione, con i comandi descritti da Lamport, e con qualche comando in più, offerto gratis da chi ha realizzato pict2e; e LaTeX2e permette di definire nuovi comandi, quindi l’ho usato allo scopo per non perdere tempo a ricopiare ogni volta i comandi dei disegni dei secchi, dell’acqua e della sabbia.
Come si può vedere i comandi sono più o meno lo stesso numero di quelli che sarebbe necessario usare con tikz (un po’ di più, ma poco); e il disegno è fortemente strutturato come mostrano i commenti.
`
\documentclass{article}
\usepackage{xcolor}
\usepackage{pict2e}
\newcommand{\secchio}{% riferimento: il centro del manico
\put(0,0){%
\put(0,-0.75){\arc[0,180]{0.75}}
\polygon(-0.75,-0.75)(-0.5,-2.75)(0.5,-2.75)(0.75,-0.75)
}
}
\newcommand{\sabbia}{% riferimento: il centro del manico
\put(0,0){%
{\color{darkgray!60!white}\polygon*(-0.625,-1.75)(-0.5,-2.75)(0.5,-2.75)(0.625,-1.75)}}
}
\newcommand{\acquapiena}{% riferimento: il centro del manico
\put(0,0){%
{\color{lightgray}\polygon*(-0.6875,-1.25)(-0.5,-2.75)(0.5,-2.75)(0.6875,-1.25)}}
}
\newcommand{\mezzaacqua}{% riferimento: il centro del manico
\put(0,0){%
{\color{lightgray}\polygon*(-0.625,-1.75)(-0.5,-2.75)(0.5,-2.75)(0.625,-1.75)}}
}
\begin{document}
Ad un braccio di una robusta bilancia \dots\ di sabbia appeso all'altro braccio.
\begin{figure}[!ht]\centering
\unitlength=5mm
\begin{picture}(6.5,6.75)(-3.25,-6.75)\thicklines
% Perno
\put(0,0){\polygon*(0,0)(-0.3,-0.5)(0.3,-0.5)}
% bilancere
\polyline(-2.5,-0.5)(-2.5,0)(2.5,0)(2.5,-0.5)
% secchio con sabbia
\put(-2.5,-0.5){\sabbia}
\put(-2.5,-0.5){\secchio}
% secchio con acqua
\put(2.5,-0.5){\acquapiena}
\put(2.5,-0.5){\secchio}
% secchio vuoto
\put(2.5,-4){\secchio}
% tiranti
\thinlines
\Line(1.75,-1.25)(1.75,-4.75)
\Line(3.25,-1.25)(3.25,-4.75)
\end{picture}
\end{figure}
Galilei si aspettava che\dots
Con sorpresa di tutti i presenti \dots\ e, naturalmente, anche dopo (vedi fig.~6.4).
\begin{figure}
\unitlength=5mm
\begin{picture}(6.5,6.75)(-3.25,-6.75)\thicklines
% Perno
\put(0,0){\polygon*(0,0)(-0.3,-0.5)(0.3,-0.5)}
% bilancere
\polyline(-2.5,-0.75)(-2.5,-0.25)(2.5,0.25)(2.5,-0.25)
% secchio con sabbia
\put(-2.5,-0.75){\sabbia}
\put(-2.5,-0.75){\secchio}
% secchio con acqua
\put(2.5,-0.25){\acquapiena}
\put(2.5,-0.25){\secchio}
% secchio vuoto
\put(2.5,-3.75){\secchio}
% tiranti
\thinlines
\Line(1.75,-1)(1.75,-4.5)
\Line(3.25,-1)(3.25,-4.5)
{\color{lightgray}% gruppo di colore grigio chiaro
% Posizione inziale del bilancere
\Line(-2.5,0)(2.5,0)
% Acqua che scende
\put(2.5,-3){\polygon*(-0.15,0)(-0.15,-2)(0.15,-2)(0.15,0)}% riferimento: centro del fondo del secchio
}
\end{picture}
\hfill
\begin{picture}(6.5,6.75)(-3.25,-6.75)\thicklines
% Perno
\put(0,0){\polygon*(0,0)(-0.3,-0.5)(0.3,-0.5)}
% bilancere
\polyline(-2.5,-0.5)(-2.5,0)(2.5,0)(2.5,-0.5)
% secchio con sabbia
\put(-2.5,-0.5){\sabbia}
\put(-2.5,-0.5){\secchio}
% secchio con meta' acqua
\put(2.5,-0.5){\mezzaacqua}
\put(2.5,-0.5){\secchio}
% secchio con metà acqua
\put(2.5,-4){\mezzaacqua}
\put(2.5,-4){\secchio}
% tiranti
\thinlines
\Line(1.75,-1.25)(1.75,-4.75)
\Line(3.25,-1.25)(3.25,-4.75)
% Acqua che scende
\put(2.5,-3.25){\color{lightgray}\polygon*(-0.15,0)(-0.15,-2.5)(0.15,-2.5)(0.15,0)}% riferimento: centro del fondo del secchio
\end{picture}
\hfill
\begin{picture}(6.5,6.75)(-3.25,-6.75)\thicklines
% Perno
\put(0,0){\polygon*(0,0)(-0.3,-0.5)(0.3,-0.5)}
% bilancere
\polyline(-2.5,-0.5)(-2.5,0)(2.5,0)(2.5,-0.5)
% secchio con sabbia
\put(-2.5,-0.5){\sabbia}
\put(-2.5,-0.5){\secchio}
% secchio vuoto
\put(2.5,-0.5){\secchio}
% secchio pieno d'acqua
\put(2.5,-4){\acquapiena}
\put(2.5,-4){\secchio}
% tiranti
\thinlines
\Line(1.75,-1.25)(1.75,-4.75)
\Line(3.25,-1.25)(3.25,-4.75)
\end{picture}
\caption{L'inatteso comportamento osservato disorienta Galilei, che non riesce a trovare una spiegazione soddisfacente.}
\end{figure}
\end{document}
`
Io non so se con OmniGrafle ci si mette meno tempo, ma le operazioni per creare il disegno non possono venire commentate, perché il disegno esce come risultato finale, non come una costruzione progressiva. quindi in caso di modifiche, non ostante l’interattività con quanto si può vedere sullo schermo, bisogna sostanzialmente ricominciare da capo.
Certo picture esteso con pict2e non costa un euro, mentre Omnigraffle e simili programmi da disegno non integrati con LaTeX, di solito costano, specialmente se sono per il Mac.
È chiaro che il mio esercizio raccoglie solo la sfida, ma non è valido per confrontarlo con il tempo che ci metterebbe un principiante, che per altro deve leggere solo una ventina di pagine di documentazione.
Vorrei aggiungere ancora un dettaglio un po’ off topic, ma non tanto: a suo tempo usavo e facevo usare i miei studenti il programma PSpice per l’analisi dei circuiti, con la relativa produzione dei grafici, delle risposte in frequenza, eccetera.
Il programma gratuito per gli studenti conteneva anche una interfaccia grafica per disegnare il circuito di cui si voleva eseguire l’analisi; Io non ho mai usato questa interfaccia proprio per il fatto che dopo aver disegnato il circuito lavorando solo colo mouse,se si voleva fare qualsiasi modifica/correzione era necessario o agire con l’interfaccia grafica ricominciando da zero, oppure agire sul file descrittivo in termini di codice di programma, sul quale era necessario conoscere la sintassi di ogni comando per poter eseguire non solo l’introduzione o la sostituzione dei componenti, ma per assegnare i parametri di funzionamento. Il linguaggio era completamente diverso dai vari markup dei programmi del sistema TeX o dei sui plugin da disegno, siano essi picture o tiks o pstricks o pgfplots o quel che è, ma l’idea è la stessa; il programma si corregge molto più facilmente del suo risultato finito.
Ai tempi di LaTeX 209, quando non esisteva nemmeno pstricks o pdflatex, mi ero creato un plugin per disegnare i circuiti elettronici per i miei libri; tra codice e commento non ero lontano da circa 10 000 righe di codice … ma disegnavo dei bellissimi circuiti, e i miei collaboratori volevano usarlo anche loro; non avevo l’abitudine di scrivere il manuale per l’utente (in fondo l’utente per il quale l’avevo disegnato ero io stesso) ma con pazienza gliel’ho insegnato; loro sono stati i prima a concordare che il tempo necessario per disegnare qualunque circuito era confrontabile con quello necessario usando interfacce grafiche, ma che il tempo di correzione era infinitamente minore.
Questo è un argomento che mi scordo sempre di citare, ma è il punto di forza del disegno programmato.
[attachment=226]Secchi.pdf[/attachment]