kml_?_spline2d_set

设zarr在网格点(i,j)处为z。

接口定义

int kml_float_spline2d_set(const kml_float_spline2d *spline, float zarr[], const size_t i, const size_t j, const float z)

int kml_double_spline2d_set(const kml_double_spline2d *spline, double zarr[], const size_t i, const size_t j,

const double z);

参数

参数名

类型

描述

输入/输出

spline

kml_float_spline2d*, kml_double_spline2d*

插值对象指针。

输入

zarr

float, double

存有z值的数组。

输出

i

size_t

x方向的index。

输入

j

size_t

y方向的index。

输入

z

float

要改变的z值。

输入

依赖

#include "kipl.h"

示例

const size_t xSize = 4;
const size_t ySize = 4;
float xArr[4] = {1,1.33,1.67,2};
float yArr[4] = {1,1.33,1.67,2};
float* zArr = (float*)malloc(xSize * ySize * sizeof(float));
float x = 1;
float y = 1;
float z = 0;
kml_float_spline2d *spline = kml_float_spline2d_alloc(kml_float_interp2d_bicubic, xSize, ySize);
kml_float_spline2d_init(spline, xArr, yArr, zArr, xSize, ySize);
kml_float_spline2d_eval(interp, xArr, yArr, zArr, x, y, xacc, yacc, &z);
kml_float_spline2d_set(interp, zArr, x, y, z);