संदर्भ p5.Vector

p5.Vector

दो या त्रि-आयामी वेक्टर का वर्णन करने के लिए एक वर्ग।

एक वेक्टर के बारे में विभिन्न तरीकों से सोचा जा सकता है। एक दृश्य में, एक वेक्टर अंतरिक्ष की ओर इशारा करते हुए एक तीर की तरह है। वेक्टर में परिमाण (लंबाई) और दिशा दोनों होते हैं।

p5.Vector ऑब्जेक्ट का उपयोग अक्सर गति को प्रोग्राम करने के लिए किया जाता है क्योंकि वे गणित को सरल बनाते हैं। उदाहरण के लिए, एक चलती हुई गेंद की एक स्थिति और एक वेग होता है। स्थिति बताती है कि गेंद अंतरिक्ष में कहाँ है। गेंद की स्थिति वेक्टर मूल से गेंद के केंद्र तक फैली हुई है। वेग गेंद की गति और उसके घूमने की दिशा का वर्णन करता है। यदि गेंद सीधी ऊपर की ओर बढ़ रही है, तो इसका वेग वेक्टर सीधे ऊपर की ओर इंगित करता है। गेंद के वेग वेक्टर को उसकी स्थिति वेक्टर में जोड़ने से वह गतिमान हो जाती है, जैसा कि pos.add(vel) में है। वेक्टर गणित p5.Vector वर्ग

के अंदर के तरीकों पर निर्भर करता है

ध्यान दें: createVector() इस वर्ग का उदाहरण बनाने का अनुशंसित तरीका है।

उदाहरण

सिंटैक्स

p5.Vector([x], [y], [z])

पैरामीटर्स

x
संख्या:

वेक्टर का x घटक।

y
संख्या:

वेक्टर का y घटक।

z
संख्या:

वेक्टर का z घटक।

मेथड्स

toString

वेक्टर का एक स्ट्रिंग प्रतिनिधित्व लौटाता है।

कॉलिंग toString() वेक्टर को प्रिंट करने के लिए उपयोगी है सांत्वना देते समय डिबगिंग.

set

वेक्टर के x, y, और z को सेट करता है घटक.

set() अलग-अलग संख्याओं का उपयोग कर सकता है, जैसे v.set(1, 2, 3), ए p5.Vector ऑब्जेक्ट, जैसा कि v.set(v2), या an संख्याओं की सारणी, जैसे v.set([1, 2, 3])

यदि किसी घटक के लिए कोई मान प्रदान नहीं किया गया है, तो इसे 0 पर सेट किया जाएगा उदाहरण के लिए, v.set(4, 5) v.x को 4 पर सेट करता है, v.y से 5, और v.z से 0. बिना किसी तर्क के set() को कॉल करना, जैसे v.set() में, सभी वेक्टर सेट करता है घटकों को 0.

copy

p5.Vector की एक प्रति लौटाता है वस्तु.

add

वेक्टर के x, y, और z में जोड़ता है घटक.

add() अलग-अलग संख्याओं का उपयोग कर सकता है, जैसे v.add(1, 2, 3), अन्य p5.Vector ऑब्जेक्ट, जैसा कि v.add(v2), या संख्याओं की एक सारणी, जैसे v.add([1, 2, 3]).

यदि किसी घटक के लिए कोई मान प्रदान नहीं किया गया है, तो यह नहीं बदलेगा। उदाहरण के लिए, v.add(4, 5) v.x में 4 जोड़ता है, v.x में 5 जोड़ता है v.y, और 0 से v.z. बिना किसी तर्क के add() को कॉल करना, जैसे v.add() में, कोई प्रभाव नहीं पड़ता.

add() का स्थिर संस्करण, जैसा कि p5.Vector.add(v2, v1), एक नया लौटाता है p5.Vector ऑब्जेक्ट और बदलता नहीं है मूल.

rem

वेक्टर के x के साथ मॉड्यूलो (शेष) विभाजन करता है, y, और z घटक.

rem() अलग-अलग संख्याओं का उपयोग कर सकते हैं, जैसे v.rem(1, 2, 3), अन्य p5.Vector ऑब्जेक्ट, जैसा कि v.rem(v2), या संख्याओं की एक सारणी, जैसे v.rem([1, 2, 3]).

