博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
样条之埃尔米特(Hermite)插值函数
阅读量:6967 次
发布时间:2019-06-27

本文共 1116 字,大约阅读时间需要 3 分钟。

核心代码:

//// 埃尔米特等距插值//static float GetValueHermite(const void* valuesPtr, int stride, int n, float t, float dc){     int i,j;    float z,s,p,q, v, d;    // 初值    z = 0.0;    // 特例处理    if (n < 1)     {        return(z);    }    if (n == 1)     {         z = YfGetFloatValue(valuesPtr, stride, 0);          return(z);    }    float xStep = 1.0f/(n - 1);    // 循环插值    for (i = 1; i <= n; i++)    {         s = 1.0f;         q = (i-1)*xStep;        for (j = 1; j <= n; j++)        {             p = (j-1)*xStep;            if (j != i)             {                s = s*(t-p)/(q-p);            }        }        s = s*s;        p = 0.0f;        for (j = 1; j <= n; j++)        {            if (j != i)             {                p = p+1.0f/(q-((j-1)*xStep));            }        }        v = YfGetFloatValue(valuesPtr, stride, i - 1);          if (i < n)        {            d = YfGetFloatValue(valuesPtr, stride, i) - v;        }        else        {            d = v - YfGetFloatValue(valuesPtr, stride, i - 2);         }        q = v + (t-q)*(d*dc-2.0f*v*p);        z = z + q*s;    }    return(z);}

切图:

 

 

相关软件的下载地址为:

转载地址:http://adisl.baihongyu.com/

你可能感兴趣的文章
11204 ASM 在线存储迁移。
查看>>
eclipse不会自动编译的问题解决
查看>>
linux netstat命令
查看>>
淘宝卖家遭恶退诈骗 阿里一年来协助警方抓获103人
查看>>
拥2180亿美元收入,苹果成全球最大IT企业
查看>>
数据库连接池的工作原理
查看>>
网络抓包工具wireshark and tcpdump 及其实现基于的libpcap
查看>>
市值410亿美元!VR内容在5年后将成下一座金矿
查看>>
easyui的combobox根据后台数据实现自动输入提示功能
查看>>
ASP.NET MVC WEB API必知必会知识点总结
查看>>
Test2 unit6
查看>>
sql注入<二>
查看>>
26、OSPF配置实验之不规则区域虚链路
查看>>
[C++再学习系列] 引用和指针
查看>>
未能加载文件或程序集“********”或它的某一个依赖项。试图加载格式不正确的程序。...
查看>>
bootstrap4-图像
查看>>
Centos7 MariaDB10.1.22编译安装
查看>>
路由器配置基础(中)
查看>>
/etc/sudoers的配置
查看>>
菜鸟学Linux 第075篇笔记 mysql事务,视图
查看>>