// Gnurbs - A curve and surface library
// Copyright (C) 2008-2026 Eric Bechet
//
// See the LICENSE file for contributions and license information.
// Please report all bugs and problems to <bechet@cadxfem.org>.
//

#include "nbeziercurve.h"

#include <cmath>
#include <iostream>

void nbeziercurve::P(double u_, npoint& ret) const
{
// you have to implement this
  ret=npoint(0.,0.,0.,1.);
}

void nbeziercurve::cut(double u_, npoint& ret,nbeziercurve &left,nbeziercurve &right) const
{
// you have to implement this
}


void nbeziercurve::degree_elevation()
{
  // you have to implement this also
  // currently only increases the numer of control points by 1 without computing them
  val.push_back(npoint(0.,0.,0.,1.0));
  nCP++;
}


void nbeziercurve::translate(npoint vec)
{
  for (int i=0;i<nCP;++i) CP(i)=CP(i)+vec;
}
