Преобразование полигональной области в контурные грани и вершины
[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