# User:Ugleh Ulrik/Vector2List

With many requests on how to easily store a vector to a list, mainly for purposes in storing a llGetPos() only to capture the x and y cords, this is a simple way.

For Example <lsl>list thislist = Vector2List(llGetPos());</lsl> As a list, would output <lsl>list thislist = [x, y, z];</lsl>

Function <lsl>list Vector2List(vector v){

```   return [v.x, v.y, v.z];
```

}</lsl>

Do Not Do This <lsl> list Vector2List(vector v){

```   return [v.x, v.y, v.z];
```

}

default {

```   touch_start(integer total_number)
{
vector pos = llGetPos();
list thislist =  Vector2List(pos);
```
```       string x = llList2String(thislist,0);
string y = llList2String(thislist,1);
string z = llList2String(thislist,2);
llOwnerSay("X Axis: " + x);
llOwnerSay("Y Axis: " + y);
llOwnerSay("Z Axis: " + z);
}
```

} </lsl>

Here is the correct way to do this

<lsl> default {

```   touch_start(integer total_number)
{
vector pos = llGetPos();
llOwnerSay("X Axis: " + ((string)pos.x));
llOwnerSay("Y Axis: " + ((string)pos.y));
llOwnerSay("Z Axis: " + ((string)pos.z));
}
```

} </lsl>

### A Good Example

<lsl> list Vector2List(vector v){

```   return [v.x, v.y, v.z];
```

}

default {

```   touch_start(integer total_number)
{
list size = Vector2List(llGetScale());
list sorted_size = llListSort(size, 1, 0);
llOwnerSay("<"+llList2CSV(sorted_size)+">");
}
```

} </lsl>