What is the easiest way to draw polygon given only vertices coordinates ?

hazem saaad (view profile)

님이 질문을 제출함. 5 Jun 2018
최근 활동 Steven Lord

Steven Lord (view profile)

님이 답변함. 5 Jun 2018
What is the easiest way to plot polygon given only vertices coordinates?

로그인 to comment.

답변 수: 2

Answer by Star Strider

Star Strider (view profile)

on 5 Jun 2018

One approach:
vertices = randi(9, 10, 2); % Create Vertices Matrix [x(:) y(:)]
verticesc = vertices - mean(vertices,1); % Center Vertices
[~,sortidx] = sortrows(atan2(verticesc(:,2), verticesc(:,1)),1); % Sort
sortidx = [sortidx; sortidx(1)]; % Close Polygon
figure(1)
plot(vertices(sortidx,1), vertices(sortidx,2), '-pr')
axis equal
The ‘vertices’ matrix has the x coordinate in the first column, and the y coordinate in the second column.

댓글 수: 0

로그인 to comment.

Answer by Steven Lord

Steven Lord (view profile)

on 5 Jun 2018

I see that this has the tag "3d plots" but you refer to "polygon". If in fact you're referring to the standard definition of polygon as "a plane figure that is bounded by a finite chain of straight line segments closing in a loop" use your coordinates to build a polyshape object and call plot on that polyshape.
If instead you want a "3d plot", also known as a polyhedron, that's different.

로그인 to comment.