养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

Mathematica通过一系列点拟合B样条函数的方法

时间:2024-11-10 15:00:17

本文,用BSplineFunction来拟合曲线或者曲面。

Mathematica通过一系列点拟合B样条函数的方法

工具/原料

电脑

Mathematica11+

方法/步骤

1、给出一系列平面上的点:a=RandomReal[{-5,5},{36,2}]

Mathematica通过一系列点拟合B样条函数的方法

2、用BSplineFunction来拟合这些点:f=BSplineFunction[a]

Mathematica通过一系列点拟合B样条函数的方法

3、函数的定义域是0到1;函数的输出值是一个二元向量:f[0.366]

Mathematica通过一系列点拟合B样条函数的方法

4、在平面里面,用折线段连结a里面的点:Graphics[{Red,Point[a]巳呀屋饔,Green,Line[a]},Axes->True]

Mathematica通过一系列点拟合B样条函数的方法

5、加画f的图像:Show[Graphics[{Red,Point[瞢铍库祢a],Green,Line[a柯计瓤绘]},Axes->True],ParametricPlot[f[t],{t,0,1},PlotStyle->Blue]]

Mathematica通过一系列点拟合B样条函数的方法

6、第二个例子,给出一组三维直角坐标点:a=RandomReal[{-5,5},{10,3,3}]

Mathematica通过一系列点拟合B样条函数的方法

7、拟合出B样条函数f,但是不封闭:f=BSplineFunction[a,SplineClosed->False]

Mathematica通过一系列点拟合B样条函数的方法

8、画出曲面图形:aa=绯摺驼予ParametricPlot3D[f[u,v],{u,0,5/6},{v,0,1},PlotStyle->Gre髫潋啜缅en,Axes->False,Boxed->False]

Mathematica通过一系列点拟合B样条函数的方法

9、拟合封闭的B样条函数f:f=BSplineFunction[a,SplineClosed->True]

Mathematica通过一系列点拟合B样条函数的方法

10、封闭的曲面如下图。

Mathematica通过一系列点拟合B样条函数的方法

© 一点知识