Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用基本的MatLab函数解决我的逻辑中的问题_Matlab - Fatal编程技术网

使用基本的MatLab函数解决我的逻辑中的问题

使用基本的MatLab函数解决我的逻辑中的问题,matlab,Matlab,我正在尝试创建一个简单的MatLab脚本,只是学习了一些基础知识,但在使用自定义函数时遇到了一些问题 我试图通过一个函数通过直线创建一个矩形,我得出了以下结论: function rectfunction(x,y,w,h) x1 = [x,x+w,x+w,x,x,x+w,x+w,x] y1 = [y+h,y+h,y,y,y,y,y+h,y] line([x1,y1]) %top %line([x,y+h],[x+w,y+h]) %bottom %line([x+w,y],[x,y]) %le

我正在尝试创建一个简单的MatLab脚本,只是学习了一些基础知识,但在使用自定义函数时遇到了一些问题

我试图通过一个函数通过直线创建一个矩形,我得出了以下结论:

function rectfunction(x,y,w,h)
x1 = [x,x+w,x+w,x,x,x+w,x+w,x]
y1 = [y+h,y+h,y,y,y,y,y+h,y]

line([x1,y1])

%top
%line([x,y+h],[x+w,y+h])
%bottom
%line([x+w,y],[x,y])
%left
%line([x,y],[x+w,y])
%right
%line([x+w,y+h],[x+w,y])
最后注释掉的代码是最有效的版本,只有在x/y或w/h值不同时才会出现问题。我被告知要像我尝试的那样使用向量,但现在似乎什么也画不出来

我在另一个脚本中称之为:

axis([0 100 0 100])
rectfunction(20,20,60,60)
在此问题上的任何帮助都将不胜感激,谢谢

编辑:我应该补充一点,这是早期大学作业的一部分,我不能简单地使用“矩形”,因为它违背了研讨会的目的

另外,下面是一个示例,说明我的注释掉的代码如何错误地处理不同的值:


但是,如果x/y和w/h使用相同的值,则绘制得很好。

如果函数中的点太多,则只需:

function rectfunction(x,y,w,h)
x1 = [x,x+w,x+w,x,x];
y1 = [y+h,y+h,y,y,y+h];

line(x1,y1)

不管x/y和w/h是否使用相同的值,它都应该工作。

+1用于发布尝试