矩阵形式的bezier曲线

本文分享一段矩阵形式的bezier代码:

Matlab 复制代码
clc
clear

% 控制点
P = [25;
     10;
     5;
     13]; 

%% 获得M矩阵
n = length(P) - 1;
M = zeros(n+1,n+1);
for i = 1:n+1
    for j = 1:n+1
        if(i+j<n+3)
            M(i,j) = (-1)^(n -i-j+2)*nchoosek(n,n-i+1)*nchoosek(n-i+1,j-1);
        else
            M(i,j) = 0;
        end
    end
end
t_temp = linspace(0,1,100)';

% 生成T矩阵
T = ones(length(t_temp),n + 1);
for i = 1:n
   T(:,i) = t_temp.^(n-i+1);
end

% 计算获得bezier曲线离散点
r = T*M*P;

figure(1)
plot(r)
hold on
plot([1,25,50,100],P,'*')

主要是要获得:

相关推荐
大强同学5 分钟前
对比 VS Code:Zed 编辑器编码体验全面解析
人工智能·windows·编辑器·ai编程
豆沙糕14 分钟前
RAG文档切分最佳实践:企业级方案+主流策略+生产落地
数据库·人工智能
minglie114 分钟前
zynq环境用opencv测摄像头
人工智能·opencv·计算机视觉
汀、人工智能14 分钟前
[特殊字符] 第66课:跳跃游戏
数据结构·算法·数据库架构·图论·bfs·跳跃游戏
汀、人工智能24 分钟前
[特殊字符] 第70课:加油站
数据结构·算法·数据库架构·图论·bfs·加油站
xyz_CDragon25 分钟前
OpenClaw Skills 完全指南:ClawHub 安装、安全避坑与自定义开发(2026)
人工智能·python·ai·skill·openclaw·clawhub
断眉的派大星27 分钟前
pytorch中view和reshape的区别
人工智能·pytorch·python
wsoz29 分钟前
Leetcode普通数组-day5、6
c++·算法·leetcode·数组
y = xⁿ29 分钟前
【LeetCode】双指针:同向快慢针
算法·leetcode
nihao56130 分钟前
机器学习:阈值与混淆矩阵
人工智能·机器学习·矩阵