Centrati in orizzontale vs Centrati in verticale

l
laertleba (2840 points)
8 26 41
asked Nov 30, 2021 in HW6 by laertleba (2,840 points)
edited Nov 30, 2021 by laertleba
Ciao a tutti,

non sto riuscendo a capire la differenza tra le due. Controllando gli esempi non vedo nessuna differenza. Qualcuno sa rispondermi?
309 views

2 Answers

Best answer
Exyss (21390 points)
1 2 79
answered Nov 30, 2021 by Exyss (21,390 points)
edited Nov 30, 2021 by Exyss

Considera un esempio dove la spaziatura passata dal test sia 20 e vi siano le seguenti due fasce di palazzi:

  • A = larghezza 40, altezza 20 ----- B = larghezza 30, altezza 60 ----- C = larghezza 40, altezza 40
  • D = larghezza 80, altezza 20 ----- E = larghezza 40, altezza 40

In questo caso, le dimensioni massime della prima fascia corrispondono a larghezza 20+40+20+30+20+40+20 = 190 ed altezza 60, poiché il palazzo B è il più alto. Visto che il palazzo A e C hanno un'altezza minore rispetto all'altezza massima, dovrai centrarli verticalmente rispetto ad un immaginario "asse X" situato alla metà del palazzo B.

Per la seconda fascia, invece, le dimensioni massime risultano larghezza 20+80+20+40+20 = 180 e altezza 40. Come per la precedente fascia, dovrai trovare il modo di poter centrare verticalmente il palazzo D rispetto al palazzo E. Tuttavia, per questa fascia dovrai anche centrare orizzontalmente i palazzi, ossia adeguare tutte le spaziature interne in modo che la larghezza totale della seconda fascia sia pari a quella della prima, poiché ovviamente nella mappa finale tutte le fasce devono avere la stessa larghezza.

In termini brevi, ogni fascia dovrà essere centrata verticalmente e giustificata orizzontalmente

Quindi, in questo esempio andremo a "spargere" quei 10 pixel in più tra le varie spaziature interne della seconda fascia. Dunque, visto che in questo esempio esiste una sola spaziatura interna, andremo ad aggiungere 10 ad essa, ottenendo così la larghezza 20+80+30+40+20 = 190

l
laertleba (2840 points)
8 26 41
commented Nov 30, 2021 by laertleba (2,840 points)
Una risposta migliore di questa non potevo ricevere, mi hai fatto capire meglio tanti aspetti del problema, ti ringrazio.
Exyss (21390 points)
1 2 79
commented Nov 30, 2021 by Exyss (21,390 points)

Felice di esser stato d'aiuto laugh

Near (3430 points)
3 6 9
commented Dec 7, 2021 by Near (3,430 points)
sempre il migliore prof
.
.Alex. (890 points)
0 0 8
answered Nov 30, 2021 by .Alex. (890 points)

Centrati in orizzontale: secondo la consegna, in ogni fascia i primi palazzi si devono trovare a distanza "spaziatura" dal bordo sinistro, così come l'ultimo palazzo dovrà trovarsi a distanza spaziatura dal bordo destro. Ciò sarà impossibile se in una fascia vi è un unico edificio. Per questo dovrai "centrarlo in orizzontale", ossia dovrai aggiungere in quel caso alla spaziatura iniziale, un'opportuna spaziatura extra per far trovare il palazzo esattamente al centro della fascia.

Centrati in verticale: immagina che per ogni fascia passi un asse, tale da dividere esattamente in due parti uguali tutte le altezze di quella fascia. In base a questo criterio devi "centrare verticalmente" i palazzi.