Я получил массив координат в следующей схеме (х, у): array = [[1,2],[1,5],[1,1],[2,2],[2,5],[2,1]]
алгоритм генерации сетки точек
Я хотел бы сделать некоторый процесс для достижения эффекта:
array1 = [[[1,2],[1,5],[1,1]],[[2,2],[2,5],[2,1]]]; array2 = [[[2,2],[2,5],[2,1]]]
и
array1a = [[[1,2],[2,2]]]; array2a = [[[1,5],[2,5]]]; array3a=[[[1,1],[2,1]]]
другими словами, я хотел бы получить координаты всех параллельных и перпендикулярных линий. я придумал две двойные петли (одна по х, а другой по у), но может быть, есть еще один быстрее (лучше) способ
- псевдокод:
for (var i = 0; i < length; i++) { for (var j = 0; j < length2; j++) { var x = points[i][j][0]; var y = points[i][j][1]; }; }; for (var i = 0; i < length2; i++) { for (var j = 0; j < length; j++) { var x = points[i][j][0] ; var y = points[i][j][1] ; }; };
EDIT
ОК, вот ситуация:
Я получил этот вид прямоугольника, у меня есть координаты точек (красная метка), как массив:
array = [[1,2],[1,5],[1,1],[2,2],[2,5],[2,1]]
, и я хочу сделать antoher массива, который будет выглядеть следующим образом:
array1 = [[[1,2],[1,5],[1,1]],[[2,2],[2,5],[2,1]]]
в массиве выше есть координаты точек то один из containts зеленой линии. Эти линии параллельны или перпендикулярны к сторонам прямоугольника.
Я вижу, что это 2D-координаты, но где же находятся «линии»? И что они делают для циклов, за исключением того, что вы извлекаете последнюю точку в последнем массиве очень неэффективно? – Thomas
@Thomas во всех подмассивах (например, '[[1,2], [1,5], [1,1]]') являются координатами линий, которые являются параллелями или нормали к минимальным и максимальным координатам всего этого набора данных , Я рассматриваю только двумерную плоскость, и позже я использую эти подмассивы в качестве аргумента функции, которая рисует их. – Krystian
почему downvote без комментариев ?! – Krystian