Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

Plotting Bezier curve by having tangent

Asked by Mahsa

Mahsa

on 27 Sep 2013

My problem: I have coordinate and tangent of first point and the end point of Bezier curve and I should draw Bezier Curve in MATLAB. What I did is extracting two control points from the below formulae: First point= p0; end point=p1; two control point=c0 & c1

B(t)=(1-t)^3*p0+3*(t)*(1-t)^2*c0+3*(1-t)*(t)^2*c1+t^3*p1

C0=(B’(0)+3*p0)/3 C1=(-B’(1)+3p1)/3 Then when I plot it, it would be like a straight line (because c0 and c1 will be so closed to the first and end point. Also following is my Matlab code: p0=[0;0;0]; diff_b1=[1;0;1] diff_b0=[0;0;1] p1=[10;0;20]

c0=(diff_b0+(3*p0))/3 c1=(-diff_b1+(3*p1))/3

counter=0; for t=0:0.05:1 counter=counter+1; b(counter,:)=[(1-t)^3*p0+3*(t)*(1-t)^2*c0+3*(1-t)*(t)^2*c1+t^3*p1]'; end plot3(b(:,1),b(:,2),b(:,3))

0 Comments

Mahsa

Mahsa

Products

No products are associated with this question.

0 Answers

Contact us