矩阵形式的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,'*')

主要是要获得:

相关推荐
谭欣辰7 分钟前
C++ 排列组合完整指南
开发语言·c++·算法
love530love11 分钟前
精简版|Claude-HUD 插件介绍 + 一键安装教程
人工智能·windows·笔记
代码中介商21 分钟前
银行管理系统的业务血肉 —— 流程、状态机、输入校验与持久化(下篇)
c语言·算法
冬奇Lab29 分钟前
RAG 系列(四):文档处理——从原始文件到高质量 Chunk
人工智能·llm·源码
冬奇Lab35 分钟前
一天一个开源项目(第89篇):Warp - AI 驱动的现代化 Rust 终端
人工智能·rust·开源
蔡俊锋1 小时前
AI是一面镜子
人工智能·ai·规格说明书·ai是一面镜子
四方云1 小时前
Kamailio 启动报错 “invalid curve” 与 “freeing already freed pointer” 的终极解决方案
人工智能
foundbug9991 小时前
自适应滤除直达波干扰的MATLAB实现
开发语言·算法·matlab
沪漂阿龙1 小时前
OpenAI Agents SDK 深度解析(三):执行层——Agent 的“幕后指挥部”
人工智能·深度学习
还是奇怪1 小时前
AI 提示词工程入门:用好的语言与模型高效对话
大数据·人工智能·语言模型·自然语言处理·transformer