Frenet

版本 1.0.0.0 (918 字节) 作者: Daniel Claxton
FRENET - Frenet-Serret Space Curve Invarients
5.0K 次下载
更新时间 2006/6/1

无许可证

FRENET - Frenet-Serret Space Curve Invarients

[T,N,B,k,t] = frenet(x,y);
[T,N,B,k,t] = frenet(x,y,z);

Returns the 3 vector and 2 scaler
invarients of a space curve defined
by vectors x,y and z. If z is omitted
then the curve is only a 2D,
but the equations are still valid.

_ r'
T = ---- (Tangent)
|r'|

_ T'
N = ---- (Normal)
|T'|
_ _ _
B = T x N (Binormal)

k = |T'| (Curvature)

t = dot(-B',N) (Torsion)

Example:
theta = 2*pi*linspace(0,2,100);
x = cos(theta);
y = sin(theta);
z = theta/(2*pi);
[T,N,B,k,t] = frenet(x,y,z);
line(x,y,z), hold on

quiver3(x,y,z,T(:,1),T(:,2),T(:,3),'color','r')
quiver3(x,y,z,N(:,1),N(:,2),N(:,3),'color','g')
quiver3(x,y,z,B(:,1),B(:,2),B(:,3),'color','b')
legend('Curve','Tangent','Normal','Binormal')

See also: GRADIENT

引用格式

Daniel Claxton (2024). Frenet (https://www.mathworks.com/matlabcentral/fileexchange/11169-frenet), MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R14
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Smoothing 的更多信息
致谢

启发作品: frenet_robust.zip

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

版本 已发布 发行说明
1.0.0.0

Summary Change