আমি ইতিমধ্যে বন্যা পূরণের ব্যবহার সম্পর্কে মন্তব্য করেছি এবং এটি আরও ভাল হবে কেননা এটি আরও নমনীয় তবে এর আরেকটি সম্ভাব্য সমাধান হ'ল স্ক্যানলাইন। (আমি সম্ভবত বলেছি কারণ এটি আপনার জ্যামিতি সম্পর্কে প্রচুর অনুমান করে তবে প্রদর্শিত নির্দিষ্ট সেট এবং এটির সাথে মিলিত অনেকগুলি অনুরূপ) for
3 টি পয়েন্ট সহ আপনার উদাহরণের জন্য: বিভাগটি v1, v2 এবং v3 থাকা লাইনটি থেকে ছেদ করে বের করুন Find (V2 এর উপরের বাম দিকের প্রান্তটি) আমরা এই ভার্টেক্সটি v4 কল করব।
For every vertex pair a,b down v1,v4 and v1,v3
For every vertex from a to b
Mark as in the set
For every vertex pair a,b down v3,v2 and v4,v3
For every vertex from a to b
Mark as in the set
একে স্ক্যানলাইন বলা হয় কারণ (উপরের চিত্রটিতে) আপনি একই সাথে লাল এবং সবুজ রেখাগুলি নীচে যান এবং তারপরে লাল এবং নীল রেখাগুলি একই সাথে লাইনগুলি স্ক্যান করে আপনার যাওয়ার সাথে সাথে।
একটি সূচক প্যাটার্ন থাকলে এই সমাধানটি খুব দ্রুত হবে, যা প্রায়শই ঘটে থাকে। অন্যথায় কোন প্রতিবেশী ভার্টেক্সটি লাইনে রয়েছে তা নির্ধারণের জন্য একটি গণনার প্রয়োজন হবে।
মজার বিষয় হ'ল স্ক্যানলাইন, ব্যারেন্সেন্ট্রিক টেস্টিং (ত্রিভুজ বাউন্ডিং বাক্সে), এবং বন্যা ভরাট 3 ডি রেন্ডারিংয়ে ত্রিভুজ আঁকার সমস্ত উপায়।