यदि केवल एक मान प्रदान किया गया है, जैसे v.rem(2), तो सभी अवयव उनके मानों मॉड्यूल 2 पर सेट किया जाएगा। यदि दो मान प्रदान किए गए हैं, जैसा कि अंदर है v.rem(2, 3), तो v.z नहीं बदलेगा। कॉलिंग rem() नंबर के साथ तर्क, जैसे v.rem(), का कोई प्रभाव नहीं पड़ता।

rem() का स्थिर संस्करण, जैसा कि p5.Vector.rem(v2, v1), रिटर्न ए "नया p5.Vector ऑब्जेक्ट और नहीं" को बदलें मूल.

sub

एक वेक्टर के x, y से घटाता है, और z घटक.

sub() अलग-अलग संख्याओं का उपयोग कर सकते हैं, जैसे v.sub(1, 2, 3), दूसरा p5.Vector ऑब्जेक्ट, जैसा कि v.sub(v2), या एक सरणी संख्याओं का, जैसे v.sub([1, 2, 3])

यदि किसी घटक के लिए कोई मान प्रदान नहीं किया गया है, तो यह नहीं बदलेगा। के लिए उदाहरण के लिए, v.sub(4, 5) v.x में 4 जोड़ता है, v.x में 5 जोड़ता है v.y, और 0 से v.z. बिना किसी तर्क के sub() को कॉल करना, जैसे v.sub() में, कोई प्रभाव नहीं पड़ता.

sub() का स्थिर संस्करण, जैसा कि p5.Vector.sub(v2, v1), एक नया लौटाता है p5.Vector ऑब्जेक्ट और बदलता नहीं है मूल.

mult

वेक्टर के x, y, और को गुणा करता है z घटक.

mult() अलग-अलग संख्याओं का उपयोग कर सकते हैं, जैसे v.mult(1, 2, 3), दूसरा p5.Vector ऑब्जेक्ट, जैसा कि v.mult(v2), या एक सरणी संख्याओं का, जैसे v.mult([1, 2, 3])

यदि केवल एक मान प्रदान किया गया है, जैसे v.mult(2), तो सभी अवयव 2 से गुणा किया जाएगा। यदि किसी घटक के लिए कोई मान प्रदान नहीं किया गया है, तो वह नहीं बदलेगा. उदाहरण के लिए, v.mult(4, 5) गुणा करता है v.x द्वारा, v.y द्वारा 5, और v.z द्वारा 1. बिना किसी तर्क के mult() को कॉल करना, जैसा कि v.mult() में है कोई असर नहीं.

mult() का स्थिर संस्करण, जैसा कि इसमें है p5.Vector.mult(v, 2), एक नया रिटर्न देता है p5.Vector ऑब्जेक्ट और बदलता नहीं है मूल.

div

वेक्टर के x, y, और z को विभाजित करता है घटक.

div() अलग-अलग संख्याओं का उपयोग कर सकते हैं, जैसे v.div(1, 2, 3), दूसरा p5.Vector ऑब्जेक्ट, जैसा कि v.div(v2), या एक सरणी संख्याओं का, जैसे v.div([1, 2, 3]).

यदि केवल एक मान प्रदान किया गया है, जैसे v.div(2), तो सभी अवयव 2 से विभाजित किया जाएगा। यदि किसी घटक के लिए कोई मान प्रदान नहीं किया गया है, तो वह नहीं बदलेगा. उदाहरण के लिए, v.div(4, 5) विभाजित करता है v.x द्वारा, v.y द्वारा 5, और v.z द्वारा 1. बिना किसी तर्क के div() को कॉल करना, जैसा कि v.div() में है कोई असर नहीं.

div() का स्थिर संस्करण, जैसा कि p5.Vector.div(v, 2), एक नया लौटाता है p5.Vector ऑब्जेक्ट और बदलता नहीं है मूल.

mag

वेक्टर के परिमाण (लंबाई) की गणना करता है।

के परिमाण की गणना करने के लिए mag() का उपयोग करें एक 2D वेक्टर mag(x, y)

जैसे घटकों का उपयोग करना
magSq

वेक्टर वर्ग के परिमाण (लंबाई) की गणना करता है।

dot

दो वैक्टर के डॉट उत्पाद की गणना करता है।

डॉट उत्पाद एक संख्या है जो दो के बीच ओवरलैप का वर्णन करती है वेक्टर दृष्टिगत रूप से, डॉट उत्पाद को "छाया" एक वेक्टर के रूप में सोचा जा सकता है दूसरे पर डालता है. दो वैक्टर होने पर डॉट उत्पाद का परिमाण सबसे बड़ा होता है समान या विपरीत दिशा में इंगित करें। दो होने पर इसका परिमाण 0 होता है सदिश एक समकोण बनाते हैं।

