概述
基于离散三点计算曲率圆的方法
%% 利用离散的三点求曲率
clc;
clear;
% 给出假设的三点
A = [[15,12]; [16,2]; [9,7]; [15,12]];
% 计算三条边的距离
distance1 = sqrt((A(1, 1) - A(2, 1))^2 + (A(1, 2) - A(2, 2))^2);
distance2 = sqrt((A(2, 1) - A(3, 1))^2 + (A(2, 2) - A(3, 2))^2);
distance3 = sqrt((A(3, 1) - A(4, 1))^2 + (A(3, 2) - A(4, 2))^2);
%依据余弦定理求cos(a)
cos_a = (distance2^2 + distance3^2 - distance1^2) / 2 * distance2 * distance3;
%依据正弦定理求出半径
sin_a = sqrt(1 - cos_a^2);
R = distance1 / (2 * sin_a);
curvature = 1 / R;
%% 画出这三点
figure(1)
hold on;
xlim([0 25]);
ylim([0 20]);
for i = 1 : 3
plot(A(i, 1), A(i, 2), 'c*');
plot([A(i,1), A(i+1, 1)], [A(i,2), A(i+1,2)]);
end
最后
以上就是苹果盼望为你收集整理的基于离散三点计算曲率圆的方法基于离散三点计算曲率圆的方法的全部内容,希望文章能够帮你解决基于离散三点计算曲率圆的方法基于离散三点计算曲率圆的方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复