将负多边形转换为正坐标 - Javascript
Convert negative polygons to positive coordinates - Javascript
我想让我的分数 (x, y) 始终为正值。
我有一个包含这些值的数组:
(points) [-916, 214, 10, 214, 10, 362, 200, 362, 200, 764, -916, 764]
X Y X Y X Y X Y X Y X Y
是否有算法可以将这些点移动到它们的原点,使坐标始终保持正值?
您可以先获取 x
和 y
的最小值,然后使用更正映射一个新数组。
Minimum values
[-916, 0]
Conversion
[-916, 214, 10, 214, 10, 362, 200, 362, 200, 764, -916, 764] original
[ 0, 214, 926, 214, 926, 362, 1116, 362, 1116, 764, 0, 764] updated
var data = [-916, 214, 10, 214, 10, 362, 200, 362, 200, 764, -916, 764];
min = [0, 0];
data.forEach(function (v, i) {
if (v < min[i % 2]) {
min[i % 2] = v;
}
});
console.log(min);
console.log(data.map(function (v, i) {
return v - min[i % 2];
}));
.as-console-wrapper { max-height: 100% !important; top: 0; }
我想让我的分数 (x, y) 始终为正值。
我有一个包含这些值的数组:
(points) [-916, 214, 10, 214, 10, 362, 200, 362, 200, 764, -916, 764]
X Y X Y X Y X Y X Y X Y
是否有算法可以将这些点移动到它们的原点,使坐标始终保持正值?
您可以先获取 x
和 y
的最小值,然后使用更正映射一个新数组。
Minimum values
[-916, 0]
Conversion
[-916, 214, 10, 214, 10, 362, 200, 362, 200, 764, -916, 764] original [ 0, 214, 926, 214, 926, 362, 1116, 362, 1116, 764, 0, 764] updated
var data = [-916, 214, 10, 214, 10, 362, 200, 362, 200, 764, -916, 764];
min = [0, 0];
data.forEach(function (v, i) {
if (v < min[i % 2]) {
min[i % 2] = v;
}
});
console.log(min);
console.log(data.map(function (v, i) {
return v - min[i % 2];
}));
.as-console-wrapper { max-height: 100% !important; top: 0; }