日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

pythonocc 扩展数据_如何在pythonOCC中使用样条函数?

發布時間:2025/3/12 python 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pythonocc 扩展数据_如何在pythonOCC中使用样条函数? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

您只需將代碼修改為C++(而不是C)BOOST_PYTHON_MODULE(Spline)

{

import_array();

boost::python::numeric::array::set_module_and_type("numpy", "ndarray");

class_("Spline", init<>())

.def("spline", &Spline::spline)

;

}

因此在Python中可以使用:

^{pr2}$

Cpp等級:

^{3}$

然后在boost::python::list Spline::spline(numeric::array& x_val, numeric::array& y_val, double p)函數中得到:PyArrayObject* x_pyArr = (PyArrayObject*)PyArray_FROM_O(x_val.ptr());

PyArrayObject* y_pyArr = (PyArrayObject*)PyArray_FROM_O(y_val.ptr());

int size = *(x_pyArr->dimensions), i , j;

double* data_x = (double*)x_pyArr->data;

double* data_y = (double*)y_pyArr->data;

double h[NUMBER_OF_SAMPLES], a, b, c, d, s[NUMBER_OF_SAMPLES] = { 0 }, F[NUMBER_OF_SAMPLES], f[NUMBER_OF_SAMPLES], x[NUMBER_OF_SAMPLES], m[NUMBER_OF_SAMPLES][NUMBER_OF_SAMPLES] = { 0 }, temp;

for (int i = 0; i < size; i++)

{

x[i] = *(data_x + i);

f[i] = *(data_y + i);

}

依此類推。我在Spline::spline函數中返回一個python列表:boost::python::list return_val;

// ....

return_val.append(sum);

return_val.append(result);

return return_val;

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的pythonocc 扩展数据_如何在pythonOCC中使用样条函数?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。