picture

Cos'è il LaTeX e come usarlo al meglio.
Rispondi
killing_buddha
Messaggi: 209
Iscritto il: 20 mag 2007, 12:39

picture

Messaggio da killing_buddha »

picture non mi funziona più...
Ecco il codice

Codice: Seleziona tutto

\begin{picture}
\line(1,0){2cm}
\end{picture}
ho provato con \put, \line, \circle, \vector... non funziona niente!


e il messaggio di errore

Codice: Seleziona tutto

! Use of \pictur@ doesn't match its definition.
<argument> \put 
                
l.59 \put
         (1,0){2cm}
?
dove sbaglio? Mi ha sempre dato probelmi, ma da oggi ha proprio cominciato a rifuutarsi di compilare....
Avatar utente
batmath
Messaggi: 120
Iscritto il: 01 gen 1970, 01:00
Località: San Giorgio della Richinvelda, PN
Contatta:

Messaggio da batmath »

L'ambiente picture ha un argomento obbligatorio: dopo \begin{picture} occorre inserire le dimensioni

Codice: Seleziona tutto

\begin{picture}(width,height)
C'è poi anche un argomento opzionale per spostare eventualemnte l'origine: esso segue l'argomento obbligatorio ed è nella stessa forma

Codice: Seleziona tutto

\begin{picture}(width,height)(x-offset,y-offset)
L'ambiente picture funziona invece molto bene, per piccole e semplici figure. In particolare il nuovo package pict2e e alcuni collegati hanno notevolmente aumentato le possibilità.
Luciano Battaia
Luciano Battaia
http://www.batmath.it
killing_buddha
Messaggi: 209
Iscritto il: 20 mag 2007, 12:39

Messaggio da killing_buddha »

Si trova un piccolo tutorial per imparare come si usa picutre? Sulla CTAN non so cosa cercare: scrivendo "Picture" ci sono risultati che non c'entrano...


Faccio come mi hai detto ma:

Codice: Seleziona tutto

! Missing number, treated as zero.
<to> 
                   \hbox 
l.4 \line(0,1){2cm}
                   
?
 ! Illegal unit of measure (pt inserted).
<to> 
                   \hbox 
l.4 \line(0,1){2cm}
                   
?
 [1] (disegni.aux) )
Escludo ci siano altri problemi: il file tex è minimale:

Codice: Seleziona tutto

\documentclass{article}
\begin{document}
\begin{picture}(100,100)
\line(0,1){2cm}
\end{picture}
\end{document}
Avatar utente
batmath
Messaggi: 120
Iscritto il: 01 gen 1970, 01:00
Località: San Giorgio della Richinvelda, PN
Contatta:

Messaggio da batmath »

Siccome il tuo post cominciava dicendo: picture non funziona più, pensavo tu fossi esperto di questo ambiente, per questo non sono entrato nei dettagli.
Dunque:
1- In internet (e anche in letteratura) si trova pochissimo su questo ambiente, che, così com'è, può essere considerato sostanzialmente obsoleto. Va sostituito con l'implementazione pict2e, di cui purtroppo la documentazione, seppure esaustiva, non è a mio avviso troppo chiara. Qualcosa si trova qui: http://www.math.ttu.edu/~daya/m5365/lat ... re_env.pdf, ma non è escluso che ci sia altro (io non uso praticamente mai picture, da quando ho imparato pstricks).
2- Rimane un errore nel tuo codice, in quanto tu usi i cm come unità di misura, ma non lo hai dichiarato. Sostituisci il tuo codice con

Codice: Seleziona tutto

\documentclass{article}
\begin{document}
\begin{picture}(100,100)
\line(0,1){20}
\end{picture}
\end{document}
e tutto funzionerà.

Se vuoi continuare ad usare i cm (o altre unità ammesse), dichiaralo esplicitamente:

Codice: Seleziona tutto

\setlength{\unitlength}{1cm}
ma poi scrivi sempre

Codice: Seleziona tutto

\line(0,1){2}
(oppure un'altra misura che ti vada bene al posto di 2).

In realtà con questo ambiente puoi fare molto. Ti posto un esempio, per capirci, che ho ritrovato nelle mie carte, e che non so da dove l'ho preso, ma non è mio:

Codice: Seleziona tutto

\setlength{\unitlength}{1mm}
\begin{picture}(60,50)
  \put(0 ,15){\vector(1,0){53}}
  \put(54,14){$x_A$}
  \put( 8,10){\vector(0,1){37}}
  \put( 0,46){$ct_A$}
  \multiput(13,9)(15,0){3}{\line(0,1){35}}
  \put(11,5){$A''$}
  \put(26,5){$A'$}
  \put(41,5){$A'''$}
  \multiput(13,37)(30,0){2}{\circle*{2}}
  \put(28,22){\circle*{2}}
  \put(28,22){\vector(1,1){14}}
  \put(15,39){$E_1$}
  \put(28,22){\vector(-1,1){14}}
  \put(45,39){$E_2$}
  \multiput(0,37)(4,0){13}{\line(1,0){2}}
\end{picture}
Ti consiglio comunque di nuovo di passare a pict2e (e pacchetti connessi, come curve2e). Ma se hai veri problemi grafici devi passare a pstricks (secondo me assolutamente il top), oppure a pgf+tikz (che fa qualcosa ancora meglio di pstricks, ma che non riesce a fare tutto quello che pstricks fa).

Buon lavoro, e fammi sapere se funziona!
Luciano Battaia
Luciano Battaia
http://www.batmath.it
killing_buddha
Messaggi: 209
Iscritto il: 20 mag 2007, 12:39

Messaggio da killing_buddha »

ero riuscito tempo fa a fare qualcosa... facevo errori stupidi di sintassi che non ho mai corretto, convinto di saperlo un po' usare...
ora ho fatto qualche prova e sono piuttosto soddisfatto (dovevo solo disegnare una retta con dei punti che si avvicinavano di un fattore costatne, niente di difficile, volevo provare)


solo un paio di cose

caricando pict2e i comandi vector e cicrle (pieno, la circonferenza vuota va) non funzionano (io li digito ma non compaiono nel compilato)... con quel pacchetto hanno per caso un altra sintassi? per caso non vanno messi dentro il \put ma da soli?


come funziona qbezier? non capisco che parametri vadano tra le parentesi:

Codice: Seleziona tutto

\qbezier{N}(AX,AY)(BX,BY)(CX,CY)
Avatar utente
batmath
Messaggi: 120
Iscritto il: 01 gen 1970, 01:00
Località: San Giorgio della Richinvelda, PN
Contatta:

Messaggio da batmath »

Putroppo non conosco i dettagli del package pict2e e in questo periodo sono off-limits con gli impegni. Se nessun altro interverrà mi farò vivo fra qualche giorno.
Luciano Battaia
Luciano Battaia
http://www.batmath.it
Rispondi