Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

linee verticali es3 hw4

e
el_libregome (870 points)
8 35 43
in Es3 by (870 points)
recategorized by
ho quasi ultimato l'esercizio 3 dell hw 4,ma ho difficoltà a creare i collegamenti verticali: qualche suggerimento?

inoltre potreste dirmi come ricavarmi il nome singolo della directory dal nome completo?

grazie mille
709 views

5 Answers

v
val9 (9770 points)
6 30 53
by (9.8k points)
1) per ricavarti il nome a partire dal percorso puoi usare la funzione os.path.basename()

2) per tracciare le linee verticali puoi memorizzarti le coordinate del primo figlio che tracci e  quelle dell'ultimo.  Stabilisci la colonna, a partire dal 6° px di collegamento orizzontale al 1° figlio. Sapendo colonna, riga iniziale(primo figlio) e riga finale( ultimo figlio) puoi colorare  i px verticalmente.
e
el_libregome (870 points)
8 35 43
by (870 points)
per il nome ho provato, e funziona alla grande, grazie mille

non ho capito bene per le linee verticali
v
val9 (9770 points)
6 30 53
by (9.8k points)
se un nodo non è una foglia allora ci sono sicuramente 10px di collegamento al primo figlio. La colonna rappresenta il 6° px di questo collegamento principale. La prima "riga" da cui deve partire il collegamento verticale è il primo figlio (in realtà il secondo..il primo è già fatto in quanto ci sono i 10 px di collegamento..per semplicità consideriamo il primo) l'ultima "riga" è quella in cui si trova l'ultimo figlio del nodo. Per la prima "riga" basta conoscere la "riga" in cui si trova il nodo padre, per l'ultima, puoi usare una variabile per memorizzarti la "riga" in cui viene disegnato l'ultimo figlio.

Infine, sapendo queste info, te la puoi cavare con un semplice for e tutto è pronto
FrancescoMauto (1000 points)
5 14 20
by (1.0k points)
Ma come faccio a mantenere l'indice della riga del primo figlio?
v
val9 (9770 points)
6 30 53
by (9.8k points)
è lo stesso che usi per disegnare il padre.
FrancescoMauto (1000 points)
5 14 20
by (1.0k points)
Grazie,ci sono riuscito poco fa,sbagliavo in una cosa stupidissima
a.capobianco1 (16770 points)
11 54 165
by (16.8k points)
Per estrapolare ultimo nome:
https://q2a.di.uniroma1.it/11200/dubbio-path-es3-hw4?course=es3%2Fhomework-4%2Fhomework%2Ffondamenti-di-programmazione-18-19&show=11214#c11214

Per linee verticali devi cominciare a scendere 15 px dopo inizio parola disegnata e disegni bianco fino alla riga dell'ultimo figlio.
g
gianluca (1270 points)
1 12 19
by (1.3k points)
per ogni figlio io imposto una distanza tra i vari 'fratelli' che poi vado a sommare alla y.poi dipende come hai impostato la funzione .cmq  richiamo una funzione per ogni figlio con coordinate ((la coordinata x del figlio)-5,il parametro dei fratelli) occhio a mettere la condizione per la radice...e coloro i pixel in verticale. per il nome singolo puoi usare: os.path.basename
e
el_libregome (870 points)
8 35 43
by (870 points)
pensavo di considerare l'incremento con il numero di foglie presenti per 3
I
InnerAlbeiro (550 points)
1 2 7
by (550 points)
per ricavere il nome singolo basta che fai os.path.basename()
c
cristian (2770 points)
3 17 29
by (2.8k points)
Per il nome ti hanno risposto, per quanto riguarda i collegamenti verticali puoi usare questa formula  n+2*(n-1) dove n è il numero di foglie, mi spiego meglio con un esempio :nella caso della directory "\Informatica" la linea bianca da tracciare tra hardware e software è lunga n+2*(n-1) dove n è il numero di foglie di hardware. devi stare attento nel caso non abbia figli