样条插值的代码,比如三次样条插值或者是B样条插值C/C++

遇到个数值 分析中的问题,给定一些离散点,求插值出的点,比如,
我传入30个给定点的坐标,然后我要100个插值点,并要求得这100个插值点处
的一阶导数,求C/C++代码,最好是QT平台的