Fill area inside 4 connected lines in a plot

I have a figure, similar to a rectangle. It consists of 4 lines. Top and bottom line is just a connection of the two bottom points, respectively two top points. But left and right line is a matrix with x and y values, resulting from a curve fit between the left top and bottom point, same for the right side. Now i want a matrix to be filled with zeros outside of the rectangles coordinates and with ones inside the rectangle (see picture below).

 Accepted Answer

Read about padzeros, padarrays.
A = ones(5,4) ;
iwant = zeros(8) ;
iwant(3:7,3:6) = A ;

3 Comments

I don't think that's what im looking for. I have a 4 functions, as a matrix with x and y values. Now i want to combine these 4 functions/lines to a rectangle, then overlay a matrix and fill everything inside the rectangle in the matrix with ones, everything outside with zeros.
[X,Y] = meshgrid(1:10,1:10) ;
[Xi,Yi] = meshgrid(linspace(1.5,9.5,9)) ;
plot(X,Y,'r',X',Y','r')
val = [1:numel(Xi)]' ;
text(Xi(:),Yi(:),num2str(val))
I found the poly2mask(). That does exactly what i need. But thanks anyways.

Sign in to comment.

More Answers (0)

Tags

Asked:

on 2 Oct 2020

Commented:

on 12 Oct 2020

Community Treasure Hunt

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

Start Hunting!