Gerçek bir 3 boyutlu küp çizmekle ilgili tek bir zorluğumuz yok, işte burada:
Meydan okuma
Göreviniz perspektifli döndürülmüş bir küp çizmektir. Ayrı bir pencerede veya görüntü olarak olabilir.
Giriş
Girişiniz 0 ile 359,99 arasında 3 ayrı sayıdır ... Bunlar x, y ve z ekseni etrafındaki dönüşü derece cinsinden gösterir.
0 0 0
30 0 40
95 320 12
Çıktı
Ayrı bir pencerede görüntüleyebilir veya bir görüntüyü kaydedebilirsiniz. Her tür ekranı kullanabilirsiniz (vektör tabanlı, rasterleştirilmiş, vb.).
Düzenleme: ASCII'ye, yalnızca metin çıktısı olan golf dillerine izin vermek için de izin verilir.
Rasterleştirilmiş veya ASCII grafiklerin çıktısı en az 50 * 50 olmalıdır (rasterleştirme pikselleri, ASCII karakterleri)
Ek bilgi
Pozitif z ekseni pencereden dışarı bakar, x ekseni yataydır ve y ekseni dikeydir. Temel olarak OpenGL standardı.
Küpü belirli bir eksenin negatif yönünde bakarsanız, örneğin y eksenine bakarsanız, dönüşler saat yönünün tersidir.
Kameranın z ekseni üzerinde negatif z yönünde küpten makul bir mesafede, küp (0; 0; 0) konumunda olmalıdır. . küpün de tamamen görünür olması ve çizim çerçevesinin en az% 50'sini alması gerekir. Kamera küpte pozitif z yönünde bakmalıdır.
Küpün dönüşleri x-> y-> z sırasıyla uygulanır.
Küp merkezi etrafında döndürülür, hareket etmez.
Bir küpü 2d uzayda yansıtmak için, küpün x ve y koordinatlarını nokta ile kamera arasındaki z eksenine paralel mesafeye bölmeniz gerekir.
kurallar
Oluşturma kitaplıklarına izin verilir, ancak köşe noktalarının kodda tanımlanması gerekir. 3D küp model sınıfı yok.
Test senaryoları
google will tell you the formula.
Hayır , zorluklar, gönderinin gövdesinde yer alan, mümkün olduğunca çözmek için gereken materyal ve bilgileri içermelidir . Sadece anlamaya başlamak için Google'a veya Wikipedia'ya gitmem gerekmiyor.