nearestvertex

Запрос по ближайшему polyshape вершина

Описание

пример

[vertexid,boundaryid,ind] = nearestvertex(polyin,x,y) находит вершину скаляра polyshape объект, ближайший к каждой 2-D точке запроса. Координаты точек запроса указаны в x и y. Выход содержит три вектора:

  • vertexid содержит номер строки в polyin.Vertices соответствует ближайшей вершине для каждой точки запроса.

  • boundaryid содержит краевой индекс polyin соответствует ближайшей вершине для каждой точки запроса.

  • ind содержит ближайший индекс вершины в контуре boundaryid для каждой точки запроса.

[vertexid,boundaryid,ind] = nearestvertex(polyin,P) задает точки запроса как матрицу с 2 столбцами P чей первый столбец содержит x -cordinates, а чей второй столбец содержит соответствующие y -cordinates.

Примеры

свернуть все

Создайте polyshape объект и вычислить ближайшую вершину polyshape к точке запроса (2,1,8).

P = [1 1; 3 1; 2 2];
polyin = polyshape(P);
[vertexid,boundaryid,ind] = nearestvertex(polyin,2,1.8);

Постройте график polyshape и точка запроса в черном цвете.

plot(polyin)
hold on
plot(2,2.5,'k*')

Теперь постройте график ближайшей вершины красного цвета. The vertexid значение позволяет вам индексу в строку polyin.Vertices соответствует ближайшей вершине, обращаясь к ее координатам.

plot(polyin.Vertices(vertexid,1),polyin.Vertices(vertexid,2),'r*')
hold off

Figure contains an axes. The axes contains 3 objects of type polygon, line.

Входные параметры

свернуть все

Входные polyshape, заданный как скаляр polyshape объект.

Входные координаты 2-D точек запроса, заданные как скаляры или векторы. x и y должна иметь одинаковую длину.

Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Входные вершины 2-D точек запроса, заданные как матрица с 2 столбцами. Первый столбец P содержит x -cordinates, а второй столбец содержит соответствующие y -cordinates.

Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Выходные аргументы

свернуть все

Идентификатор вершины, возвращенный как скаляр или вектор. vertexid содержит номер строки в входе polyshape соответствует ближайшей вершине для каждой точки запроса. vertexid - та же длина, что и векторы точек запроса или массив.

Типы данных: double

Идентификатор границы, возвращенный как скаляр или вектор. boundaryid содержит краевой индекс входа polyshape соответствует ближайшей вершине для каждой точки запроса. boundaryid - та же длина, что и векторы точек запроса или массив.

Типы данных: double

Индекс, возвращенный в виде скаляра или вектора. ind содержит ближайший индекс вершины в контуре boundaryid для каждой точки запроса.

Типы данных: double

См. также

| | |

Введенный в R2018a