আমি একটি বর্গক্ষেত্র থেকে তৈরি দুটি ড্রাগন কার্ভের একটি দুর্দান্ত জিআইএফ দেখেছি এবং ভাবলাম যে আমরা যদি অন্য একটি বেস চিত্র থেকে শুরু করি তবে কী হবে happen আমি এটি করার জন্য একটি প্রোগ্রাম লিখেছি।
এটি এত শীতল যে আমি ভেবেছিলাম চ্যালেঞ্জ হিসাবে এটি করা মজাদার হবে।
কার্য
আপনি একটি প্রান্ত দৈর্ঘ্য সহ একটি বর্গক্ষেত্র চিত্র নেবেন যা 2 পাওয়ার (4 এর বেশি)।
এই চিত্রটি তৈরি করার জন্য আপনার চিত্রটি সমান আকারের 4 টি উল্লম্ব ব্যান্ডগুলিতে বিভক্ত করে এবং বিপরীত দিকের চিত্রের আকারের 8 ম সংলগ্ন ব্যান্ডগুলি স্থানান্তরিত করা উচিত (স্থানান্তরিত ব্যান্ডগুলি অন্যদিকে প্রায় আবদ্ধ হওয়া উচিত)। তারপরে প্রতিবার এই চিত্রটি দ্বিগুণ বিভাগে বিভক্ত করা এবং আগের সময়ের চেয়ে অর্ধেক স্থান পরিবর্তন করা উচিত process প্রতিটি পুনরাবৃত্তির আপনার উলম্ব এবং অনুভূমিক শিফটের মধ্যে বিকল্প হওয়া উচিত। শিফ্টটি আপনাকে পিক্সেলের ভগ্নাংশের সংখ্যার দ্বারা শিফট করার প্রয়োজন না হওয়াতে পুনরাবৃত্তি করা উচিত (এটি সর্বদা 1/2 হবে) আপনি যে বিন্দুতে সম্পন্ন করেছেন।
বাম দিক থেকে উলম্বভাবে বিজোড় সংখ্যাযুক্ত ব্যান্ডগুলি স্থানান্তরিত করার সময় (শূন্য-সূচকযুক্ত) এমনকি শিফ্ট আপ করার সময় নীচে স্থানান্তরিত হওয়া উচিত। উপরের দিক থেকে অনুভূমিক বিজোড় সংখ্যাযুক্ত ব্যান্ডগুলি স্থানান্তরিত করার সময় বাম দিকে সরে যেতে হবে এবং এমনকী সংখ্যাযুক্ত ব্যান্ডগুলি ডানদিকে সরে যেতে হবে।
আপনার কেবলমাত্র আউটপুট / রূপান্তরটির শেষ ফলাফলটি প্রদর্শন করতে হবে, জিআইএফের মতো সমস্ত মধ্যবর্তী পদক্ষেপ নয়।
এটি কোড-গল্ফ তাই বাইট হিসাবে পরিমাপক হিসাবে আপনার উত্স কোডের দৈর্ঘ্য হ্রাস করা লক্ষ্য।
উদাহরণ দিয়ে কাজ করেছেন
ফ্রেম দ্বারা পৃষ্ঠার ফ্রেমের শীর্ষে প্রদর্শিত ক্যাট জিআইএফের মাধ্যমে কাজ করব।
শুরুর চিত্রটি এখানে:
এই চিত্রটি 512 বাই 512 পিক্সেল। প্রতিটি ব্যান্ডটি 1/8 চিত্রের আকারের (64 পিক্সেল) উল্লম্বভাবে শুরু এবং স্থানান্তর করতে আমরা এটি 4 টি ব্যান্ডে ভেঙে দেব।
আমরা এখন এটিকে দ্বিগুণ ব্যান্ডের (8 টি ব্যান্ড) বিভক্ত করব এবং এটি শেষ সময়ের (32 পিক্সেল) হিসাবে অর্ধেক স্থানান্তর করব। এবার আমরা অনুভূমিকভাবে স্থানান্তরিত করব।
আমরা এখন 16 টি ব্যান্ডে বিভক্ত হয়ে প্রতিটি ব্যান্ডকে 16 পিক্সেল দ্বারা স্থানান্তর করব vert
32 ব্যান্ড, 8 পিক্সেল, অনুভূমিক শিফট
64 ব্যান্ড, 4 পিক্সেল, উল্লম্ব শিফট।
128 ব্যান্ড, 2 পিক্সেল, অনুভূমিক শিফট।
256 ব্যান্ড, 1 পিক্সেল, উল্লম্ব শিফট।
যেহেতু পরের শিফটে আমাদের প্রতিটি ব্যান্ডকে আধ পিক্সেল দিয়ে সরানো দরকার আমরা এই মুহুর্তে থামব এবং ফলাফলটি আউটপুট দেব।
পরীক্ষার মামলা
আমার একটি কার্যনির্বাহী স্ক্রিপ্ট রয়েছে যা এই চিত্রগুলি তৈরি করতে পারে তাই আমি ভেবেছিলাম যে আমি আপনাকে ছেলেদের পরীক্ষার ক্ষেত্রে চিত্রগুলি বেছে নিতে দেব। সুতরাং আপনার যদি এমন একটি বর্গক্ষেত্র চিত্র থাকে যা 2 প্রশস্ত একটি শক্তি যা আপনি দেখতে চান ড্রাগন হয়ে গেছে। এটি আমার কাছে নির্দ্বিধায় প্রেরণ করুন এবং আমি এটি একটি পরীক্ষার কেস করব।
আপনার একটি সরল সাদা বা শক্ত কালো চিত্রেরও পরীক্ষা করা উচিত যাতে আপনি নির্ধারণ করতে পারেন পিক্সেলগুলি অদৃশ্য হচ্ছে কি না।
**Start** by shifting one 8th of the size of the image
পরে repeat ... each time splitting the image into twice as many divisions and shifting half as far as the previous time
প্রথমবারটি হবে 1/8, দ্বিতীয় 1/16। তৃতীয় 1/32 পিক্সেল সংখ্যা আপেক্ষিক না হওয়া পর্যন্ত। আমি এই সম্পর্কে অস্পষ্ট দেখতে পাচ্ছি না।