Frenet

Version 1.0.0.0 (918 octets) par Daniel Claxton
FRENET - Frenet-Serret Space Curve Invarients
4,9K téléchargements
Mise à jour 1 juin 2006

Aucune licence

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

Citation pour cette source

Daniel Claxton (2024). Frenet (https://www.mathworks.com/matlabcentral/fileexchange/11169-frenet), MATLAB Central File Exchange. Récupéré le .

Compatibilité avec les versions de MATLAB
Créé avec R14
Compatible avec toutes les versions
Plateformes compatibles
Windows macOS Linux
Catégories
En savoir plus sur Smoothing dans Help Center et MATLAB Answers
Remerciements

A inspiré : frenet_robust.zip

Community Treasure Hunt

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

Start Hunting!

Version Publié le Notes de version
1.0.0.0

Summary Change