voronoin

Диаграмма Вороного N-D

Описание

пример

[v,c] = voronoin(P) возвращает вершины Voronoi v и ячейки Voronoi c из Диаграммы Вороного для N-D указывает в матричном P.

[v,c] = voronoin(P,opts) также указывает, что опции Qhull использовались для расчета Диаграммы Вороного.

Примеры

свернуть все

Создайте матрицу 2D точек и вычислите вершины Voronoi и схематически изобразите ячейки.

P = [0.5 0; 0 0.5; -0.5 -0.5; -0.2 -0.1; -0.1 0.1; 0.1 -0.1; 0.1 0.1]
P = 7×2

    0.5000         0
         0    0.5000
   -0.5000   -0.5000
   -0.2000   -0.1000
   -0.1000    0.1000
    0.1000   -0.1000
    0.1000    0.1000

[v,c] = voronoin(P)
v = 10×2

       Inf       Inf
    0.7000   -1.6500
   -0.0500   -0.0500
   -0.0500   -0.5250
   -1.4500    0.6500
   -1.7500    0.7500
         0    0.2875
    0.3833    0.3833
    0.2875         0
         0         0

c=7×1 cell array
    {[   9 2 1 8]}
    {[ 8 1 6 5 7]}
    {[   6 1 2 4]}
    {[   6 4 3 5]}
    {[  10 3 5 7]}
    {[10 3 4 2 9]}
    {[  10 7 8 9]}

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

свернуть все

Точки в виде матрицы, столбцы которой содержат координаты для соответствующей размерности. Например, чтобы задать набор 2D точек, поместите, x - координирует в первом столбце P и соответствующий y - координирует во втором столбце.

Опции Qhull в виде массива ячеек из символьных векторов, указывающего, который алгоритмы Qhull использовать. Для списка опций см. https://www.qhull.org/html/qh-optq.htm.

По умолчанию, opts установлен в {'Qbb'} для 2-и 3-мерный вход. Для 4-мерного входа и выше, opts установлен в {'Qbb','Qx'}.

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

свернуть все

Вершины Voronoi, возвращенные как матрица с одинаковым числом столбцов как вход. Каждая строка содержит координаты точки N-D в Диаграмме Вороного с первой строкой, содержащей Inf значения. Строка Inf значения представляют неограниченную ячейку.

Индексы, возвращенные как массив ячеек. Каждый элемент c содержит индексы строки вершин Voronoi v это составляет ячейку Voronoi.

Больше о

свернуть все

Диаграмма Вороного

Учитывая точку в наборе компланарных точек, можно провести границу вокруг этого, которая включает все точки ближе в него, чем к любой другой точке в наборе. Этот контур задает один многоугольник Voronoi. Набор всех многоугольников Voronoi для каждой точки в наборе называется Диаграммой Вороного.

Советы

  • Можно построить ограниченные ячейки индивидуума Диаграммы Вороного N-D. Для этого используйте convhulln функция, чтобы вычислить вершины фасетов, которые составляют ячейку Voronoi. Затем используйте patch или другие функции построения графика, чтобы сгенерировать фигуру.

Алгоритмы

voronoin основан на Qhull [1]. Для получения информации см. https://www.qhull.org/.

Ссылки

[1] Стригите, C. B. Д.П. Добкин и Х.Т. Хухдэнпэа, “Алгоритм Quickhull для Выпуклых оболочек”, Транзакции ACM на Mathematical Software, Издании 22, № 4, декабрь 1996, p. 469-483.

Расширенные возможности

Смотрите также

| | | | |

Представлено до R2006a