গ্রিডে টাউন লেআউট তৈরি করা


9

নিম্নোক্ত উপাদানগুলি ব্যবহার করে আমি একটি বর্গাকার গ্রিডে নগর বিন্যাস তৈরি করতে চাই (আইসোমেট্রিকভাবে রেন্ডার করা, তবে এটি কোনও ব্যাপার নয়):

  • 2x2 ঘর
  • রাস্তা, 1 ইউনিট প্রশস্ত
  • খাল, 1 ইউনিট প্রশস্ত

নমুনা বিন্যাস:

নমুনা বিন্যাস

  • আমার সবসময় একটি নির্দিষ্ট সংখ্যক ঘর এবং এগুলি সংযুক্ত করার জন্য প্রয়োজনীয় যতগুলি রাস্তা এবং খাল রয়েছে have
  • বাড়ির সামনের দরজার সামনে দুটি টুকরো রাস্তা থাকা দরকার (যা সর্বদা ডান দিকে নির্দেশ করে)
  • অভ্যন্তরে ঘাসের ক্ষেত্র (শূন্যতা) পাওয়া ভাল লাগবে।

এটির জন্য কি কোনও তৈরি অ্যালগরিদম আছে? যদি তা না হয় তবে আমি এটি বাস্তবায়নের জন্য কোন দিকের কথা চিন্তা করব?

উত্তর:


8

আপনি কীভাবে এটি চান তার উপর নির্ভর করে অনেকগুলি পথ যেতে পারে। এখানে একটি উপায়ের মোটামুটি রূপরেখা দেওয়া হচ্ছে যা আমি মনে করি আপনার বিবরণটি ফিট করে:

প্রথমে খাল তৈরি করুন। তারপরে এলোমেলোভাবে ঘর স্থাপন শুরু করুন, আপনার প্রতিটি বাড়ির জন্য, রাস্তাটি তার সামনে রাখুন এবং সেই টুকরোটি থেকে বিদ্যমান রাস্তা নেটওয়ার্কে একটি রাস্তা আঁকুন, যদি হয় না হয় বা রাস্তাটি সামনে রাখে তবে একটি কুৎসিত 2x2 ব্লকের ফলাফল হয় রাস্তা ঘর reposition। কিছু রোড পয়েন্টগুলি সনাক্ত করুন যা একে অপরের নিকটে রয়েছে তবে বিদ্যমান রাস্তাগুলি অনুসরণ করে অনেক দূরে এবং সেগুলির জন্য কিছু শর্টকাট তৈরি করার চেষ্টা করুন।

এই ধরণের স্টাফ বেশিরভাগটি পরীক্ষা এবং অভিজ্ঞতা নেয়। প্রায়শই আপনি এলোমেলো ফ্যাশনটিতে কিছু বিশদ তৈরির থেকে ভাল ফলাফল পাবেন, এটি কিছু মানদণ্ড পূরণ করে কিনা তা নির্ধারণ করুন এবং তা না হলে পূর্বাবস্থায় ফিরে চেষ্টা করুন।

এই সঠিক কাজের জন্য আপনার অবশ্যই বেসিক পাথফাইন্ডিংয়ের একটি ভাল উপলব্ধি প্রয়োজন, আপনি যদি ইতিমধ্যে বিশেষজ্ঞ না হন তবে বিষয়টিতে পড়ুন। এবং মনে রাখবেন, পাথ ফাইন্ডিংটি কেবল সবচেয়ে ছোট পথ সম্পর্কে হওয়া উচিত নয়, আমার বিবরণের শেষ অংশের জন্য আপনি ইতিমধ্যে যে পথগুলি পুনরায় ব্যবহার করতে পারেন তার জন্য কিছুটা ওজন দিতে চাইতে পারেন।

এটি মোটেও সহজ কাজ নয়, যদি আপনি আটকে যান তবে ফিরে আসুন এবং আপনার কোড এবং কিছু উদাহরণ আউটপুট দেখান এবং কীভাবে আপনি এটি আলাদা হতে চান তা বিশদভাবে ব্যাখ্যা করুন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.