Bir ızgarada oynanan birçok oyun için altıgenler Clearly Superior Choice ™ 'dir. Maalesef, birçok bedava oyun sanatı sitesi yalnızca kare haritalar için dikişsiz döşeme setlerine sahiptir. Geçmiş bir projede bunlardan bazılarını kullandım ve bunları altıgenlere manuel olarak dönüştürdüm.
Ancak , yaşlandığımda tembelleşiyorum. Küçük bir komut dosyasıyla işlemi otomatikleştirmek kolay olmalı.
Ancak , yaşlandığımda tembelleşiyorum. Bu yüzden size dış kaynak veriyorum ve kod golf mücadelesi 1 olarak gizlerim .
Giriş
Giriş, 24 bit RGB renkli herhangi bir ortak görüntü biçiminde kare bir görüntüdür. Resim verisinin kendisi yerine girdi olarak bir dosya adı da alabilirsiniz.
Görüntünün kare olduğunu ve yan uzunluğun dörtün katı olduğunu varsayabilirsiniz.
Çıktı
Çıktı, giriş kutucuğudur, ancak altıgen bir köşeye dönüştürülür (görüntünün kendisi saydam alanlarla kare olacaktır). Bir dosyaya kaydedebilir veya ekrana görüntüleyebilirsiniz.
Yine, herhangi bir ortak görüntü formatı yapacak. Kullandığınız biçim saydamlığı destekliyorsa, arka plan alanlarının saydam olması gerekir. Olmazsa, stand-in olarak # FF00FF (bu korkunç fuşya biri) rengini kullanabilirsiniz.
Yöntem
Peki nasıl yapıyoruz? 2 kullandığım yöntem görüntüyü biraz dikey olarak sıkıştırıyor, ancak genel olarak çoğu şey için oldukça iyi görünüyor. Bu girdi resmiyle bir örnek yapacağız:
- Ölçek: Görüntüyü 3: 2 oranına ölçeklendir. Resimlerimiz kareler olacağından, onları basitçe% 75 genişliğe ve% 50 yüksekliğe ölçeklendireceğiniz anlamına gelir. Örnek girişimiz 200x200'dür, bu yüzden bu 150x100 resimle sonuçlanır:
- Döşeme: Ölçekli görüntünüzün kopyalarını 2x2 ızgaraya yerleştirin:
- Kırpma: Bu 2x2 ızgarasının herhangi bir yerinden uygun büyüklükte bir altıgen yakala. Şimdi, döşeme kolaylığı için, bu altıgen tam olarak düzenli değil. Orijinal boyutta bir kare kırptıktan sonra (burada 200x200), sonra köşeleri kırpın. Kırpma çizgileri sol / sağ tarafların ortasından (kabaca) yukarıdan aşağıya doğru bir çeyrekten başlamalıdır:
Ve bu sizin çıktınız!
İşte, döşendiğinde nasıl görünebileceklerine bir örnek (buraya yakınlaştırılmış):
Bu kod golf, bayt cinsinden en kısa kod kazanır. Standart boşluklar vb. Uygulanır.
1 Buna inanmak ya da inanmaktan çekinmeyin.
2 Bu faydalı siteden bir tane yöntem .