annotate extra/nurbs/inst/nrbcoons.m @ 12667:1411b4cf3c81 octave-forge

Check that the curves formed a closed surface
author rafavzqz
date Tue, 28 Jul 2015 10:24:42 +0000
parents 37d08939bb7b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5552
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
1 function srf = nrbcoons(u1, u2, v1, v2)
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
2 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
3 % NRBCOONS: Construction of a Coons patch.
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
4 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
5 % Calling Sequence:
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
6 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
7 % srf = nrbcoons(ucrv1, ucrv2, vcrv1, vcrv2)
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
8 %
6910
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
9 % INPUT:
5552
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
10 %
6958
23ff23c91d06 Slight modifications in the help
rafavzqz
parents: 6910
diff changeset
11 % ucrv1 : NURBS curve defining the bottom U direction boundary of
5552
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
12 % the constructed NURBS surface.
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
13 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
14 % ucrv2 : NURBS curve defining the top U direction boundary of
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
15 % the constructed NURBS surface.
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
16 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
17 % vcrv1 : NURBS curve defining the bottom V direction boundary of
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
18 % the constructed NURBS surface.
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
19 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
20 % vcrv2 : NURBS curve defining the top V direction boundary of
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
21 % the constructed NURBS surface.
6910
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
22 %
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
23 % OUTPUT:
5552
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
24 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
25 % srf : Coons NURBS surface patch.
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
26 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
27 % Description:
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
28 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
29 % Construction of a bilinearly blended Coons surface patch from four NURBS
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
30 % curves that define the boundary.
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
31 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
32 % The orientation of the four NURBS boundary curves.
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
33 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
34 % ^ V direction
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
35 % |
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
36 % | ucrv2
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
37 % ------->--------
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
38 % | |
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
39 % | |
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
40 % vcrv1 ^ Surface ^ vcrv2
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
41 % | |
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
42 % | |
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
43 % ------->-----------> U direction
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
44 % ucrv1
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
45 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
46 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
47 % Examples:
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
48 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
49 % // Define four NURBS curves and construct a Coons surface patch.
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
50 % pnts = [ 0.0 3.0 4.5 6.5 8.0 10.0;
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
51 % 0.0 0.0 0.0 0.0 0.0 0.0;
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
52 % 2.0 2.0 7.0 4.0 7.0 9.0];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
53 % crv1 = nrbmak(pnts, [0 0 0 1/3 0.5 2/3 1 1 1]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
54 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
55 % pnts= [ 0.0 3.0 5.0 8.0 10.0;
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
56 % 10.0 10.0 10.0 10.0 10.0;
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
57 % 3.0 5.0 8.0 6.0 10.0];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
58 % crv2 = nrbmak(pnts, [0 0 0 1/3 2/3 1 1 1]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
59 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
60 % pnts= [ 0.0 0.0 0.0 0.0;
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
61 % 0.0 3.0 8.0 10.0;
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
62 % 2.0 0.0 5.0 3.0];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
63 % crv3 = nrbmak(pnts, [0 0 0 0.5 1 1 1]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
64 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
65 % pnts= [ 10.0 10.0 10.0 10.0 10.0;
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
66 % 0.0 3.0 5.0 8.0 10.0;
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
67 % 9.0 7.0 7.0 10.0 10.0];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
68 % crv4 = nrbmak(pnts, [0 0 0 0.25 0.75 1 1 1]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
69 %
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
70 % srf = nrbcoons(crv1, crv2, crv3, crv4);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
71 % nrbplot(srf,[20 20],220,45);
6910
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
72 %
7919
27876b20006b Spink's version of nrbcoons, the bug was in nrb4surf
rafavzqz
parents: 6958
diff changeset
73 % Copyright (C) 2000 Mark Spink
6910
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
74 %
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
75 % This program is free software: you can redistribute it and/or modify
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
76 % it under the terms of the GNU General Public License as published by
11634
37d08939bb7b apply changes requested by David
cdf
parents: 7919
diff changeset
77 % the Free Software Foundation, either version 3 of the License, or
6910
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
78 % (at your option) any later version.
5552
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
79
6910
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
80 % This program is distributed in the hope that it will be useful,
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
81 % but WITHOUT ANY WARRANTY; without even the implied warranty of
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
82 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
83 % GNU General Public License for more details.
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
84 %
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
85 % You should have received a copy of the GNU General Public License
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
86 % along with this program. If not, see <http://www.gnu.org/licenses/>.
5552
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
87
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
88 if nargin ~= 4
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
89 error('Incorrect number of input arguments');
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
90 end
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
91
12667
1411b4cf3c81 Check that the curves formed a closed surface
rafavzqz
parents: 11634
diff changeset
92 if (max (abs (nrbeval (u1, u1.knots(1)) - nrbeval (v1, v1.knots(1)))) > 1e-10 || ...
1411b4cf3c81 Check that the curves formed a closed surface
rafavzqz
parents: 11634
diff changeset
93 max (abs (nrbeval (u1, u1.knots(end)) - nrbeval (v2, v2.knots(1)))) > 1e-10 || ...
1411b4cf3c81 Check that the curves formed a closed surface
rafavzqz
parents: 11634
diff changeset
94 max (abs (nrbeval (u2, u2.knots(1)) - nrbeval (v1, v1.knots(end)))) > 1e-10 || ...
1411b4cf3c81 Check that the curves formed a closed surface
rafavzqz
parents: 11634
diff changeset
95 max (abs (nrbeval (u2, u2.knots(end)) - nrbeval (v2, v2.knots(end)))) > 1e-10)
1411b4cf3c81 Check that the curves formed a closed surface
rafavzqz
parents: 11634
diff changeset
96 error ('The four curves do not define a closed boundary')
1411b4cf3c81 Check that the curves formed a closed surface
rafavzqz
parents: 11634
diff changeset
97 end
1411b4cf3c81 Check that the curves formed a closed surface
rafavzqz
parents: 11634
diff changeset
98
1411b4cf3c81 Check that the curves formed a closed surface
rafavzqz
parents: 11634
diff changeset
99
1411b4cf3c81 Check that the curves formed a closed surface
rafavzqz
parents: 11634
diff changeset
100
5552
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
101 r1 = nrbruled(u1, u2);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
102 r2 = nrbtransp(nrbruled(v1, v2));
7919
27876b20006b Spink's version of nrbcoons, the bug was in nrb4surf
rafavzqz
parents: 6958
diff changeset
103 t = nrb4surf(u1.coefs(:,1), u1.coefs(:,end), u2.coefs(:,1), u2.coefs(:,end));
5552
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
104
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
105 % raise all surfaces to a common degree
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
106 du = max([r1.order(1), r2.order(1), t.order(1)]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
107 dv = max([r1.order(2), r2.order(2), t.order(2)]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
108 r1 = nrbdegelev(r1, [du - r1.order(1), dv - r1.order(2)]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
109 r2 = nrbdegelev(r2, [du - r2.order(1), dv - r2.order(2)]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
110 t = nrbdegelev(t, [du - t.order(1), dv - t.order(2)]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
111
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
112 % merge the knot vectors, to obtain a common knot vector
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
113
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
114 % U knots
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
115 k1 = r1.knots{1};
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
116 k2 = r2.knots{1};
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
117 k3 = t.knots{1};
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
118 k = unique([k1 k2 k3]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
119 n = length(k);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
120 kua = [];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
121 kub = [];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
122 kuc = [];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
123 for i = 1:n
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
124 i1 = length(find(k1 == k(i)));
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
125 i2 = length(find(k2 == k(i)));
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
126 i3 = length(find(k3 == k(i)));
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
127 m = max([i1, i2, i3]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
128 kua = [kua k(i)*ones(1,m-i1)];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
129 kub = [kub k(i)*ones(1,m-i2)];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
130 kuc = [kuc k(i)*ones(1,m-i3)];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
131 end
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
132
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
133 % V knots
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
134 k1 = r1.knots{2};
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
135 k2 = r2.knots{2};
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
136 k3 = t.knots{2};
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
137 k = unique([k1 k2 k3]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
138 n = length(k);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
139 kva = [];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
140 kvb = [];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
141 kvc = [];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
142 for i = 1:n
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
143 i1 = length(find(k1 == k(i)));
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
144 i2 = length(find(k2 == k(i)));
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
145 i3 = length(find(k3 == k(i)));
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
146 m = max([i1, i2, i3]);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
147 kva = [kva k(i)*ones(1,m-i1)];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
148 kvb = [kvb k(i)*ones(1,m-i2)];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
149 kvc = [kvc k(i)*ones(1,m-i3)];
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
150 end
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
151
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
152 r1 = nrbkntins(r1, {kua, kva});
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
153 r2 = nrbkntins(r2, {kub, kvb});
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
154 t = nrbkntins(t, {kuc, kvc});
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
155
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
156 % combine coefficient to construct Coons surface
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
157 coefs(1,:,:) = r1.coefs(1,:,:) + r2.coefs(1,:,:) - t.coefs(1,:,:);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
158 coefs(2,:,:) = r1.coefs(2,:,:) + r2.coefs(2,:,:) - t.coefs(2,:,:);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
159 coefs(3,:,:) = r1.coefs(3,:,:) + r2.coefs(3,:,:) - t.coefs(3,:,:);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
160 coefs(4,:,:) = r1.coefs(4,:,:) + r2.coefs(4,:,:) - t.coefs(4,:,:);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
161 srf = nrbmak(coefs, r1.knots);
6bc116f6bbc3 cleanup
cdf
parents: 5224
diff changeset
162
6910
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
163 end
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
164
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
165 %!demo
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
166 %! pnts = [ 0.0 3.0 4.5 6.5 8.0 10.0;
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
167 %! 0.0 0.0 0.0 0.0 0.0 0.0;
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
168 %! 2.0 2.0 7.0 4.0 7.0 9.0];
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
169 %! crv1 = nrbmak(pnts, [0 0 0 1/3 0.5 2/3 1 1 1]);
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
170 %!
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
171 %! pnts= [ 0.0 3.0 5.0 8.0 10.0;
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
172 %! 10.0 10.0 10.0 10.0 10.0;
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
173 %! 3.0 5.0 8.0 6.0 10.0];
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
174 %! crv2 = nrbmak(pnts, [0 0 0 1/3 2/3 1 1 1]);
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
175 %!
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
176 %! pnts= [ 0.0 0.0 0.0 0.0;
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
177 %! 0.0 3.0 8.0 10.0;
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
178 %! 2.0 0.0 5.0 3.0];
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
179 %! crv3 = nrbmak(pnts, [0 0 0 0.5 1 1 1]);
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
180 %!
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
181 %! pnts= [ 10.0 10.0 10.0 10.0 10.0;
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
182 %! 0.0 3.0 5.0 8.0 10.0;
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
183 %! 9.0 7.0 7.0 10.0 10.0];
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
184 %! crv4 = nrbmak(pnts, [0 0 0 0.25 0.75 1 1 1]);
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
185 %!
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
186 %! srf = nrbcoons(crv1, crv2, crv3, crv4);
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
187 %!
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
188 %! nrbplot(srf,[20 20]);
97806581afd6 New version compatible with Matlab
rafavzqz
parents: 5552
diff changeset
189 %! title('Construction of a bilinearly blended Coons surface.');
7919
27876b20006b Spink's version of nrbcoons, the bug was in nrb4surf
rafavzqz
parents: 6958
diff changeset
190 %! hold off