Difference between revisions of "Vector/pl"

From Second Life Wiki
Jump to navigation Jump to search
 
Line 29: Line 29:
llOwnerSay((string)test.x); // Wypisuje 1.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>
</lsl>

Latest revision as of 10:33, 30 April 2012

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>