[G+smo]gsKnotVector

使用方法可以参考gsKnotVector_test.cpp;tutorialKnotVector.cpp;

构造函数
  •         gsKnotVector (int p)
 Constructor with degree only. 
 
  •   gsKnotVector (int p, unsigned sz)
  Constructor with degree and size (=number of knots) 
 
  •   gsKnotVector (T u0, T u1, unsigned interior, unsigned mult_ends=1, unsigned mult_interior=1, int degree=-1)

    构造函数为‘下限,上限,内部不同点个数,末端重节点个数,内部重节点个数,阶次;‘阶次’的缺省值为末端重节点个数-1. 

  •   gsKnotVector (std::vector< T > const &knots, int degree, int regularity)
  Construct an open knot vector from the given unique knots. More...
 
  •   gsKnotVector (int degree, std::vector< T > const &knots)
  Construct a knot vector with the given degree and knots. 
 
  •   gsKnotVector (int deg, const_iterator start, const_iterator end)
 
  •   gsKnotVector (gsCompactKnotVector< T > ckv)

或者利用

   gsKnotVector<double> kv2;

       kv2.push_back(1,3);

       kv2.push_back(2);

       kv2.push_back(3,3);

       kv2.set_degree(2);”

 

template <classT>void

gsKnotVector<T>::initUniform(Tu0,T u1, unsignedinterior,unsignedmult_ends,unsignedmult_interior,intdegree)

{   

    my->knots.clear();

    my->knots.reserve( 2 *mult_ends +interior*mult_interior); 

    const T h = (u1-u0) / (interior+1); 

    my->knots.insert(my->knots.begin(),mult_ends,u0);   

    for ( unsigned i=1; i<=interior;i++ )

        my->knots.insert(my->knots.end(),mult_interior,

                        u0 + i*h ); 

    my->knots.insert(my->knots.end(),mult_ends,u1); 

    if (degree == -1)  

        my->p =mult_ends-1;

    else

        my->p =degree;

}

 

gsKnotVector.set_degree() 的使用

gsKnotVector<double> kv2;

  kv2.set_degree(2); // this willcause a break.

       gsKnotVector<double> kv2;

kv2.push_back(1,3);

kv2.push_back(2);

kv2.push_back(3,3);

kv2.set_degree(2); // this works

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值