Draw diagonals of rectangle

5 Ansichten (letzte 30 Tage)
Thales
Thales am 14 Nov. 2019
Bearbeitet: Adam Danz am 14 Nov. 2019
The code below
figure; hold on;
rectangle('Position',[1 2 5 6])
axis([0 10 0 10])
plot([1 6],[8 2],'k')
plot([1 6],[2 8],'k')
Draws a rectangle and I manually plotted 2 lines to conect the vertices of the rectangle, to draw the two diagonals of the rectangle.
Is there an easier or faster way to draw the diagonals of a rectangle, after you created it with the rectangle function?
fig1.png

Akzeptierte Antwort

Adam Danz
Adam Danz am 14 Nov. 2019
Bearbeitet: Adam Danz am 14 Nov. 2019
If you're looking for a function, check out interconnections()
rectPos = [1 2 5 6]; %[left, bottom, width, height];
interconnections(repmat(cumsum(rectPos([1,3])),2,1), repmat(cumsum(rectPos([2,4])),2,1)', true);
% This will also draw the rectangle
Alternatively,
rectPos = [1 2 5 6]; %[left, bottom, width, height];
rectangle('Position',rectPos);
hold on
plot(cumsum(rectPos([1,3])), [cumsum(rectPos([2,4]));fliplr(cumsum(rectPos([2,4])))], '-k')

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by