एक पैरामीटर के साथ dot() का संस्करण इसकी व्याख्या इस प्रकार करता है एक और p5.Vector ऑब्जेक्ट।

कई मापदंडों के साथ dot() का संस्करण व्याख्या करता है उन्हें के रूप में x, y, और z दूसरे के घटक वेक्टर.

dot() का स्थिर संस्करण, जैसा कि p5.Vector.dot(v1, v2), वही है v1.dot(v2) को कॉल करने के रूप में।

cross

दो वैक्टरों के क्रॉस उत्पाद की गणना करता है।

क्रॉस उत्पाद एक वेक्टर है जो सीधे विमान से बाहर की ओर इंगित करता है बनाया था दो वैक्टर द्वारा. क्रॉस उत्पाद का परिमाण का क्षेत्रफल है चतुर्भुज मूल दो वैक्टर द्वारा निर्मित।

जैसा कि cross() का स्थिर संस्करण है p5.Vector.cross(v1, v2), वही है v1.cross(v2) को कॉल करने के रूप में।

dist

वेक्टर द्वारा दर्शाए गए दो बिंदुओं के बीच की दूरी की गणना करता है।

एक बिंदु के निर्देशांक को एक वेक्टर के घटकों द्वारा दर्शाया जा सकता है जो उद्गम से बिंदु तक फैला हुआ है।

जैसा कि dist() का स्थिर संस्करण है p5.Vector.dist(v1, v2), वही है v1.dist(v2) को कॉल करने के रूप में।

दूरी की गणना करने के लिए dist() का उपयोग करें बिंदुओं के बीच dist(x1, y1, x2, y2) के अनुसार निर्देशांक का उपयोग करना।

normalize

a p5.Vector पर आपत्ति है" कि इसका परिमाण 1 है.

जैसा कि <कोड>सामान्यीकरण() का स्थिर संस्करण है <कोड>p5.वेक्टर.सामान्यीकरण(v), एक नया p5.Vector ऑब्जेक्ट लौटाता है और नहीं बदलता मूल.

limit

वेक्टर के परिमाण को अधिकतम मान तक सीमित करता है।

जैसा कि limit() का स्थिर संस्करण है p5.Vector.limit(v, 5), एक रिटर्न देता है "नया p5.Vector ऑब्जेक्ट और नहीं" को बदलें मूल.

setMag

वेक्टर के परिमाण को किसी दिए गए मान पर सेट करता है।

जैसा कि setMag() का स्थिर संस्करण है p5.Vector.setMag(v, 10), रिटर्न एक नया p5.Vector ऑब्जेक्ट और नहीं को बदलें मूल.

heading

धनात्मक x-अक्ष के साथ एक 2D वेक्टर द्वारा बनाए गए कोण की गणना करता है।

परंपरा के अनुसार, सकारात्मक x-अक्ष का कोण 0 होता है। कोण बढ़ते हैं में दक्षिणावर्त दिशा.

यदि वेक्टर के साथ बनाया गया था "createVector()," heading() कोण लौटाता है वर्तमान की इकाइयों में एंगलमोड().

"

जैसा कि heading() का स्थिर संस्करण है p5.Vector.heading(v), काम करता है उसी तरह.

setHeading

2D वेक्टर को बिना बदले एक विशिष्ट कोण पर घुमाता है परिमाण.

परंपरा के अनुसार, सकारात्मक x-अक्ष का कोण 0 होता है। कोण बढ़ते हैं में दक्षिणावर्त दिशा.

यदि वेक्टर के साथ बनाया गया था "createVector()," setHeading() का उपयोग करता है वर्तमान की इकाइयाँ एंगलमोड().

"
rotate

एक 2डी वेक्टर को उसके परिमाण को बदले बिना एक कोण से घुमाता है।

परंपरा के अनुसार, सकारात्मक x-अक्ष का कोण 0 होता है। कोण बढ़ते हैं में दक्षिणावर्त दिशा.

यदि वेक्टर के साथ बनाया गया था "createVector()," rotate() का उपयोग करता है वर्तमान की इकाइयाँ एंगलमोड().

"

जैसा कि rotate() का स्थिर संस्करण है <कोड>p5.वेक्टर.रोटेट(v, PI), एक नया p5.Vector ऑब्जेक्ट लौटाता है और नहीं बदलता मूल.

