marchetto” post=91587I diagrammi sono molti e vengono impilati a gruppi di quattro, i bordi orizzontali del rettangolo di contorno devono essere ottimizzati per ridurre lo spazio verticale tra un’immagine e l’altra quindi dovrei sceglierli appositamente di volta in volta, lavoro che diventerebbe impreciso e piuttosto lungo. La soluzione che mi hai dato andrebbe bene se non ci fosse questo problema. I bordi verticali (quello dx e quello sx) invece possono essere fissati una volta sola per tutti i grafici quindi ho optato per una soluzione forse non elegante ma almeno è rapida:
`\draw [white] (-1.5,0) circle (0pt) (13.5,0) circle (0pt);`
Cosa ne pensi? Avresti un’alternativa?
Beh, in realtà tu fai la stessa cosa. In pratica, TikZ rispetto a PSTricks non ti forza a definire per prima cosa la bounding box, se la calcola da sola. Però, in un caso come il tuo serve proprio specificarla a mano. Io l’ho fatto in modo esplicito con [tt]\useboundingbox[/tt], tu lo hai fatto dietro le quinte: hai definito due punti ai bordi del rettangolo che io ho disegnato con il comando. Quei due punti aggiornano la bounding box e quindi sei a posto.
marchetto” post=91587
Ultima cosa, sul pacchetto. Mi sembra un buon lavoro anche se io non sono un fan di macro con mille argomenti: per migliorare la leggibilità preferisco l’utilizzo di chiave-valore. Tu ovviamente sai cosa vuol dire ognuno degli argomenti di:`
\internalforces{a}{b}{0}{-1.6105}[-.3][black][0.5];
…
\beam{1}{f}{c}[1][1];
` perché in questo momento ci lavori. Ma ti assicuro che se dopo qualche mese di completa inattività torni a guardare quel sorgente non ti apparirà così chiaro; invece leggendo qualcosa tipo: `
\node[module size=0.5cm,pin length factor=0.5,
module ysep=1, module xsep=1.25,
clos rear={module label opacity=0}] {};
` è immediato capire cosa fa ognuna delle chiavi. L’esempio è tratto dal pacchetto sa-tikz v0.7a che è disponibile su TeXLive e su https://github.com/cfiandra/Sa-TikZ. Puoi guardare il codice di quel pacchetto per capire come implementare un meccanismo chiave-valore con TikZ.Ultima cosa, [tt]tikzstyle[/tt] è deprecato; non creare nuovi stile con quel comando, ma usa [tt]tikzset[/tt].
Tengo a precisare che il pacchetto non è mio: è stato creato da un tesista tedesco e io ho solo collaborato aggiungendo qualche funzione mancante e delle piccole parti. Questo ragazzo ha fatto un grande lavoro e ha creato anche la versione per le strutture 3D.
Ho appena visto il manuale del pacchetto Sa-tikz (fresco di pubblicazione su texlive 😀 !). Ho capito cosa intendi riguardo alle macro e i mille argomenti, certo il tuo pacchetto permette di disegnare con codici ordinati e più semplici da “ricordare”. C’è di buono che di questo pacchetto è stato scritto un manuale (in tedesco) che descrive abbastanza bene molti comandi.
Grazie per tutti i consigli
Saluti
MarcoP.S.: il link che hai aggiunto mi restituisce “page not found”.
P.P.S.: Ho visto il sito del pacchetto Sa-tikz. Mi è piaciuta molto la grafica del titolo.
P.P.P.S.: Nel manuale del pacchetto, nella nota n.1 in basso a pagina 2 “1In order to compile the documentation, and only for this scope, TikZ 3.0.0 is mandatory.”: si sa quando verrà pubblicato tikz 3.0.0?
Il link è sbagliato perché c’è un punto finale, poi lo correggo.
La grafica del sito è una di quelle di default: il bello di GitHub pages è proprio che si può fare un sito in 5 minuti.
In teoria dovrebbe già aver raggiunto CTAN, ma bisognerà vedere perché è un pacchetto molto grande e complesso. Per compilare la documentazione di Sa-TikZ serve TikZ 3.0.0 per le nuove macro del manuale: visto che sono state aggiornate, volevo mantenere compatibilità nello stile della mia documentazione. La nuova versione di Sa-TikZ è compatibile con TikZ 3.0.0 nel senso che finalmente la libreria matematica ha un controllo [tt]\pgfmathisodd[/tt] che avevo dovuto definirmi per conto mio in precedenza; siccome lo avevo chiamato nello stesso modo c’era un problema di compatibilità.
Ciao
Claudio