Lines Matching defs:order
77 * @param order Order of the input polynomial, equal to one less the number of coefficients
80 inline T casteljau_subdivision(double t, T const *v, T *left, T *right, unsigned order) {
83 T val = bernstein_value_at(t, v, order);
91 std::copy(v, v + order + 1, left);
93 for (std::size_t i = order; i > 0; --i) {
94 for (std::size_t j = i; j <= order; ++j) {
98 left[order] = val;
99 return left[order];
103 std::copy(v, v + order + 1, right);
105 for (std::size_t i = 1; i <= order; ++i) {
115 left[order] = right[0];
147 unsigned order() const { return c_.size()-1;}
148 unsigned degree() const { return order(); }
162 unsigned order;
163 explicit Order(Bezier const &b) : order(b.order()) {}
164 explicit Order(unsigned o) : order(o) {}
165 operator unsigned() const { return order; }
168 //Construct an arbitrary order bezier
169 Bezier(Order ord) : c_(0., ord.order+1) {
170 assert(ord.order == order());
238 for(unsigned i = 0; i <= order(); i++) {
244 for(unsigned i = 1; i <= order(); i++) {
250 for(unsigned i = 0; i <= order(); i++) {
257 Coord at1() const { return c_[order()]; }
258 Coord &at1() { return c_[order()]; }
261 return bernstein_value_at(t, &c_[0], order());
319 for(unsigned i = 0; i <= a.order(); i++)
320 result[i] = a[a.order() - i];
329 for(unsigned i = 0; i <= a[0].order(); i++) {
345 for(unsigned i = 0; i < b.order(); i++) {
348 os << format_coord_nice(b[b.order()]) << ")";