Autore Topic: Ultima versione di linegraf  (Letto 2980 volte)

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Ultima versione di linegraf
« Risposta #15 il: 24 Giugno 2011, 22:25:04 »
Molto volentieri, io stò usando molto questa classe, se non hai risolto appena trovo la modifica per modificare i font sulla torta (ho dimenticato di commentarla) ti faccio sapere.

Per quanto riguarda la linea da "eliminare" puoi per favore postarmi la porzione di codice dove hai modificato in quanto ho compattato il codice di fsurfing (disordinato  ;D) e non ho più la rispondenza delle righe.

Azz... >:(   ora che ci penso neanche il numero di righe che ti ho postato precedentemente io avranno corrispondenza, però con le porzioni di codice dovresti arrivarci.
se hai problemi fammi sapere, ciao
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.256
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: Ultima versione di linegraf
« Risposta #16 il: 24 Giugno 2011, 22:29:27 »
domani te lo giro, sono sul mini-netbook!

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.256
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: Ultima versione di linegraf
« Risposta #17 il: 25 Giugno 2011, 02:39:09 »
Codice: [Seleziona]
testo = Format(obj1[i].$valore, "#0.00") & " %" 'Arrotondamento percentuale a due decimali *** nuova modifica
riga su codice originale 801

Codice: [Seleziona]
 Draw.Ellipse(cx, cy, dx, dy, Rad(180), fine) 
codice da commentare per eliminare la riga orizzontale situata a metà pie
riga su codice originale 828

Codice: [Seleziona]
 If x2 >= cx + dx / 2 Then
'Draw.Line(x2, h - y2, x2 + lt + 5, h - y2) 'originale
 Draw.Line(x2, h - y2, x2 + lt + 10, h - y2) ' Codice modificato  
'Draw.Text(testo, x2 + 5, h - y2 - Draw.TextHeight(testo) - 3) 'Distanza dati da testata linee - originale
Draw.Text(testo, x2 + 15, h - y2 - Draw.TextHeight(testo) + 6) ' Distanza dati da testata linee - Codice modificato  
Else
'Draw.Line(x2, h - y2, x2 - lt - 5, h - y2) ' codice originale
Draw.Line(x2, h - y2, x2 - lt - 10, h - y2) ' Codice modificato  
'Draw.Text(testo, x2 - 5 - lt, h - y2 - Draw.TextHeight(testo) - 3) 'originale
Draw.Text(testo, x2 - 60 - lt, h - y2 - Draw.TextHeight(testo) + 6) ' Distanza dati da testata linee - Codice modificato  
Endif

Osservazione 1: questa modifica produce un miglioramento, pero' se noti, la riga va in certi casi a sovrapporsi alla percentuale, secondo me la lunghezzza della riga (parte adiacente alla percentuale) dovrebbe essere tale da non farlo, quindi inferiore.

Osservazione 2: la parte della riga che parte dalla zona dello spicchio dovrebbe essere meno lunga, in certi casi la % esce dalla zona visibile, nel caso di spicchio localizzato sulla zona sx del pie (allego altra immagine).

Osservazione 3: la grandezza della scritta % deve essere diminuita, è così grande che visivamente da' fastidio.




« Ultima modifica: 25 Giugno 2011, 03:15:55 da andy60 »

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Ultima versione di linegraf
« Risposta #18 il: 25 Giugno 2011, 20:04:08 »
Grazie andy,
"famigerata" riga eliminata :yeah: ...finalmente
Ho visto i tuoi screenshot, si può ottenere quello che tu vuoi, ti posto uno screenshot (...senza riga ovviamente... ;D) del risultato a cui io sono arrivato.
Se ti gusta anche se è ancora da migliorare ti posto il mio codice che dovrai addatare al tuo.

« Ultima modifica: 25 Giugno 2011, 20:06:56 da tornu »
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.256
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: Ultima versione di linegraf
« Risposta #19 il: 25 Giugno 2011, 23:39:55 »
@tornu

aspetto il codice con ansia se hai problemi a darmi solo le variazioni, posta la classe. A proposito esiste un software x verificare le differenze tra due file di codice?

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Ultima versione di linegraf
« Risposta #20 il: 26 Giugno 2011, 20:49:38 »
@andy60
Ti posto il codice della Procedure MakePie dove ho apportato le modifiche in un file testo, se in questa procedura non hai fatto altre modifiche puoi fare un copia e incolla.
Per verificare le differenze tra file di codice (per esempio Gambas) se molto esteso io faccio così, copio su gedit i codici e li confronto
con una utility molto semplice da usare, si chiama Meld (io uso Ubuntu) che mi identifica le differenze e dallo stesso tools posso aggiornare il file che copierò dentro il progetto Gambas, se ci sono altri metodi non so.
Spero di esserti stato utile.
Ciao
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: Ultima versione di linegraf
« Risposta #21 il: 26 Giugno 2011, 21:06:56 »
dalle immagini di andy direi che avete incasinato abbastanza il codice, la scritta dovrebbe essere posta sopra la linea orrizzontale e la linea obliqua essere + corta , inoltre come avevo scritto a tornu il calcolo della lunghezza della linea obliqua dovrebbe essere effettuato in base al quadrante in cui ci  si trova, infatti essendo la torta strasportata in 3d , tramite una copia multipla sull' asse verticale le linee dei due quadranti superiori dovranno esser e+ corte , mentre le linee dei due quadranti inferiori  + lunghe, ora purtroppo non ho molto tempo per scrivere questo codice , percui vi conviene trovare un rapporto che sia piacevole , (direi trA 1,5 E 1,7)  e al limite ricorrere a un rimpicciolimento della torta .

prossimamente migliorerò il codice

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Ultima versione di linegraf
« Risposta #22 il: 26 Giugno 2011, 21:30:33 »
Ciao fsurfing,
si è vero, andy ha incontrato le mie stesse difficoltà che con te abbiamo discusso in un altro post, se guardi lo screenshot che ho postato io
vedi il risultato che sono riuscito ad ottenere con le tue indicazioni, è migliorabile però non è male.
Se sforni nuove modifiche fatti sentire, secondo mè e una classe con molte potenzialità, avrei alcune idee da suggerirti, quando avrai intenzione di
rimetterci mano batti un colpo.
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.256
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: Ultima versione di linegraf
« Risposta #23 il: 27 Giugno 2011, 06:29:40 »
dalle immagini di andy direi che avete incasinato abbastanza il codice, la scritta dovrebbe essere posta sopra la linea orrizzontale e la linea obliqua essere + corta , inoltre come avevo scritto a tornu il calcolo della lunghezza della linea obliqua dovrebbe essere effettuato in base al quadrante in cui ci  si trova, infatti essendo la torta strasportata in 3d , tramite una copia multipla sull' asse verticale le linee dei due quadranti superiori dovranno esser e+ corte , mentre le linee dei due quadranti inferiori  + lunghe, ora purtroppo non ho molto tempo per scrivere questo codice , percui vi conviene trovare un rapporto che sia piacevole , (direi trA 1,5 E 1,7)  e al limite ricorrere a un rimpicciolimento della torta .

prossimamente migliorerò il codice

Ciao, io in pratica ho solo commentato una linea. Il resto è tale e quale ai tuoi files ultimi originali. Complimenti per la classe e per tutto quello che farai anche per il futuro, è una classe preziosa.

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.256
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: Ultima versione di linegraf
« Risposta #24 il: 27 Giugno 2011, 06:31:38 »
@andy60
Ti posto il codice della Procedure MakePie dove ho apportato le modifiche in un file testo, se in questa procedura non hai fatto altre modifiche puoi fare un copia e incolla.
Per verificare le differenze tra file di codice (per esempio Gambas) se molto esteso io faccio così, copio su gedit i codici e li confronto
con una utility molto semplice da usare, si chiama Meld (io uso Ubuntu) che mi identifica le differenze e dallo stesso tools posso aggiornare il file che copierò dentro il progetto Gambas, se ci sono altri metodi non so.
Spero di esserti stato utile.
Ciao

grazie, anke io uso ubuntu, approfondisco. Oltre la modifica che ti ho suggerito non ne ho fatte altre, provvedo..

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.256
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: Ultima versione di linegraf
« Risposta #25 il: 28 Giugno 2011, 07:47:46 »
dalle immagini di andy direi che avete incasinato abbastanza il codice, la scritta dovrebbe essere posta sopra la linea orrizzontale e la linea obliqua essere + corta , inoltre come avevo scritto a tornu il calcolo della lunghezza della linea obliqua dovrebbe essere effettuato in base al quadrante in cui ci  si trova, infatti essendo la torta strasportata in 3d , tramite una copia multipla sull' asse verticale le linee dei due quadranti superiori dovranno esser e+ corte , mentre le linee dei due quadranti inferiori  + lunghe, ora purtroppo non ho molto tempo per scrivere questo codice , percui vi conviene trovare un rapporto che sia piacevole , (direi trA 1,5 E 1,7)  e al limite ricorrere a un rimpicciolimento della torta .

prossimamente migliorerò il codice


mi permetto osservazioni chee se applicaate renderebbero linegraf ancora meglio:

a) per tutti i grafici i font applicati a % , legende e titoli dovrebbero essere settati da codice, per tipo, grandezza, colore
b) pie: le righe che vanno a indicare lo spicchio e che terminano vicino la % dovrebbero essere abittate/disabilitate con un true/false
c) pie: sarebbe bello avere la possibilità da codice di settare l'inclinazione della pie
d) pie: sarebbe bello avere la possibilità , imputando da codice il valore di uno spicchio, indicare se lo spicchio deve uscire dalla pie rispetto agli altri

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.256
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: Ultima versione di linegraf
« Risposta #26 il: 02 Luglio 2011, 05:46:02 »
@andy60
Ti posto il codice della Procedure MakePie dove ho apportato le modifiche in un file testo, se in questa procedura non hai fatto altre modifiche puoi fare un copia e incolla.
Per verificare le differenze tra file di codice (per esempio Gambas) se molto esteso io faccio così, copio su gedit i codici e li confronto
con una utility molto semplice da usare, si chiama Meld (io uso Ubuntu) che mi identifica le differenze e dallo stesso tools posso aggiornare il file che copierò dentro il progetto Gambas, se ci sono altri metodi non so.
Spero di esserti stato utile.
Ciao