angleBetween

दो वैक्टरों के बीच के कोण की गणना करता है।

लौटे गए कोणों पर हस्ताक्षर किए गए हैं, जिसका अर्थ है कि <कोड>v1.एंगलबीच(v2) === -v2.एंगलबीच(v1).

यदि वेक्टर के साथ बनाया गया था "createVector()," <कोड>एंगलबिटवीन() रिटर्न धारा की इकाइयों में कोण एंगलमोड().

lerp

नये x, y, और z की गणना करता है घटक जो आनुपातिक रूप से हैं दो वैक्टरों के बीच समान दूरी।

amt पैरामीटर के बीच प्रक्षेप करने की मात्रा है पुराने वेक्टर और नया वेक्टर. 0.0 सभी घटकों को पुराने वेक्टर के बराबर रखता है, 0.5 है आधे रास्ते के बीच, और 1.0 सभी घटकों को नए के बराबर सेट करता है वेक्टर का.

जैसा कि lerp() का स्थिर संस्करण है <कोड>p5.वेक्टर.lerp(v0, v1, 0.5), एक नया p5.Vector ऑब्जेक्ट लौटाता है और नहीं बदलता मूल.

slerp

एक नए शीर्षक और परिमाण की गणना करता है जो दो के बीच है वेक्टर.

amt पैरामीटर के बीच प्रक्षेप करने की मात्रा है पुराने वेक्टर और नया वेक्टर. 0.0 शीर्षक और परिमाण को पुराने के बराबर रखता है वेक्टर, 0.5 उन्हें बीच में आधा सेट करता है, और 1.0 शीर्षक और सेट करता है नए वेक्टर के बराबर परिमाण।

slerp() lerp() क्योंकि" यह परिमाण को प्रक्षेपित करता है। v0.slerp(v1, 0.5) सेट को कॉल करना "v0's" परिमाण अपने मूल परिमाण और के बीच के आधे मान तक "v1's." v0.lerp(v1, 0.5) को कॉल करने से ऐसी कोई गारंटी नहीं मिलती।

जैसा कि slerp() का स्थिर संस्करण है <कोड>p5.वेक्टर.slerp(v0, v1, 0.5), एक नया p5.Vector ऑब्जेक्ट लौटाता है और नहीं बदलता मूल.

reflect

2डी में एक रेखा या 3डी में एक समतल के बारे में एक वेक्टर को दर्शाता है।

रेखा या तल का अभिविन्यास एक सामान्य वेक्टर द्वारा वर्णित किया गया है वह आकृति से दूर इंगित करता है.

जैसा कि reflect() का स्थिर संस्करण है <कोड>p5.वेक्टर.रिफ्लेक्ट(v, n), एक नया p5.Vector ऑब्जेक्ट लौटाता है और नहीं बदलता मूल.

array

वेक्टर के घटकों को संख्याओं की एक सरणी के रूप में लौटाता है।

equals

जांचता है कि वेक्टर के सभी घटक दूसरे के बराबर हैं या नहीं वेक्टर का.

equals() यदि वेक्टर है, तो true लौटाता है सभी घटक दूसरे के समान हैं वेक्टर और गलत यदि नहीं।

एक पैरामीटर के साथ equals() का संस्करण इसकी व्याख्या करता है दूसरे के रूप में p5.Vector ऑब्जेक्ट।

कई मापदंडों के साथ equals() का संस्करण उनकी व्याख्या इस प्रकार करता है दूसरे वेक्टर के घटक। किसी भी लापता पैरामीटर को असाइन किया गया है कीमत 0.

जैसा कि equals() का स्थिर संस्करण है p5.वेक्टर.बराबर(v0, v1), दोनों पैरामीटरों की व्याख्या p5.Vector ऑब्जेक्ट।

"
fromAngle

एक कोण से एक नया 2डी वेक्टर बनाता है।

fromAngles

आईएसओ गोलाकार कोणों की एक जोड़ी से एक नया 3डी वेक्टर बनाता है।

random2D

यादृच्छिक शीर्षक के साथ एक नया 2डी यूनिट वेक्टर बनाता है।

random3D

यादृच्छिक शीर्षक के साथ एक नया 3D यूनिट वेक्टर बनाता है।

Notice any errors or typos? Please let us know. Please feel free to edit src/math/p5.Vector.js and open a pull request!

संबंधित संदर्भ