Per molte partite giocate su una griglia, gli esagoni sono Clearly Superior Choice ™. Sfortunatamente, molti siti di arte di gioco gratuiti hanno solo set di tessere senza soluzione di continuità per le mappe quadrate. In un progetto passato, ho usato alcuni di questi e li ho convertiti manualmente in esagoni.
Tuttavia , sono diventato pigro nella mia vecchiaia. Dovrebbe essere facile automatizzare il processo con un piccolo script.
Tuttavia , sono diventato pigro nella mia vecchiaia. Quindi lo sto esternalizzando a te e lo camuffo come una sfida di golf del codice 1 .
Ingresso
L'input è un'immagine quadrata in qualsiasi formato immagine comune in grado di colori RGB a 24 bit. Puoi anche prendere un nome file come input invece dei dati dell'immagine stessa.
Si può presumere che l'immagine sia quadrata e che la lunghezza laterale sia un multiplo di quattro.
Produzione
L'output è il riquadro di input, ma convertito in un esagono (l'immagine stessa sarà quadrata, con aree trasparenti). È possibile salvarlo in un file o visualizzarlo sullo schermo.
Ancora una volta, qualsiasi formato di immagine comune farà. Se il formato che stai utilizzando supporta la trasparenza, le aree di sfondo devono essere trasparenti. In caso contrario, puoi usare il colore # FF00FF (quello orribile fucsia) come stand-in.
Metodo
Quindi come lo facciamo? Il metodo che uso 2 schiaccia l'immagine un po 'verticalmente, ma nel complesso sembra abbastanza buono per la maggior parte delle cose. Faremo un esempio con questa immagine di input:
- Ridimensiona: ridimensiona l'immagine in un rapporto 3: 2. Poiché le nostre immagini saranno quadrate, ciò significa che le ridimensionerai semplicemente al 75% in larghezza e al 50% in altezza. Il nostro esempio di input è 200x200, quindi finiamo con questa immagine 150x100:
- Affianca: posiziona le copie dell'immagine ridimensionata in una griglia 2x2:
- Ritaglia: prendi un esagono di dimensioni adeguate da qualsiasi punto di questa griglia 2x2. Ora, per facilità di piastrellatura, questo esagono non è esattamente regolare. Dopo aver ritagliato un quadrato delle dimensioni originali (qui 200x200), ritaglia gli angoli. Le linee di ritaglio dovrebbero andare dal (approssimativamente) il centro di ciascun lato sinistro / destro a un quarto dal bordo in alto / in basso:
E questo è il tuo risultato!
Ecco un esempio di come potrebbe apparire quando piastrellato (ingrandito qui):
Questo è il codice golf, quindi vince il codice più breve in byte. Si applicano scappatoie standard, ecc. Ecc.
1 Sentiti libero di crederci o no.
2 Metodo uno da questo sito utile.