#include <Base/ImageUtils/ImageDraw.hh>
#include <Base/Image/ImageIO.hh>
#include <Base/Math/Matrix.hh>
#include <Base/Math/Vector.hh>
#include <Base/Math/Vector2.hh>
#include <MathAlgo/BSplineCurve.hh>
using namespace BIAS;
using namespace std;
unsigned int imgCounter=0;
unsigned char value[1];
double t=0;
double d=0.01;
tmp=res;
t+=d;
while(t<1.+d){
(unsigned int)tmp[1],
(unsigned int)res[0],
(unsigned int)res[1],
255);
tmp=res;
t+=d;
}
char title[255];
sprintf(title, "ExampleBSplineCurve%01i.mip",imgCounter++);
}
double t=0;
double d=0.01;
tmp=res;
t+=d;
while(t<1.+d){
(unsigned int)tmp[1],
(unsigned int)res[0],
(unsigned int)res[1],
255);
tmp=res;
t+=d;
}
char title[255];
sprintf(title, "ExampleBSplineCurve%01i.mip",imgCounter++);
}
int main()
{
value[0]=0;
bsplineCubicOpen,bsplineCubicClosed;
std::vector<BIAS::Vector2<double> > cPnt;
item[0]=0.;
item[1]=0.;
cPnt.push_back(item);
item[0]=1345.996845;
item[1]=1263.704834;
cPnt.push_back(item);
item[0]=1911.155259;
item[1]=1785.161187;
cPnt.push_back(item);
item[0]=2385.32832;
item[1]=2306.61754;
cPnt.push_back(item);
item[0]=2850.048898;
item[1]=2828.073893;
cPnt.push_back(item);
item[0]=3375.122;
item[1]=3349.530246;
cPnt.push_back(item);
item[0]=3934.636532;
item[1]=3870.986599;
cPnt.push_back(item);
item[0]=4446.42884;
item[1]=4392.442952;
cPnt.push_back(item);
item[0]=4990.218638;
item[1]=4913.899306;
cPnt.push_back(item);
item[0]=5604.887952;
item[1]=5435.355659;
cPnt.push_back(item);
item[0]=6120.227702;
item[1]=5956.812012;
cPnt.push_back(item);
item[0]=8000;
item[1]=8000;
cPnt.push_back(item);
for(unsigned int i=0;i<cPnt.size();i++)
cPnt[i].DivideIP(10);
cPnt.clear();
item[0]=200.;
item[1]=200.;
cPnt.push_back(item);
item[0]=200.;
item[1]=150.;
cPnt.push_back(item);
item[0]=100.;
item[1]=100.;
cPnt.push_back(item);
item[0]=100.;
item[1]=200.;
cPnt.push_back(item);
item[0]=200.;
item[1]=300.;
cPnt.push_back(item);
item[0]=200.;
item[1]=300.;
cPnt.push_back(item);
item[0]=300.;
item[1]=200.;
cPnt.push_back(item);
item[0]=300.;
item[1]=100.;
cPnt.push_back(item);
item[0]=200.;
item[1]=150.;
cPnt.push_back(item);
item[0]=200.;
item[1]=200.;
cPnt.push_back(item);
item[0]=200.;
item[1]=150.;
cPnt.push_back(item);
item[0]=100.;
item[1]=100.;
cPnt.push_back(item);
drawQuadratic(bsplineQuadraticOpen);
drawQuadratic(bsplineQuadraticClosed);
drawCubic(bsplineCubicOpen);
drawCubic(bsplineCubicClosed);
return 0;
}