दो या त्रि-आयामी वेक्टर का वर्णन करने के लिए एक वर्ग।
एक वेक्टर के बारे में विभिन्न तरीकों से सोचा जा सकता है। एक दृश्य में, एक वेक्टर अंतरिक्ष की ओर इशारा करते हुए एक तीर की तरह है। वेक्टर में परिमाण (लंबाई) और दिशा दोनों होते हैं।
p5.Vector
ऑब्जेक्ट का उपयोग अक्सर गति को प्रोग्राम करने के लिए किया जाता है क्योंकि वे गणित को सरल बनाते हैं। उदाहरण के लिए, एक चलती हुई गेंद की एक स्थिति और एक वेग होता है। स्थिति बताती है कि गेंद अंतरिक्ष में कहाँ है। गेंद की स्थिति वेक्टर मूल से गेंद के केंद्र तक फैली हुई है। वेग गेंद की गति और उसके घूमने की दिशा का वर्णन करता है। यदि गेंद सीधी ऊपर की ओर बढ़ रही है, तो इसका वेग वेक्टर सीधे ऊपर की ओर इंगित करता है। गेंद के वेग वेक्टर को उसकी स्थिति वेक्टर में जोड़ने से वह गतिमान हो जाती है, जैसा कि pos.add(vel)
में है। वेक्टर गणित p5.Vector
वर्ग
ध्यान दें: createVector() इस वर्ग का उदाहरण बनाने का अनुशंसित तरीका है।
उदाहरण
सिंटैक्स
p5.Vector([x], [y], [z])
पैरामीटर्स
वेक्टर का x घटक।
वेक्टर का y घटक।
वेक्टर का z घटक।
मेथड्स
वेक्टर का एक स्ट्रिंग प्रतिनिधित्व लौटाता है।
कॉलिंग toString()
वेक्टर को प्रिंट करने के लिए उपयोगी है
सांत्वना देते समय
डिबगिंग.
वेक्टर के 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.
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)
के अनुसार निर्देशांक का उपयोग करना।
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!
संबंधित संदर्भ
createVector
एक नया p5.Vector ऑब्जेक्ट बनाता है।
एक वेक्टर के बारे में विभिन्न तरीकों से सोचा जा सकता है। एक दृश्य में, एक वेक्टर अंतरिक्ष की ओर इशारा करते हुए एक तीर की तरह है। सदिशों में परिमाण (लंबाई) और दिशा दोनों होते हैं। यह दृश्य गति प्रोग्रामिंग के लिए सहायक है।
एक वेक्टर के घटक उसके परिमाण और दिशा को निर्धारित करते हैं। उदाहरण के लिए, createVector(3, 4) को कॉल करने से 3 के x-घटक के साथ एक नया p5.Vector ऑब्जेक्ट बनता है। और 4 का एक y-घटक। मूल से, इस वेक्टर की नोक दाईं ओर 3 इकाई और नीचे 4 इकाई है।
p5.Vector ऑब्जेक्ट का उपयोग अक्सर गति को प्रोग्राम करने के लिए किया जाता है क्योंकि वे गणित को सरल बनाते हैं। उदाहरण के लिए, एक चलती हुई गेंद की एक स्थिति और एक वेग होता है। स्थिति बताती है कि गेंद अंतरिक्ष में कहाँ है। गेंद की स्थिति वेक्टर मूल से गेंद के केंद्र तक फैली हुई है। वेग गेंद की गति और उसके घूमने की दिशा का वर्णन करता है। यदि गेंद सीधी ऊपर की ओर बढ़ रही है, तो इसका वेग वेक्टर सीधे ऊपर की ओर इंगित करता है। गेंद के वेग वेक्टर को उसकी स्थिति वेक्टर में जोड़ने से वह गतिमान हो जाती है, जैसा कि pos.add(vel) में है। वेक्टर गणित p5.Vector वर्ग के अंदर के तरीकों पर निर्भर करता है।.
p5.Vector
दो या त्रि-आयामी वेक्टर का वर्णन करने के लिए एक वर्ग।
एक वेक्टर के बारे में विभिन्न तरीकों से सोचा जा सकता है। एक दृश्य में, एक वेक्टर अंतरिक्ष की ओर इशारा करते हुए एक तीर की तरह है। वेक्टर में परिमाण (लंबाई) और दिशा दोनों होते हैं।
p5.Vector ऑब्जेक्ट का उपयोग अक्सर गति को प्रोग्राम करने के लिए किया जाता है क्योंकि वे गणित को सरल बनाते हैं। उदाहरण के लिए, एक चलती हुई गेंद की एक स्थिति और एक वेग होता है। स्थिति बताती है कि गेंद अंतरिक्ष में कहाँ है। गेंद की स्थिति वेक्टर मूल से गेंद के केंद्र तक फैली हुई है। वेग गेंद की गति और उसके घूमने की दिशा का वर्णन करता है। यदि गेंद सीधी ऊपर की ओर बढ़ रही है, तो इसका वेग वेक्टर सीधे ऊपर की ओर इंगित करता है। गेंद के वेग वेक्टर को उसकी स्थिति वेक्टर में जोड़ने से वह गतिमान हो जाती है, जैसा कि pos.add(vel) में है। वेक्टर गणित p5.Vector वर्ग के अंदर के तरीकों पर निर्भर करता है
ध्यान दें: createVector() इस वर्ग का उदाहरण बनाने का अनुशंसित तरीका है।.