Difference between revisions of "Vector/pl"
< Vector
Jump to navigation
Jump to search
(New page: {{Multi-lang}} {{LSL Header/pl}} ==Vector== Vector (wektor) jest typem danych, który zawiera uporządkowany zbiór trzech wartości typu [[LSL_float/pl|rzeczyw...) |
|||
(One intermediate revision by the same user not shown) | |||
Line 19: | Line 19: | ||
===Przykład=== | ===Przykład=== | ||
< | <lsl> | ||
vector test=<1.0, 2.0, 3.0>; | default | ||
{ | |||
touch_start(integer num) | |||
{ | |||
vector test=<1.0, 2.0, 3.0>; | |||
llOwnerSay((string)test.z); // Wypisuje 3.0 | llOwnerSay((string)test.z); // Wypisuje 3.0 | ||
</ | llOwnerSay((string)test.y); // Wypisuje 2.0 | ||
llOwnerSay((string)test.x); // Wypisuje 1.0 | |||
} | |||
} | |||
</lsl> | |||
===Przykład drugi=== | |||
<lsl> | |||
vector minusvector=<0,0,0.2>; | |||
vector plusvector=<0,0,0.2>; | |||
default | |||
{ | |||
touch_start(integer num_detected) //Gdy nacisnie na obiekt | |||
{ | |||
llSetPos(llGetPos() + plusvector); // To zbierz pozycje i dodaj wektor | |||
} | |||
touch_end(integer num_detect) //Gdy puszcze obiekt | |||
{ | |||
llSetPos(llGetPos() - minusvector); // To zbierz nowa pozycje i odejmij wektor | |||
} | |||
} | |||
</lsl> |
Latest revision as of 09:33, 30 April 2012
LSL Portal | | | Funkcje | | | Zdarzenia | | | Typy | | | Stałe | | | Potoki | | | Biblioteka Skryptów | | | Tutoriale |
Vector
Vector (wektor) jest typem danych, który zawiera uporządkowany zbiór trzech wartości typu rzeczywistego. Każdy element tego zbioru może być adresowany oddzielnie, poprzez dodanie przyrostka .x, .y lub .z do nazwy zmiennej.
Wektory mogą być użyte do przechowania następujących wartości:
- Pozycji: x, y i z są wyrażone w metrach.
- Prędkość: x, y i z przedstawiają składowe prędkości.
- kolor: Czerwony to x, Zielony to y, a Niebieski to z.
Na wektorach można wykonywać następujące działania:
- Dodawanie, operator "+"
- Odejmowanie, operator "-"
- Mnożenie (iloczyn skalarny), operator "*"
- Iloczyn kartezjański, operator "%"
Żeby obrócić wektor, można go pomnożyć lub podzielić przez kwaternion.
Przykład
<lsl> default {
touch_start(integer num) { vector test=<1.0, 2.0, 3.0>;
llOwnerSay((string)test.z); // Wypisuje 3.0 llOwnerSay((string)test.y); // Wypisuje 2.0 llOwnerSay((string)test.x); // Wypisuje 1.0
}
} </lsl>
Przykład drugi
<lsl> vector minusvector=<0,0,0.2>; vector plusvector=<0,0,0.2>; default {
touch_start(integer num_detected) //Gdy nacisnie na obiekt { llSetPos(llGetPos() + plusvector); // To zbierz pozycje i dodaj wektor } touch_end(integer num_detect) //Gdy puszcze obiekt { llSetPos(llGetPos() - minusvector); // To zbierz nowa pozycje i odejmij wektor
} } </lsl>