Javascript Clipper 中路径输入的格式

Format of the Path input in the Javascript Clipper

我正在使用名为 Javascript Clipper 的 JS 库进行多边形操作。正如手册所述,输入路径的坐标格式如下,

var paths = [[{X:30,Y:30},{X:130,Y:30},{X:130,Y:130},{X:30,Y:130}],
                 [{X:60,Y:60},{X:60,Y:100},{X:100,Y:100},{X:100,Y:60}]];

我的问题是,如何转换一个普通的 JS 数组,比方说 var x = [40, 100, 1, 5, 25, 10]var y= [22, 32, 11, 45, 75, 19] 到上面显示的所需格式?实际情况是,这些坐标点不是手动输入的,而是从另一个函数中获取的,该函数的输出不是Javascript Clipper Library要求的格式。

像这样:

function makePath(xVals, yVals) {
    var pathArray = [];
    xVals.forEach(function(xVal, index) {
        var yVal = yVals[index];
        var coordObj = {xVal, yVal};
        pathArray.push(coordObj);
    })
    return pathArray;
}

您可以将数组 x 和 y 作为 makePath(x,y) 传递给它以得到组合数组。

我的方法假定数组 x 和 y 的长度相同。