Borrar filtros
Borrar filtros

How to find the vertices of a trinagle given points on the triangle?

2 visualizaciones (últimos 30 días)
Emmanuel
Emmanuel el 28 de Mayo de 2014
Comentada: Emmanuel el 29 de Mayo de 2014
I have been given 6 points where 2 points define a side of the trianglee. how can I obtain the vertices of triangle?

Respuestas (2)

Matt J
Matt J el 28 de Mayo de 2014
Meaning the 6 points consist of duplicates of the vertices? If so, this looks applicable
  5 comentarios
Matt J
Matt J el 28 de Mayo de 2014
Editada: Matt J el 28 de Mayo de 2014
Are the red points located at the vertices or just at arbitrary locations on the edges? Do you know which pairs of red points belong to the same edge of the triangle?
Emmanuel
Emmanuel el 28 de Mayo de 2014
yes! red points ar enot locate don the vertices , but on the sides of the triangle.Every side of the triangle will pass through the red points. One side has two red points, so d whole triangle will have six red points. Using these red points, I have to create the lines, and then form a triangle and find the vertices.

Iniciar sesión para comentar.


Matt J
Matt J el 28 de Mayo de 2014
Editada: Matt J el 28 de Mayo de 2014
If S is a 6x2 matrix such that each pair of consecutive rows S(i,:) and S(i+1,:) are points on one side of the triangle, then you can use qlcon2vert ( Available Here ) as follows,
x0=mean(S).'; %interior point
A=[S(2,:)-S(1,:); S(4,:)-S(3,:); S(6,:)-S(5,:)]*[0 -1; 1 0];
b=sum(A.*S(1:2:end,:),2);
D=diag(sign(b-A*x0));
A=D*A; b=D*b;
Vertices=qlcon2vert(x0,A,b)
  3 comentarios
Matt J
Matt J el 28 de Mayo de 2014
I cannot read it. To use the
button properly, highlight the code first and then click the button.
Emmanuel
Emmanuel el 29 de Mayo de 2014
This is the code which I have written. Ignore the mathematical error. I am not able to plot the triangle and obtain the vertices
for i = 1 : 3
[xp] = input('enter the value of 1st co-ord');
[yp] = input('enter the value of 2nd co=ord');
%for a and b:
yp(1) = xp(2); xp(2) = yp(1);
a = (yp(2)-yp(1)) / (xp(2)-xp(1));
b = yp(1)-a*xp(1);
%y = a*x + b;
xlims = [0 15];
ylims = [0 15];
y = xlims*a+b;
z = line( xlims, y );
xlim(xlims); ylim(ylims);
end

Iniciar sesión para comentar.

Categorías

Más información sobre Mathematics and Optimization en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by