רובע

כיתה ציבורית Quaternion

מחלקה בצורת קוונטריה של צף.

פעולות הסגר הן המילטון באמצעות המוסכמה ששולטת בצד ימין.

שדות

צף ציבורי
צף ציבורי x
צף ציבורי
צף ציבורי z

בונים ציבוריים

Quaternion()
יצירת הסגר וההגדרה שלו כ'זהות'
Quaternion(צף x, מספר ממשי (float), float z, float w)
יוצרים הסגר ומגדירים כל ערך.
Quaternion(Quaternion q)
יצירת הסגר באמצעות ערכים מרבעון אחר
Quaternion(Vector3ציר, זווית צפה)
יצירת הסגר באמצעות ציר/זווית להגדרת הסיבוב
Quaternion(Vector3 eulerAngles)
בניית קוונטריה המבוססת על eulerAngles.

שיטות ציבוריות

רבעון סטטי
ציר זווית(ציר וקטור, מעלות צף)
קבלת רבעון חדש באמצעות ציר/זווית להגדרת הסיבוב
בוליאני סטטי
שווה ל-(Quaternion hhs, Quaternion hhs)
השוואת שני רבעונים

בדיקת שוויון זכויות על ידי חישוב המכפלה של נקודות hrh ו-rh.

boolean
שווה(אובייקט אחר)
מחזירה את הערך True אם האובייקט השני הוא Companion ומוצר הנקודה הוא 1.0 +/- סבילות.
רבעון סטטי
eulerAngles(Vector3 eulerAngles)
קבלת רבעון חדש באמצעות eulerAngles להגדרת הסיבוב.
רבעון סטטי
זהות()
הגדרה של Companion כזהות
סטטי Vector3
Quaternion
היפוך(
קבלת Companion עם הסיבוב ההפוך
רבעון סטטי
lookRotation(Vector3forwardInWorld, Vector3 DesireUpInWorld)
קבלת רבעון חדש שמייצג סיבוב לכיוון כיוון ספציפי.
רבעון סטטי
הכפלה(Quaternion hhs, Quaternion hhs)
כדי ליצור רבעון, שילוב של שני רבעים(מול, rhs) שווה לביצוע הסבב של סיבובים רצופים, ולאחר מכן חשוב להקפיד על סדר הסיבוב של הצלעות.
boolean
נרמול()
התאמת הארבעה של הקוויטר משתנה לאורך היחידה.
Quaternion
מנרמל(
אפשר לקבל Companion עם סיבוב תואם אבל מותאם לאורך של יחידה.
סטטי Vector3
סובבVector(Quaternion q, Vector3 src)
סיבוב של Vector3 לפי רבון
רבעון סטטי
rotationBetweenVectors(Vector3 התחלה, Vector3 סיום)
מקבלים רבעון חדש שמייצג את הסיבוב מווקטור אחד לאחר.
ביטול
set(צף Qq, מספר ממשי (float) , qq צף, מספר ממשי (float)
הגדרת כל ערך ונרמול של הרבעון
ביטול
set [הגדרת](ציר וקטור3, זווית צפה)
עדכון הרבעון הזה באמצעות ציר/זווית להגדרת הסיבוב
ביטול
set(Quaternion q)
העתקת ערכים מרבעון אחר לשורה הזו
ביטול
setIdentity()
הגדרת ההסגר הזהויות
רבעון סטטי
slerp(Quaternion start, Quaternion end, float t)
מחרוזת

שיטות שעברו בירושה

שדות

Public float w

Public float x

Public float y

Public float z

בונים ציבוריים

גלוי לכולם Quaternion ()

יצירת הסגר וההגדרה שלו כ'זהות'

גלוי לכול Quaternion (float x, float y, float z, float w)

יוצרים הסגר ומגדירים כל ערך. הרבעון ינורמל במהלך הבנייה

פרמטרים
x
y
z
w

גלוי לכולם Quaternion (Quaternion q)

יצירת הסגר באמצעות ערכים מרבעון אחר

פרמטרים
q

גלוי לכול Quaternion (ציר וקטור, זווית צפה)

יצירת הסגר באמצעות ציר/זווית להגדרת הסיבוב

פרמטרים
Axis הגדרת כיוון הסיבוב
זווית גודל הזווית במעלות

גלוי לכול Quaternion (Vector3 eulerAngles)

בניית קוונטריה המבוססת על eulerAngles.

פרמטרים
אולוגר - הזווית במעלות לכל ציר.
ראו בנוסף

שיטות ציבוריות

גלוי לכולם סטטי Quaternion ציר Angle (ציר ווקטור, מעלות צף)

קבלת רבעון חדש באמצעות ציר/זווית להגדרת הסיבוב

פרמטרים
Axis הגדרת כיוון הסיבוב
מעלות גודל הזווית במעלות

גלוי לכול סטטי או ערך בוליאני שווה (Quaternion hhs , Quaternion rhs)

השוואת שני רבעונים

כדי לבדוק שוויון בנקודות, מחשבים את המכפלה של נקודות rhs ו-rhs. ערכי iframe ו--hashs לא יהיו שווים לפונקציה הזו.

פרמטרים
חישוקים
hrs

גלוי לכול בוליאני שווה (אובייקט אחר)

מחזירה את הערך True אם האובייקט השני הוא Companion ומוצר הנקודה הוא 1.0 +/- סבילות.

פרמטרים
אחר

גלוי לכול סטטי Quaternion eulerAngles (Vector3 eulerAngles)

קבלת רבעון חדש באמצעות eulerAngles להגדרת הסיבוב.

הסיבובים מסודרים בסדר Z, Y ו-X. הדבר נכון לגבי מנועי גרפיקה אחרים. חשוב לשים לב לכך שמערכות הקואורדינטות הן שונות מ-Spotform ו-Unity, ולכן אותן זוויות שמשתמשות כאן יגרמו לכיוון שונה מזה של Unity. צריך לבדוק היטב את ערכי הפרמטרים כדי לקבל את אותה השפעה שבה מקבלים מנועים אחרים.

פרמטרים
אולוגר - הזוויות במעלות.

גלוי לכול סטטי Quarion זהות ()

הגדרה של Companion כזהות

גלוי לכולם סטטי Vector3 InverseסיבובVector (Quaternion q, Vector3 src)

פרמטרים
q
src

גלוי לכול רבעון" היפוך הפוך ()

קבלת Companion עם הסיבוב ההפוך

החזרות
  • הסיבוב ההפוך

Public static Quaternion lookRotation (Vector3 fastInWorld, Vector3 DesireUpInWorld)

קבלת רבעון חדש שמייצג סיבוב לכיוון כיוון ספציפי. אם upInWorld הוא אורתוגונלי למעבר הבא, אזי ציר ה-Y מיוצג באמצעות הפונקציה UpUpInWorld.

פרמטרים
קדימה בעולם
DesireUpInWorld

גלוי לכולם סטטי Quaternion הכפלה (Quaternion hs, Quaternion rhs)

כדי ליצור רבעון, שילוב של שני רבעים(מול, rhs) שווה לביצוע הסבב של סיבובים רצופים, ולאחר מכן חשוב להקפיד על סדר הסיבוב של הצלעות.

פרמטרים
חישוקים
hrs
החזרות
  • הסבב המשולב

גלוי לכול בוליאני נרמול ()

התאמת הארבעה של הקוויטר משתנה לאורך היחידה.

אם לא ניתן לשנות את הרבודה, היא מוגדרת כ-false ומוצגת false.

החזרות
  • נכון אם הרבעון לא היה אפס

גלוי לכולם Quaternion מנרמל ()

אפשר לקבל Companion עם סיבוב תואם אבל מותאם לאורך של יחידה.

החזרות
  • הקוונטריה מותאמת לאורך של היחידה, או אפס אם לא ניתן לעשות זאת.

גלוי לכולם סטטי Vector3 סובבVector (Quaternion q, Vector3 src)

סיבוב של Vector3 לפי רבון

פרמטרים
q
src
החזרות
  • הוקטור המסובב

גלוי לכול סטטי Quaternion rotationBetweenVectors (Vector3 start, Vector3 סיום)

מקבלים רבעון חדש שמייצג את הסיבוב מווקטור אחד לאחר.

פרמטרים
התחלה
סיום

Public null set (float qx, float qy, float qz, float qw)

הגדרת כל ערך ונרמול של הרבעון

פרמטרים
Qx
Qy
Qz
רבעון QW

Public null set (Vector3 ציר, זווית צפה)

עדכון הרבעון הזה באמצעות ציר/זווית להגדרת הסיבוב

פרמטרים
Axis
זווית

Public null set (Quaternion q)

העתקת ערכים מרבעון אחר לשורה הזו

פרמטרים
q

Public null setIdentity ()

הגדרת ההסגר הזהויות

גלוי לכולם סטטי Quaternion slerp (Quaternion start, Quaternion end, float t)

פרמטרים
התחלה
סיום
t

גלוי לכול מחרוזת toString ()