এটি অবশ্যই রেস্টারদের দ্বারা সম্ভব।
এই স্ক্রিনশটটি আশাবাদী বিষয়টি আরও স্পষ্টভাবে দেখায়। ভোরোনাইয়ের বি অংশটি 'কাকটি উড়ে যাওয়ার সাথে সাথে' মূল ভারোণোই কেন্দ্রে খুব কাছাকাছি রয়েছে, তবে এই ভবনের চারদিকে হাঁটতে আরও বেশি সময় লাগবে এই বিষয়টি বিবেচনায় নেই। ওপি-র প্রশ্নের আমার বোঝার বিষয়টি হ'ল ভোরোনাইকে ভবনের চারদিকে হাঁটার জন্য এই অতিরিক্ত দূরত্বটি বিবেচনায় নেওয়া উচিত।
আমি @ গুইলুমের পরামর্শটি পছন্দ করি। যাইহোক, আমি যখন চেষ্টা করেছিলাম r.grow.distance
তখন মুখোশটিকে সম্মান জানাতে সমস্যা হয়েছিল (নীচে দেখুন The রিপলগুলি বিল্ডিংগুলির মধ্য দিয়ে যেতে হবে না)।
আমার গ্রাস জ্ঞান এতটা শক্তিশালী নয়, তাই আমি বোকা কিছু করছি। অবশ্যই, পরামর্শটি আগে যাচাই করে নিন কারণ এটি আমার থেকে অনেক কম কাজ হবে ;-)
পদক্ষেপ 1 - একটি ব্যয় পৃষ্ঠ তৈরি করুন
প্রথম পদক্ষেপটি ব্যয় পৃষ্ঠ তৈরি করা হয়। এটি কেবল একবার করা দরকার।
- একটি সম্পাদনযোগ্য স্তর, গর্ত এবং সমস্ত তৈরি করুন।
- 'ইউনিট' নামে একটি ক্ষেত্র যুক্ত করুন, এটি 1 এ সেট করুন।
- ফিল্ড 'ইউনিট' ব্যবহার করে আপনার "পাঞ্চ আউট" ভেক্টর লেয়ারে (একটিতে যা ছিদ্র রয়েছে) বহুভিত্তিক থেকে রাস্টার ব্যবহার করে। আপনার এখন একটি স্তর "মুখোশ" রয়েছে, যেখানে 1 খালি জায়গা এবং 0 টি নির্মাণ করছে।
এটিকে ব্যয় পৃষ্ঠে পরিণত করতে রাস্টার ক্যালকুলেটর ব্যবহার করুন। আমি 'বাইরের বাইরে' 1 এবং 'বাড়ির ভিতরে' 9999 এ সেট করব buildings এটি বিল্ডিংগুলির মধ্য দিয়ে চলাচলকে নিষিদ্ধভাবে কঠিন করে তুলবে।
(( "মাস্ক @ 1" = 1) * 1) + (( "মাস্ক @ 1" = 0) * 9999)
ব্যয় পৃষ্ঠের উপর কিছুটা আওয়াজ যোগ করে আপনি আরও 'জৈব' ফলাফল পেতে পারেন (যেমন আউটডোর পিক্সিয়ালের জন্য 1 এর চেয়ে 1 থেকে 3 পর্যন্ত এলোমেলো সংখ্যা ব্যবহার করুন))
পদক্ষেপ 2. প্রতিটি ভোরোনাই কেন্দ্রের জন্য ক্রমবর্ধমান খরচের রাস্টার তৈরি করুন
এখন আমরা চালাতে পারি (একবারে একটি ভোরোনাই সেলের জন্য) r.cost.coordinates
আমাদের ব্যয় পৃষ্ঠের স্তরের বিপরীতে গ্রাআরএসএস অ্যালগরিদম ।
সূচনা সমন্বয়ের জন্য, ভার্নোই কেন্দ্রটি ব্যবহার করুন। শেষ স্থানাঙ্কের জন্য, আপনার অঞ্চলের কোণগুলির একটি বেছে নিন। আমি 'নাইট ট্যুর' ব্যবহার করার পরামর্শ দিচ্ছি কারণ এটি মসৃণ ফলাফল দেয়।
ফলাফলটি একটি ভোরোনাই কেন্দ্র থেকে সমান ভ্রমণের সময়ের রেখাগুলি দেখায়। কীভাবে ব্যান্ডগুলি বিল্ডিংয়ের চারপাশে মোড়ানো রয়েছে তা নোট করুন।
এটি কীভাবে সেরা তা স্বয়ংক্রিয় তা নিশ্চিত না Not হতে পারে ব্যাচ মোড প্রক্রিয়াজাতকরণ, বা পাইকগিসে সম্পন্ন।
পদক্ষেপ 3. রাস্টারদের নিচে মার্জ করুন
এটি সম্ভবত কোড প্রয়োজন হবে। অ্যালগরিদম হবে
create a raster 'A' to match the size of your cumulative cost images
fill raster 'A' with a suitably high number e.g. 9999
create an array of the same size as the raster.
for each cumulative cost raster number 1..N
for each cell in image
if cell < value in raster 'A'
set value in raster 'A' to cell value
set corresponding cell in array to cum. cost image number
write out array as a raster
এই পদ্ধতির কোনও রাস্টার ফলন করা উচিত যেখানে প্রতিটি ঘরটি তার নিকটতম ভোরোনাই কেন্দ্র দ্বারা শ্রেণীবদ্ধ করা হয়, অ্যাকাউন্টের প্রতিবন্ধকতাগুলি গ্রহণ করে।
এরপরে আপনি রাস্টার-টু-বহুভুজ ব্যবহার করতে পারেন। এর পরে আপনি রাস্টার থেকে "পদক্ষেপ" প্রভাব শিল্পকর্মগুলি সরাতে জেনারেলাইজ প্লাগইন ব্যবহার করতে পারেন।
2 এবং 3 ধাপে অস্পষ্টতার জন্য ক্ষমা চাই ... আমি প্রত্যাশা করছি যে আরও চমকপ্রদ সমাধানের জন্য কেউ চিমি দিয়েছে :)