voronoin

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

Описание

пример

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

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

Примеры

свернуть все

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

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]}

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

свернуть все

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

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

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

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

свернуть все

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

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

Подробнее о

свернуть все

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

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

Совет

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

Алгоритмы

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

Ссылки

[1] Barber, C. B., D.P. Dobkin, and H.T. Huhdanpaa, «The Quickhull Algorithm for Convex Hulls», ACM Transactions on Mathematical Software, Vol. 22, no. 4, DEcec. 1996, p.

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

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