Vector3int16

Pokaż przestarzałe

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Typ danych reprezentuje wektor w przestrzeni 3D z podpisanym 16-bitowym liczbą całkowitą dla jego komponentów.Jest podobny do Vector3 w tym, że umożliwia te same operacje arytmetyczne, ale brakuje powszechnie używanych funkcji wektorowych.

Vector3int16 powinno być nie mylone z:

  • , bardziej precyzyjna implementacja i kompletna dla wektorów 3D.
  • Vector2int16 , podobna implementacja dla wektorów 2D.

Dla każdego komponentu:

  • Wiązanie niższe jest -2 15 lub -32,768 .
  • Górna wiązka jest 2 15 − 1 lub 32,767 .

Konwersja na Vector3

Aby przekonwertować Vector3int16 na Vector3, zbuduj Vector3 poprzez przekazanie każdego komponentu z Vector3int16 na Vector3.new() :


local vector3int16 = Vector3int16.new(1, 2, 3)
local vector3 = Vector3.new(vector3int16.X, vector3int16.Y, vector3int16.Z)
print(vector3) --> 1, 2, 3

Nie przekazuj całego nie do , ponieważ konstruktor interpretuje jako wewnątrz swoich parametrów bez wywołania błędu .Może to doprowadzić do cichych błędów logiki, jeśli zrobisz coś takiego jak:


local vector3int16 = Vector3int16.new(1, 2, 3)
local vector3 = Vector3.new(vector3int16)
print(vector3) --> 0, 0, 0

Operacje matematyczne

Następujące operacje matematyczne są ważne dla wpisywaćdanych Vector3int16 .Dla wszystkich operacji należy pamiętać o granicach związanych z podpisanymi 16-bitowymi liczbami, opisanymi wcześniej.


<td>Opis</td>
</tr>
</thead>
<tbody>
<tr>
<td><code>Typ danych.Vector3int16</code><code>+</code><code>Typ danych.Vector3int16</code></td>
<td>Wytwarza <code>Typ danych.Vector3int16</code>, którego składniki są sumą odpowiednich składników operandów.</td>
</tr>
<tr>
<td><code>Typ danych.Vector3int16</code><code>-</code><code>Typ danych.Vector3int16</code></td>
<td>Wytwarza <code>Datatype.Vector3int16</code>, którego składniki są różnicą składników odpowiednich operandów.</td>
</tr>
<tr>
<td><code>Typ danych.Vector3int16</code><code>*</code><code>Typ danych.Vector3int16</code></td>
<td>Wytwarza <code>Datatype.Vector3int16</code>, którego składniki są produktem odpowiednich składników operandów.</td>
</tr>
<tr>
<td><code>Typ danych.Vector3int16</code><code>/</code><code>Typ danych.Vector3int16</code></td>
<td>Wytwarza <code>Typ danych.Vector3int16</code>, którego składniki są mnożnikiem odpowiednich komponentów operandów.Wyniki podziału są zaokrąglane w dół.</td>
</tr>
<tr>
<td><code>Typ danych.Vector3int16</code>   <code>*</code>   <code>liczba</code></td>
<td>Wytwarza <code>Typ danych.Vector3int16</code>, którego składniki są produktem odpowiednich komponentów <code>Typ danych.Vector3int16</code> i liczby (czynnika).Ta operacja jest komutatywna.</td>
</tr>
<tr>
<td><code>Typ danych.Vector3int16</code>   <code>/</code>   <code>liczba</code></td>
<td>Wytwarza <code>Datatype.Vector3int16</code>, którego składniki są mnożnikiem odpowiednich komponentów <code>Datatype.Vector3int16</code> i liczbą (dzielnikiem).Wyniki podziału są zaokrąglane w kierunku zera.</td>
</tr>
</tbody>
Operacja

Podsumowanie

Konstruktorzy

Właściwości

Działania matematyczne

Konstruktorzy

new

Zwraca nowy Vector3int16 z komponentów x, y i z danymi x, y i z. Komponenty nieujęte w liczbie całkowitej są zaokrąglane w dół.

Komponenty muszą znajdować się w przedziale [-2 15 , 2 15 ).Jeśli znajdujesz się poza tym zakresem, może występowaćprzeciążenie liczby całkowitej.Na przykład dostarczanie 32,768 (również 2 15 ) jako komponent przekracza 16-bitową liczbę całkowitą, a więc komponent będzie -32,768 (również 2 15 ) zamiast.

Parametry

Właściwości

Koordynata x z Vector3int16 , również dostępna w jej mniejszej odmianie.

Koordynata y Vector3int16 , również dostępna w jej mniejszej odmianie.

Koordynata z w Vector3int16, również dostępna w jej odmianie mniejszej litery.

Działania matematyczne

Vector3int16 + Vector3int16 : Vector3int16

Wytwarza Vector3int16, którego składniki są sumą odpowiednich składników operandów.Bądź świadomy granic związanych z podpisanymi 16-bitowymi liczbami, opisanymi wcześniej.

Vector3int16 - Vector3int16 : Vector3int16

Wytwarza Vector3int16, którego składniki są różnicą składników odpowiednich operandów.Bądź świadomy granic związanych z podpisanymi 16-bitowymi liczbami, opisanymi wcześniej.

Vector3int16 * Vector3int16 : Vector3int16

Wytwarza Vector3int16, którego składniki są produktem odpowiednich składników operandów.Bądź świadomy granic związanych z podpisanymi 16-bitowymi liczbami, opisanymi wcześniej.

Vector3int16 / Vector3int16 : Vector3int16

Wytwarza Vector3int16, którego składniki są mnożnikiem odpowiednich składników operandów.Wyniki podziału są zaokrąglane w dół.Bądź świadomy granic związanych z podpisanymi 16-bitowymi liczbami, opisanymi wcześniej.

Vector3int16 * number : Vector3int16

Wytwarza Vector3int16, którego składniki są produktem odpowiednich składników Vector3int16 i liczby (czynnika).Ta operacja jest komutatywna.Bądź świadomy granic związanych z podpisanymi 16-bitowymi liczbami, opisanymi wcześniej.

Vector3int16 / number : Vector3int16

Wytwarza Vector3int16, którego składniki są mianownikiem odpowiednich składników Vector3int16 i liczbą (dzielnikiem).Wyniki podziału są zaokrąglane w kierunku zera.Bądź świadomy granic związanych z podpisanymi 16-bitowymi liczbami, opisanymi wcześniej.