MATLAB Answers

Finding intersection point of the lines

4.591 views (last 30 days)
Hi I have data sets for two lines. i.e. x1,y1 and x2,y2. So i can plot the lines using these point data sets. I would like to know the point (x,y)where these lines intersect each other. Please note that i have tried both [x,y]=intersections(x1,y1,x2,y2); and [x,y]=curveintersect(x1,y1,x2,y2);
i would appreciate if you can tell me the exact command for this purpose.
Regards

More Answers (3)


Andrei Bobrov
Andrei Bobrov on 5 Mar 2012
data = rand(20,3);
x1 = sort(data(:,2));
x2 = sort(data(:,3));
y = data(:,1);
pp = interp1(x1,y,'linear','pp');
pp2 = interp1(x2,y,'linear','pp');
xx = xx(max(x1(1),x2(1)) <= xx & min(x1(end),x2(end)) >= xx);
func = @(x)ppval(pp,x)-ppval(pp2,x);
xb = xx([true; diff(func(xx) > 0) ~= 0]);
i1 = hankel(1:2,2:numel(xb));
xout = arrayfun(@(z)fzero(func, xb(i1(:,z))), (1:size(i1,2))' )

mohammed wasiullah
mohammed wasiullah on 5 Apr 2017
how to find the intersection between the curve and the straight ?
  1 Comment
Tan  Kah Loon
Tan Kah Loon on 18 Apr 2017
Example,y1=x^2+2x+3,y2=2x^2+3x+4 , you have to combine two eq and you get ((x^2+X+1)), type f=[1 1 1] to get the polynomials func and roots (f) for its roots.Next, you have to type your 1st equation into p=[1 2 3], after that, pvals=polyval (p,-0.5) and you will find the 1st intersection. The 2nd intersection use back the same method to find.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by