@tornu
Ora riesco a settare il font dei valori % piu' piccolo. Ho eliminato la riga che va verso la %, non mi piace. Dove devo modificare il codice per avvicinare la % agli spicchi della torta?
« Ultima modifica: 02 Luglio 2011, 07:41:16 da andy60 »

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Ultima versione di linegraf
« Risposta #27 il: 02 Luglio 2011, 22:43:31 »
Ciao andy,
vedo che fai progressi, allora per poter avvicinare le % agli spicchi devi intervenire su questa porzione di codice:
Codice: gambas [Seleziona]

            IF x2 >= cx + dx / 2 THEN
                ' Draw.Line(x2, h - y2, x2 + lt + 5, h - y2) ' Codice originale
                Draw.Line(x2, h - y2, x2 + lt + 10, h - y2) ' Codice modificato
                ' Draw.Text(testo, x2 + 5, h - y2 - Draw.TextHeight(testo) - 3) ' Distanza dati da testata linee - Codice originale
                Draw.Text(testo, x2 +15, h - y2 - Draw.TextHeight(testo) +6) ' Distanza dati da testata linee - Codice modificato
              ELSE
                ' Draw.Line(x2, h - y2, x2 - lt - 5, h - y2) ' Codice originale
                Draw.Line(x2, h - y2, x2 - lt - 10, h - y2) ' Codice modificato
                ' Draw.Font.Bold = TRUE ' *** nuova modifica
                ' Draw.Text(testo, x2 - 5 - lt, h - y2 - Draw.TextHeight(testo) - 3) ' Distanza dati da testata linee - Codice originale
                Draw.Text(testo, x2 -60 - lt, h - y2 - Draw.TextHeight(testo) +6) ' Distanza dati da testata linee - Codice modificato
            ENDIF

devi agire sui valori che ti ho sottolineato (possono essere positivi ho negativi), ci sono arrivato ha forza di fare prove, non sarà molto ortodosso come metodo (fsurfing mi cazzierà) ma non avendo capito a pieno la logica di questa classe non ho altre strade per apportare le modifiche che mi servono, in attesa di nuove dall'autore.

P.S.: Guarda lo screenshot che ti ho allegato dove ho evidenziato esattamente quali sono i valori su cui devi agire.
« Ultima modifica: 02 Luglio 2011, 22:55:38 da tornu »
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.256
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: Ultima versione di linegraf
« Risposta #28 il: 03 Luglio 2011, 00:56:46 »
@tornu

Grazie x l'aiuto. Questo fine settimana ho rispolverato le routine di un anno e mezzo fa. Allego l'ultimo test. Se ti interessa fammi sapere.
« Ultima modifica: 04 Luglio 2011, 16:27:17 da andy60 »

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Ultima versione di linegraf
« Risposta #29 il: 04 Luglio 2011, 22:02:20 »
Complimenti andy  :ok:, hai fatto un gran bel lavoro, mi interessa si e ti ringrazio anticipamente.
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)