栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

Qt中调用C语言函数库

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Qt中调用C语言函数库

接着上一篇文章,试图画出速度模型时,中间会有用到调用C库函数--gsl库;记一下怎么使用的:

和C语言中类似,但要使用到条件编译:

#ifdef  __cplusplus
extern "C" {
#endif
#include 
#include 
#include 
#ifdef  __cplusplus
}
#endif

将这部分包含到相应的文件中,一般是.h中;

关于GSL手册,可以参考官网:

GNU Scientific Library — GSL 2.7 documentationhttps://www.gnu.org/software/gsl/doc/html/index.html

然后对于插值部分,需要确定插值类型,插值工作区,加速区,插值设置,初始化: 

const gsl_interp2d_type *T = gsl_interp2d_bilinear;//插值类型(方法)
    spline = gsl_spline2d_alloc(T, s->nx, s->ny);//gsl_spline2d,插值工作区
    xacc = gsl_interp_accel_alloc();//gsl_interp_acc,加速工作区
    yacc = gsl_interp_accel_alloc();
    for(int i=0;inx;i++){
        for(int j=0;jny;j++){
            gsl_spline2d_set(spline, s->za, i, j, s->array.at(i*(s->ny)+j) );
        }
    }    
gsl_spline2d_init(spline, s->xa, s->ya, s->za, s->nx, s->ny);

 以及调用

QwtRasterData类的value函数

返回某坐标下的值。 

double vv = gsl_spline2d_eval(spline, x, y, xacc, yacc);       
return vv;

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/783849.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号