poly2fv

Преобразуйте многоугольную область, чтобы исправить поверхности и вершины

Синтаксис

[F,V] = poly2fv(x,y)

Описание

[F,V] = poly2fv(x,y) преобразовывает многоугольную область, представленную контурами (x,y) в матрицу поверхностей, F, и матрицу вершин, V, который может использоваться с функцией patch, чтобы отобразить область. Если полигон, представленный x и y, имеет несколько частей, или NaN - разделенный векторный формат или формат массива ячеек могут использоваться. Функция poly2fv создает треугольные поверхности.

Большинство функций Mapping Toolbox™ соответствует соглашению, что контуры человека с упорядоченными по часовой стрелке вершинами являются внешними контурами, и отдельные контуры с упорядоченными против часовой стрелки вершинами являются внутренними контурами. Несмотря на то, что функция poly2fv игнорирует порядок вершины, необходимо следовать соглашению при создании контуров, чтобы гарантировать непротиворечивость другими функциями.

Примеры

Отобразите прямоугольную область с двумя дырами с помощью одного объекта закрашенной фигуры.

% External contour, rectangle.
x1 = [0 0 6 6 0];
y1 = [0 3 3 0 0];

% First hole contour, square.
x2 = [1 2 2 1 1];
y2 = [1 1 2 2 1];

% Second hole contour, triangle.
x3 = [4 5 4 4];
y3 = [1 1 2 1];

% Compute face and vertex matrices.
[f, v] = poly2fv({x1, x2, x3}, {y1, y2, y3});

% Display the patch.
patch('Faces', f, 'Vertices', v, 'FaceColor', 'r', ...
 'EdgeColor', 'none');
axis off, axis equal

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

ispolycw, patch, poly2cw, poly2ccw, polyshape

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