मेरे पास विभिन्न आकारों (बड़े आकार, 100x100 की तरह) के शतरंज पर नाइट के पर्यटन के लिए एक एल्गोरिदम है और मैं परिणाम को एनिमेट करना चाहता हूं। प्रत्येक बार जब नाइट एक नए वर्ग में जाता है, तो (वर्ग) कैनवास में एक संबंधित पिक्सेल रंग बदल जाएगा, जब तक कि अंततः पूरे कैनवास रंग न हों। परिणामी फिल्में एल्गोरिदम के बारे में वेब पेज पर देखने के लिए उपलब्ध होंगी।एल्गोरिदम का उपयोग करके एनिमेटेड जीआईएफ बनाने का सबसे अच्छा तरीका क्या है?
एनिमेटेड जीआईएफ सबसे अच्छा तरीका प्रतीत होता है यदि मैं व्यापक ब्राउज़र समर्थन चाहता हूं (हालांकि अन्य सुझावों का स्वागत है)। ऐसा करने के लिए सबसे अच्छा टूल या लाइब्रेरी क्या है? मुझे लिनक्स या मैक कंप्यूटर पर स्वतंत्र रूप से उपलब्ध कुछ भी उपयोग करने में खुशी है।
वास्तविक एल्गोरिथ्म भी यहाँ एक उपयोगी उदाहरण बनाने के लिए (this paper देखें कि क्या तुम सच में उत्सुक हैं) लंबे समय है, लेकिन यहाँ एक 8x8 बोर्ड पर एक (बोरिंग) राजा के दौरे के लिए स्यूडोकोड है:
movie = new Movie()
frame = new Frame()
frame.fillRectangle((1,1), 8, 8, BLUE)
for row in [1..8] {
if (row.isOdd()) { colrange = [1..8] } else { colrange = [8..1] }
for col in colrange {
frame.colourPixel(row, col, RED)
movie.addFrame(frame)
}
}
movie.saveAsGIF("tour.gif")
अतिरिक्त क्रेडिट प्रश्न: क्या हम फ़ाइल के आकार को कम करने के लिए इस फिल्म की विशेष विशेषताओं का लाभ उठा सकते हैं? Wikipedia article बताता है कि हम ऐसा करने में सक्षम हो सकते हैं, अगर हम केवल कुछ पिक्सल बदल रहे हैं - असल में हम केवल प्रति फ्रेम बदल रहे हैं!
एनिमेटेड gifs का उपयोग न करें। इसे इसके बजाय मूवी प्रारूप में कनवर्ट करें, संपीड़न बहुत अधिक होगा –
आप किस प्रारूप का सुझाव देते हैं, और इसे किस टूल के साथ बनाना है? –
संपीड़न का स्तर कई चीजों पर निर्भर करता है। सरल छवियों के लिए gifs बस ठीक कर देगा। इसके अलावा, आकार सादगी के रूप में ज्यादा चिंता का विषय नहीं हो सकता है। एनिमेटेड gifs अद्भुत तकनीक नहीं हैं, लेकिन वे अच्छी तरह से समर्थित हैं। – Naaff