Skip to main content
Inspiring
March 10, 2014
Question

Convert multidimentional Array in Vector in AS3

  • March 10, 2014
  • 1 reply
  • 507 views

Hello,

I tried to convert multidimentional Array in Vector in AS3, but does not work!

var numbers:Array = [[[1, 2, 3]], [[4, 5, 6]]];

var nums:Vector.<Vector.<Vector.<Number>>> = Vector.<Vector.<Vector.<Number>>>(numbers);

trace(nums[0][0][0]);

Thanks.

This topic has been closed for replies.

1 reply

Inspiring
March 10, 2014

var numbers:Array = [[[1, 2, 3]], [[4, 5, 6]]];

var numbersV:Vector.<Array> = Vector.<Array>(numbers);

trace(numbers[0][0][0]);

trace(numbersV[0][0][0]);

Inspiring
March 11, 2014

I think you'll need to do a loop:

function convertToVector(numbers:Array):Vector.<Vector.<Vector.<Number>>> {

          var vector:Vector.<Vector.<Vector.<Number>>> = new Vector.<Vector.<Vector.<Number>>>();

          for(var i:int = 0; i < numbers.length; i++){

                    vector = new Vector.<Vector.<Number>>();

                    for(var ii:int = 0; ii < numbers.length; ii++){

                              vector[ii] = new Vector.<Number>();

                              for(var iii:int = 0; iii < numbers[ii].length; iii++){

                                        vector[ii][iii] = numbers[ii][iii];

                              }

                    }

          }

          return vector;

}

Also, in case it's helpful, you can declare vectors with values:

var vector:Vector.<Vector.<Vector.<Number>>> = new <Vector.<Vector.<Number>>>[

          new <Vector.<Number>>[

                    new <Number>[1, 2, 3]

          ],

          new <Vector.<Number>>[

                    new <Number>[4, 5, 6]

          ]

]

Cheers.

-Aaron