当前位置: 首页 > news >正文

资讯型电商网站优缺点长沙一站式网站建设

资讯型电商网站优缺点,长沙一站式网站建设,中山网络公司网站,本地做网站MATLAB交互式贝塞尔曲线演示 以下是一个MATLAB交互式贝塞尔曲线演示代码#xff0c;允许用户通过点击界面来添加控制点并实时查看贝塞尔曲线的变化#xff1a; function interactive_bezier()% 创建图形窗口fig figure(Name,交互式贝塞尔曲线演示, NumberTitle,off);ax a…MATLAB交互式贝塞尔曲线演示 以下是一个MATLAB交互式贝塞尔曲线演示代码允许用户通过点击界面来添加控制点并实时查看贝塞尔曲线的变化 function interactive_bezier()% 创建图形窗口fig figure(Name,交互式贝塞尔曲线演示, NumberTitle,off);ax axes(Parent, fig);title(ax, 点击添加控制点 (右键结束));xlabel(ax, X轴);ylabel(ax, Y轴);grid(ax, on);hold(ax, on);axis(ax, [0 10 0 10]);% 初始化控制点controlPoints [];bezierCurve [];% 设置鼠标点击回调函数set(fig, WindowButtonDownFcn, addControlPoint);% 添加控制点函数function addControlPoint(~, ~)% 获取点击位置pt get(ax, CurrentPoint);x pt(1,1);y pt(1,2);% 检查是否是右键点击 (结束)if strcmp(get(fig, SelectionType), alt)if size(controlPoints, 1) 2% 结束添加允许拖动控制点set(fig, WindowButtonDownFcn, selectControlPoint);title(ax, 可以拖动控制点 (右键清除));endreturn;end% 添加新控制点垂直拼接controlPoints [controlPoints; x, y];% 绘制控制点和连线cla(ax);plot(ax, controlPoints(:,1), controlPoints(:,2), ro-, MarkerFaceColor, r);% 如果有足够点绘制贝塞尔曲线if size(controlPoints, 1) 2updateBezierCurve();endend% 更新贝塞尔曲线函数function updateBezierCurve()% 计算贝塞尔曲线t linspace(0, 1, 100);n size(controlPoints, 1) - 1;curve zeros(length(t), 2);for i 0:n% 计算伯恩斯坦多项式B nchoosek(n,i) * (t.^i) .* ((1-t).^(n-i));curve curve B .* controlPoints(i1,:);end% 绘制曲线if ~isempty(bezierCurve)delete(bezierCurve);endbezierCurve plot(ax, curve(:,1), curve(:,2), b-, LineWidth, 2);end% 选择控制点函数function selectControlPoint(~, ~)% 检查是否是右键点击 (清除所有点)if strcmp(get(fig, SelectionType), alt)controlPoints [];cla(ax);set(fig, WindowButtonDownFcn, addControlPoint);title(ax, 点击添加控制点 (右键结束));return;end% 获取点击位置pt get(ax, CurrentPoint);x pt(1,1);y pt(1,2);% 查找最近的控制点if ~isempty(controlPoints)distances sqrt((controlPoints(:,1)-x).^2 (controlPoints(:,2)-y).^2);[~, idx] min(distances);% 设置拖动回调函数set(fig, WindowButtonMotionFcn, {dragControlPoint, idx});set(fig, WindowButtonUpFcn, stopDrag);endend% 拖动控制点函数function dragControlPoint(~, ~, idx)% 获取当前鼠标位置pt get(ax, CurrentPoint);x pt(1,1);y pt(1,2);% 更新控制点位置controlPoints(idx,:) [x, y];% 重绘cla(ax);plot(ax, controlPoints(:,1), controlPoints(:,2), ro-, MarkerFaceColor, r);updateBezierCurve();end% 停止拖动函数function stopDrag(~, ~)set(fig, WindowButtonMotionFcn, );set(fig, WindowButtonUpFcn, );end end使用说明 运行上述代码将创建一个交互式图形窗口添加控制点用鼠标左键点击图形区域添加控制点结束添加右键点击结束控制点添加阶段拖动控制点在结束添加后可以点击并拖动现有控制点重置右键点击清除所有控制点并重新开始 运行结果 贝塞尔曲线原理 这段代码实现了n阶贝塞尔曲线的计算使用伯恩斯坦多项式 B ( t ) ∑ i 0 n ( n i ) ( 1 − t ) n − i t i P i , t ∈ [ 0 , 1 ] \mathbf{B}(t) \sum_{i0}^n \binom{n}{i} (1-t)^{n-i} t^i \mathbf{P}_i, \quad t \in [0,1] B(t)i0∑n​(in​)(1−t)n−itiPi​,t∈[0,1] 其中 P i \mathbf{P}_i Pi​ 是第 i i i 个控制点向量。 ( n i ) \binom{n}{i} (in​) 是二项式系数组合数。 曲线会实时更新以反映控制点的变化。 您可以将此代码保存为.m文件并在MATLAB中运行或者直接在命令窗口中执行。
http://www.hkea.cn/news/14566281/

相关文章:

  • 深圳市住建局工程交易服务网网站关键词优化实验结果分析
  • 松江区环保局网站建设项目备案网站设计图尺寸
  • 做网站选云服务器内核网站开发入那个科目
  • 一个网站怎么做pc和移动端怎么做区块链媒体网站
  • 服装怎么做网站推广天津智能网站建设
  • 南安市住房和城乡建设部网站网站行业关键词
  • 冠县网站制作seo的研究对象
  • 威海做网站的哪家好网页设计综合案例
  • 建设网站请示宣传怎么设计app
  • 企业网站的建立网络虚拟社区时对于企业建设通查询中标
  • 免费的ppt下载网站男女做暧视频网站免费
  • 旅行网站开发意义网站分享到朋友圈
  • 网站制作手机棋牌游戏平台
  • 做明星粉丝网站赤峰做网站
  • 合肥网络科技有限公司做网站泉州关键词排名seo
  • 做教育的网站有哪些律师事务所网站设计
  • 企业网站开发工具百度销售平台
  • 做电影网站的流程网站大全浏览器
  • 做网站推广排名dw软件
  • 男女做暖暖试看网站成都市微信网站建
  • 电子商务网站建设也管理在线查看网站源码
  • 如何做网站外链传媒公司
  • 企业网站建设代理公司中山短视频seo教程
  • 大型网站如何优化做网站建设的公司有哪些
  • 建设棋牌类网站要多少钱黄骅58同城最新招聘信息
  • 美团网站开发合作商成都关键词排名推广
  • 网站备案证书下载密码忘了app脚本制作教程
  • 注册公司的网站是什么网络系统设计
  • 广西网站建设与规划英文网站如何做seo
  • 网站建设公司华网天下公司网站标题切换