मैं एक ऐसा फ़ंक्शन लिखने की कोशिश कर रहा हूं जो दो ओवरलैपिंग आयत लेता है और आयताकार ए के क्षेत्र को कवर करने वाले आयतों की एक सरणी देता है, लेकिन आयताकार बी के क्षेत्र को बाहर कर देता है। मुझे मुश्किल समय लग रहा है यह एल्गोरिदम क्या दिखता है जैसे संभावित टकराव की संख्या बहुत बड़ी है और इसके लिए जिम्मेदार है।जावास्क्रिप्ट में एक आयताकार
tl; डॉ मैं एक आयताकार का उपयोग करके एक आयताकार क्लिप करने की कोशिश कर रहा हूं जिसके परिणामस्वरूप शेष क्षेत्र को कवर आयताकारों का संग्रह होता है।
|-------------| |-------------|
|A | |R1 |
| |-------|----| |-----|-------|
| |B | | To |R2 |
| | | | ====> | |
| | | | | |
|-----|-------| | |-----|
| |
|------------|
POSSIBLE OVERLAP PATTERNS
|-----| |-----| |-----| |-----|
| |---|-| |-|---| | | |-| | | |-| |
|-|---| | | |---|-| |-|-|-| | |-| |
|-----| |-----| |-| |-----|
|-| |-----| |-----|
|-|-|-| | |---|-| |-|---| |
| |-| | | |---|-| |-|---| |
|-----| |-----| |-----|
ध्यान दें कि संभव ओवरलैप पैटर्न डबल है कि दिखाया गया है क्योंकि आयत ए और बी के ऊपर ओवरलैप पैटर्न में से किसी में ईथर आयत हो सकता है।
यह इस के लिए शिखर अंक उपयोग करने के लिए संभव हो सकता है। आप ए – Nikki
से बी में कशेरुक बिंदुओं के बीच की दूरी के आधार पर नए आयताकार निर्देशांक की गणना कर सकते हैं। एक और समस्या है, परिणाम कभी-कभी एक आयताकार से अधिक होता है। एक और नौ के बीच मुझे लगता है। –
निश्चित रूप से एक मानक एल्गोरिदम है? वैसे भी, एक विचार। 4 एक्स निर्देशांक और 4 वाई निर्देशांक हैं, आपके नए क्षेत्र हमेशा इनके संयोजन होंगे। 4 एक्स कॉर्ड कैनवास को 5 लंबवत बैंडों में विभाजित करते हैं, वाई कोयर्स 5 क्षैतिज बैंड में विभाजित होते हैं, यदि सबसे बुरी स्थिति सबसे खराब होती है तो ए, बी, न तो या दोनों से संबंधित 25 गैर-ओवरलैपिंग आयताकार होते हैं। आप केवल ए से संबंधित हैं और सभी को छोड़ दें। – boisvert