在Java中,如何声明矩阵(正确)?如何将矩阵传递给期望向量的函数?

时间:2014-09-24 08:00:55

标签: java android matrix parameters

我在Java和Android API中做我的babysteps。目前,我仍然坚持使用SensorManager.getRotationMatrix检索平台方向矩阵,因为我的数据为float[][],而函数需要float[]

float [] [] R, I = // { { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } } ;
        new float [3] [3];
float [] gravity, geomagnetic = new float [3];

manager.getRotationMatrix( R, I, gravity, geomagnetic );

同样,同一个班级void getRotationMatrixFromVector (float[] R, float[] rotationVector)的另一种方法再次期望float[],而R显然应该是float[][]。我是否会错过一些技巧,允许在没有向矩阵展开向量的情况下使用?请指教。

1 个答案:

答案 0 :(得分:0)

如果要展平2d数组,则可以迭代它并将其添加到ArrayList。然后,您可以使用toArray()ArrayList获取数组。

其他选项是将2d数组中的行数和列数相乘以查找元素数,然后迭代2d数组以填充1d数组中的数据。