Move the sources to trunk
[opencv] / interfaces / matlab / toolbox / opencv / cvapproxpoly.m
1 function varargout = cvapproxpoly(varargin)\r
2 %CVAPPROXPOLY        Approximate poligonal curve.\r
3 %   SEQARRAY dst = cvApproxPoly(SEQARRAY contours, first, method,\r
4 %     parameter, recursive);\r
5 %   contours      - struct array of contours\r
6 %   first         - number in struct array 'contours' of start contour\r
7 %   method:\r
8 %     'dp'        - Douglas-Peucker method\r
9 %   parameter     - desired accuracy\r
10 %   recursive     - {0} | 1\r
11 \r
12 if nargin < 4 | nargin > 5\r
13     error 'Invalid number of parameters';\r
14     return;\r
15 end\r
16 \r
17 if ~ischar(varargin{3})\r
18     error 'Invalid parameter ''method''';\r
19     return;\r
20 end;\r
21 method_t = {'dp'};\r
22 method_i = [0];\r
23 idx = strmatch(varargin{3}, method_t, 'exact');\r
24 if isempty(idx)\r
25     error 'Invalid parameter ''method''';\r
26     return;\r
27 end\r
28 varargin{3} = method_i(idx(1));\r
29 \r
30 if nargin < 5 \r
31     % default\r
32     varargin{5} = 0;\r
33 end % recursive\r
34 \r
35 if nargout > 0\r
36     [varargout{1:nargout}] = feval('cvwrap', 'ApproxPoly', varargin{:});\r
37 else\r
38     feval('cvwrap', 'ApproxPoly', varargin{:});\r
39 end\r
40 return;