0
|
1 function [C,h] = prompt_bezier(s,varargin)
|
|
2 default_arg('s',[])
|
|
3 if ~isempty(s)
|
|
4 fprintf(s,varargin{:});
|
|
5 end
|
|
6
|
|
7 fprintf('# Draw bezier curve\n')
|
|
8 a = draw.prompt_point('Enter starting point\n');
|
|
9 p = draw.point(a);
|
|
10 p.Color = Color.green;
|
|
11 p.MarkerSize = 24;
|
|
12 b = draw.prompt_point('Enter stopping point\n');
|
|
13 p = draw.point(b);
|
|
14 p.Color = Color.red;
|
|
15 p.MarkerSize = 24;
|
|
16 c1 = draw.prompt_point('Enter control point 1\n');
|
|
17 p = draw.point(c1);
|
|
18 p.Color = Color.yellow;
|
|
19 p.MarkerSize = 16;
|
|
20 c2 = draw.prompt_point('Enter control point 2\n');
|
|
21 p = draw.point(c2);
|
|
22 p.Color = Color.yellow;
|
|
23 p.MarkerSize = 16;
|
|
24
|
|
25 C = grid.Curve.bezier(a,c1,c2,b);
|
|
26 fprintf('C = grid.Curve.bezier([%.3g; %.3g],[%.3g; %.3g],[%.3g; %.3g],[%.3g; %.3g]);\n',a,c1,c2,b)
|
|
27 h = C.plot();
|
|
28 uistack(h,'bottom');
|
|
29
|
|
30 end |