19 if (knots.size() < 2 * (degree + 1))
25 if (!std::is_sorted(knots.begin(), knots.end()))
31 for (std::vector<double>::const_iterator it = knots.begin(); it != knots.end();
34 if (count(knots.begin(), knots.end(), *it) > degree + 1)
46 if (std::count(knots.begin(), knots.begin() + degree + 1,
47 knots.front()) != degree + 1)
53 if (std::count(knots.end() - degree - 1, knots.end(),
54 knots.back()) != degree + 1)
63 const std::vector<double>& refinedKnots)
66 if (refinedKnots.size() < knots.size())
72 for (std::vector<double>::const_iterator it = knots.begin() ; it != knots.end();
75 int m_tau = count(knots.begin(), knots.end(), *it);
76 int m_t = count(refinedKnots.begin(), refinedKnots.end(), *it);
85 if (knots.front() != refinedKnots.front())
90 if (knots.back() != refinedKnots.back())