• 大小: 1KB
    文件类型: .m
    金币: 2
    下载: 2 次
    发布日期: 2021-05-12
  • 语言: Matlab
  • 标签: 曲线拟合  

资源简介

在工程上往往需要进行三维曲线拟合,该Matlab代码可以对三组离散数据进行三维B样条曲线拟合

资源截图

代码片段和文件信息

clear all
clc
tic;
t=toc;
format long g;
A=load(‘C:\Users\WYG704\Desktop\stage35\r1.dat‘);      %读取数据文件
x=A(:1);                                      
y=A(:2);                                                                                  
z=A(:3);
A=[x y z];
n =size(x);   %求控制点总数
%判断开曲线或是闭曲线并作相应处理
d=sqrt((x(1)-x(n))^2+(y(1)-y(n))^2+(z(1)-z(n))^2);
if  d>0.01
  %开曲线端点增加处理
        x(n+2)=x(2);y(n+2)=y(2);z(n+2)=z(2);
      for i=n+1:-1:2
        x(i)=x(i-1);y(i)=y(i-1);z(i)=z(i-1);
      end
  else
    %闭曲线端点增加处理
       x(n+2)=x(2);y(n+2)=y(2);z(n+2

评论

共有 条评论