खंड, युग्म [start, end], को लाइन ऑब्जेक्ट में बदलता है।
उदाहरण: [[0,0,0], [10,5,0]] -> { start: [0,0,0], end: [10,5,0] }
सेगमेंट
लाइन
हर खंड, एक युग्म [start, end], को लाइन ऑब्जेक्ट में बदलता है।
उदाहरण: तीन खंड -> तीन लाइनें, उसी क्रम में
सेगमेंट
प्रत्येक सेगमेंट के लिए एक लाइन
एक शुरुआती और एक अंतिम पॉइंट से लाइन ऑब्जेक्ट बनाता है।
उदाहरण: शुरुआत [0,0,0], अंत [10,5,0] -> { start: [0,0,0], end: [10,5,0] }
आरंभ और अंत पॉइंट
लाइन ऑब्जेक्ट
एक शुरुआती और एक अंतिम पॉइंट से खंड, लाइन का पॉइंट-युग्म रूप, बनाता है।
उदाहरण: शुरुआत [0,0,0], अंत [10,5,0] -> [[0,0,0], [10,5,0]]
आरंभ और अंत पॉइंट
सेगमेंट, [start, end] के रूप में
हर पॉइंट को अगले से एक लाइन से जोड़ता है, ताकि पॉइंट की सूची लाइनों की शृंखला बन जाए।
उदाहरण: [[0,0,0], [5,0,0], [5,5,0]] -> दो लाइनें, [0,0,0] से [5,0,0] और [5,0,0] से [5,5,0]
पॉइंट, क्रम में
पड़ोसी पॉइंट के प्रत्येक जोड़े के लिए एक लाइन
हर शुरुआती पॉइंट को उसी स्थिति के अंतिम पॉइंट के साथ जोड़ी बनाकर उन्हें एक लाइन से जोड़ता है।
जिस जोड़ी के दोनों पॉइंट एक ही जगह हों वह कोई लाइन नहीं बनाती और छोड़ दी जाती है। उदाहरण: शुरुआत [[0,0,0], [5,0,0]] और अंत [[0,5,0], [5,5,0]] -> दो लाइनें
आरंभ पॉइंट और अंत पॉइंट, मेल खाते क्रम में
प्रत्येक जोड़े के लिए एक लाइन, 0 लंबाई वाले जोड़ों को छोड़कर
लाइन पर एक अंश की दूरी पर स्थित पॉइंट खोजता है: 0 शुरुआत देता है, 1 अंत, 0.5 मध्य।
0 से 1 के बाहर का अंश सिरों के पार जारी रहता है। उदाहरण: { start: [0,0,0], end: [10,0,0] } 0.5 पर -> [5,0,0]
लाइन और उस पर का अंश
लाइन पर स्थित पॉइंट
वह पॉइंट खोजता है जहाँ दो लाइनें एक-दूसरे को काटती हैं।
checkSegmentsOnly चालू होने पर, कटाव दोनों खंडों के भीतर होना चाहिए; बंद होने पर, लाइनें
अनंत तक फैलती हैं। समानांतर लाइनें, बिना मिले एक-दूसरे के पास से गुज़रने वाली लाइनें, और एक-दूसरे तक
न पहुँचने वाले खंड undefined देते हैं। टॉलरेंस बताता है कि कितना पास मिलना माना जाता है।
उदाहरण: [0,0,0] से [10,0,0] और [5,-5,0] से [5,5,0] -> [5,0,0]
दोनों लाइनें, क्या सेगमेंट के भीतर ही रहना है, और टॉलरेंस
प्रतिच्छेदन पॉइंट, या undefined जब कोई न हो
लाइन के दोनों सिरों पर एक ट्रांसफॉर्मेशन मैट्रिक्स, या क्रम में उनकी सूची, लागू करता है।
उदाहरण: { start: [0,0,0], end: [10,0,0] } [5,5,0] से हिलाया गया -> { start: [5,5,0], end: [15,5,0] }
लाइन और ट्रांसफॉर्मेशन
ट्रांसफॉर्म किए गए सिरों वाली एक नई लाइन
हर लाइन पर एक अलग ट्रांसफॉर्मेशन लागू करता है: पहला ट्रांसफॉर्मेशन पहली लाइन पर, और इसी तरह आगे।
उदाहरण: तीन लाइनें तीन ट्रांसलेशन के साथ -> हर लाइन अपने ट्रांसलेशन से हिलाई गई
लाइनें और प्रत्येक लाइन के लिए एक ट्रांसफॉर्मेशन
ट्रांसफॉर्म की गई लाइनें, उसी क्रम में
दो पॉइंट के बीच सीधी लाइनें,
{ start, end }रूप के सादे ऑब्जेक्ट के रूप में रखी गई, और उसी चीज़ का सेगमेंट रूप[start, end]। यहाँ के मेथड लाइनें बनाते हैं, उन्हें मापते और ट्रांसफॉर्म करते हैं, दोनों रूपों के बीच बदलते हैं, उनके साथ पॉइंट रखते हैं और पता लगाते हैं कि दो लाइनें कहाँ मिलती हैं। लंबाइयाँ मॉडल इकाइयों में हैं।