Java 将2D数组参数传递给JACOB

Java 将2D数组参数传递给JACOB,java,com,jacob,falconview,Java,Com,Jacob,Falconview,我尝试调用一个COM方法,其中有一个'object'类型的参数,它必须是一个2D双安全数组,一个lat/long点的集合。如何在JACOB中创建SafeArray以通过COM接口发送 我已经尝试将2D数组作为对象列表中的对象传递。该方法不会返回错误,但我在FalconView(多边形渲染)中看不到预期的结果 第二份文件: lat_-lon_阵列 一个二维双精度阵列。第一个维度包含纬度值。第二个维度包含经度值似乎SafeArray使用一些不太清楚的构造函数支持一维、二维和N维数组。鉴于我在上面创建

我尝试调用一个COM方法,其中有一个'object'类型的参数,它必须是一个2D双安全数组,一个lat/long点的集合。如何在JACOB中创建SafeArray以通过COM接口发送

我已经尝试将2D数组作为对象列表中的对象传递。该方法不会返回错误,但我在FalconView(多边形渲染)中看不到预期的结果

第二份文件:

lat_-lon_阵列
一个二维双精度阵列。第一个维度包含纬度值。第二个维度包含经度值

似乎SafeArray使用一些不太清楚的构造函数支持一维、二维和N维数组。鉴于我在上面创建的2D双安全阵列,我能够将数据复制到2D双安全阵列中。当然,预先创建double[][]会更有效,但我正在一些原型代码中这样做。可能有办法将整个阵列复制到安全阵列中。。。我不确定

// 2D array of type double. First dimension size 5, second dimemnsion size 2.
SafeArray safeArray = new SafeArray(Variant.VariantDouble, 5, 2);
for(int i = 0; i < 5; i++) {
    for (int j = 0; j < 2; j++) {
            // set the value of safearray[i][j] to value polyPoints[i][j]
        safeArray.setDouble(i, j, polyPoints[i][j]);
    }
}
//类型为double的2D数组。第一个尺寸为5,第二个尺寸为2。
SafeArray SafeArray=新的SafeArray(Variant.VariantDouble,5,2);
对于(int i=0;i<5;i++){
对于(int j=0;j<2;j++){
//将safearray[i][j]的值设置为多点[i][j]
setDouble(i,j,多点[i][j]);
}
}
// 2D array of type double. First dimension size 5, second dimemnsion size 2.
SafeArray safeArray = new SafeArray(Variant.VariantDouble, 5, 2);
for(int i = 0; i < 5; i++) {
    for (int j = 0; j < 2; j++) {
            // set the value of safearray[i][j] to value polyPoints[i][j]
        safeArray.setDouble(i, j, polyPoints[i][j]);
    }
}