convhulln

Выпуклая оболочка N-D

Синтаксис

K = convhulln (X)
K = convhulln (X, опции)
[K, v] = convhulln (...)

Описание

K = convhulln(X) возвращает индексы K точек в X, которые составляют фасеты выпуклой оболочки X. Если X содержит 2D координаты или 3-D координаты, то фасеты формируют треугольники или tetrahedra, соответственно. В целом X может быть m-by-n массив, представляющий точки m в n - размерный пробел. Если выпуклая оболочка имеет фасеты p затем, K имеет размер p-by-n.

convhulln использует Qhull.

K = convhulln(X,options) задает массив ячеек опций Qhull. Опции по умолчанию:

  • {'Qt'} для 2-, 3-. и 4-мерный входной параметр

  • {'Qt','Qx'} для 5-мерного входного параметра и выше.

Если options является [], опции по умолчанию используются. Для получения дополнительной информации о Qhull и его опциях, смотрите http://www.qhull.org/.

[K,v] = convhulln(...) также возвращает объем v выпуклой оболочки.

Визуализация

Графическое изображение вывода convhulln зависит от значения n:

  • Для n = 2 используйте plot, как вы были бы для convhull.

  • Для n = 3 можно использовать trisurf, чтобы построить график вывода. Вызывающая последовательность

    K = convhulln(X);
    trisurf(K,X(:,1),X(:,2),X(:,3))
  • Вы не можете построить график convhulln вывод для n > 3.

Примеры

Следующий пример иллюстрирует входной параметр options для convhulln. Следующие команды

X = [0 0; 0 1e-10; 0 0; 1 1];
K = convhulln(X)

возвратите предупреждение.

Warning: qhull precision warning: 
The initial hull is narrow 
(cosine of min. angle is 0.9999999999999998).
A coplanar point may lead to a wide facet. 
Options 'QbB' (scale to unit box) or 'Qbb' 
(scale last coordinate) may remove this warning. 
Use 'Pp' to skip this warning.

Чтобы подавить предупреждение, используйте опцию 'Pp'. Следующая команда передает опцию 'Pp', наряду с 'Qt' по умолчанию, к convhulln.

K = convhulln(X,{'Qt','Pp'})

K =

     1     4
     1     2
     4     2

Алгоритмы

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

Ссылки

[1] Стригите, К. B. D. P. Добкин и H.T. Huhdanpaa, “Алгоритм Quickhull для Выпуклых оболочек”, Транзакции ACM на Математическом программном обеспечении, Издании 22, № 4, декабрь 1996, p. 469-483.

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

Была ли эта тема полезной?