NRBREVERSE: Reverse the evaluation directions of a NURBS geometry.
 
 Calling Sequence:
 
   rnrb = nrbreverse(nrb);
   rnrb = nrbreverse(nrb, idir);
 
 INPUT:
 
   nrb		: NURBS data structure, see nrbmak.
   idir        : vector of directions to reverse.

 OUTPUT:
 
   rnrb	: Reversed NURBS.
 
 Description:
 
   Utility function to reverse the evaluation direction of a NURBS
   curve or surface.

    Copyright (C) 2000 Mark Spink
    Copyright (C) 2013 Rafael Vazquez

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

Demonstration 1

The following code

 pnts = [0.5 1.5 3.0 7.5 8.5;
         3.0 5.5 1.5 4.0 4.5;
         0.0 0.0 0.0 0.0 0.0];
 crv1 = nrbmak(pnts,[0 0 0 1/2 3/4 1 1 1]);
 crv2 = nrbreverse(crv1);
 fprintf('Knots of the original curve\n')
 disp(crv1.knots)
 fprintf('Knots of the reversed curve\n')
 disp(crv2.knots)
 fprintf('Control points of the original curve\n')
 disp(crv1.coefs(1:2,:))
 fprintf('Control points of the reversed curve\n')
 disp(crv2.coefs(1:2,:))
 nrbplot(crv1,100)
 hold on
 nrbplot(crv2,100)
 title('The curve and its reverse are the same')
 hold off

Produces the following output

Knots of the original curve
        0        0        0   0.5000   0.7500   1.0000   1.0000   1.0000
Knots of the reversed curve
        0        0        0   0.2500   0.5000   1.0000   1.0000   1.0000
Control points of the original curve
   0.5000   1.5000   3.0000   7.5000   8.5000
   3.0000   5.5000   1.5000   4.0000   4.5000
Control points of the reversed curve
   8.5000   7.5000   3.0000   1.5000   0.5000
   4.5000   4.0000   1.5000   5.5000   3.0000

and the following figure

Figure 1

Package: nurbs