필터 지우기
필터 지우기

Find the limits of the parameter describing a spline curve (made using cscvn)

조회 수: 7 (최근 30일)
Hello,
I am trying to interpolate a space curve in 3d using splines. This link (https://in.mathworks.com/help/curvefit/splines-in-the-plane.html) shows that the spline is parametrised by a single parameter t, and hence I can evaluate the spline curve at distinct points using fnval(curve, t). However, how do I know the limits (min and max) of this parameter t?
For example, here I plot an incomplete curve (in blue) using an arbitrary max of 100.5 (the min is 0, I presume). The entire curve is plotted in dashed red (see attached file):
curve=cscvn(xyz);
% Evaluate the spline at definite points
t = linspace(0,100.5,501); % 100.5 is arbitrary
cv = fnval(curve, t);
figure; hold on
fnplt(curve,'r--',2) % plot entire spline
plot3(cv(1,:),cv(2,:),cv(3,:),'b','LineWidth',5);
view(3)

채택된 답변

Anshuman Pal
Anshuman Pal 2022년 2월 2일
I found the answer! All I had to do was search in the properties of curve. So, I have to use min(curve.breaks) and max(curve.breaks)as the limits of t:
t = linspace(min(curve.breaks), max(curve.breaks),501);

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Spline Postprocessing에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by