MATLAB: How to convert matrix subscript range to vector

Image Processing ToolboxMATLABmatrix indexingsubscriptsubscript conversion

I have a matrix range on subscript format, for example something like
y = [1:3]
x = [4:6]
I would like to convert this range to a vector containing all the elements of the range separately. I.e. the example above would result in a vector that is
v = [1,4
1,5
1,6
2,4
2,5
2,6
3,4
3,5
3,6]
Is there any nice way of achieving this, or do I have to resort to nestled for loops?

Best Answer

help meshgrid
[xx,yy] = meshgrid(1:3,4:6);
v = [xx(:),yy(:)];