Матричная лаборатория MatLab

         

Нахождение выпуклой оболочки

В системе MATLAB определена функция вычисления точек выпуклой оболочки:



  • convhull (х,у) — возвращает индексы тех точек, задаваемых векторами х и у, которые лежат на выпуклой оболочке;
  • convhull(x,y,TRI) — использует триангуляцию, полученную в результате применения функции триангуляции Делоне del aunay, вместо того чтобы вычислять ее самостоятельно. Пример:
» хх=-0.8:0.03:0.8;

» уу = abs(sqrt(xx));

» [х,у] = pol2cart(xx,yy);

» k = convhuTI(x,y);

» plot(x(k),y(k).'r:',x,y,'g*')

Рис. 17.2. Пример использования функции convhull

Рис. 17.2 иллюстрирует применение функции convhull для построения выпуклой оболочки. Функция convhulln вычисляет n-мерную выпуклую поверхность, основана на алгоритме qhull.

 

Содержание раздела