matlab中的rectwin函式是什麼用途的

時間 2021-05-02 11:23:21

1樓:芮蘊古城

面三個繪圖函式需要乙個指向矩形結構的指標:

fillrect

(hdc,

&rect,

hbrush)

;framerect

(hdc,

&rect,

hbrush)

;invertrect

(hdc,

&rect)

;在這些函式中,rect引數是乙個rect型態的結構,它包含有4個字段:left、top、right和bottom。這個結構中的座標被當作邏輯座標。

fillrect用指定畫刷來填入矩形(直到但不包含right和bottom座標),該函式不需要先將畫刷選進裝置內容。

framerect使用畫刷畫矩形框,但是不填入矩形。使用畫刷畫矩形看起來有點奇怪,因為對於我們所介紹過的函式(如rectangle),其邊線都是用目前畫筆繪製的。framerect允許使用者畫乙個不一定為純色的矩形框。

該邊界框為乙個邏輯單位元寬。如果邏輯單位大於裝置單位,則邊界框將會為2個圖素寬或者更寬。

invertrect將矩形中所有圖素翻轉,1轉換成0,0轉換為1,該函式將白色區域轉變成黑色,黑色區域轉變為白色,綠色區域轉變成洋紅色。

windows還提供了9個函式,使您可以更容易、更清楚地操作rect結構。例如,要將rect結構的四個字段設定為特定值,通常使用如下的程式段:

rect.left

=xleft

;rect.top

=xtop

;rect.right

=xright

;rect.bottom

=xbottom

;但是,通過呼叫setrect函式,只需要一道敘述就可以得到同樣的結果:

setrect

(&rect,

xleft,

ytop,

xright,

ybottom);

2樓:數螞蟻

一、理論準備

matlab函式randn:產生均值為0,方差 σ^2 = 1,標準差σ = 1的正態分佈的隨機數或矩陣的函式。

用法:y = randn(n),返回乙個n*n的隨機項的矩陣。如果n不是個數量,將返回錯誤資訊。

y = randn(m,n) 或 y = randn([m n]),返回乙個m*n的隨機項矩陣。

y = randn(m,n,p,...) 或 y = randn([m n p...]),產生隨機數組(感覺就是三維陣列,請看如下例子)。

1: >> rand(1,2,3)

2: ans(:,:,1) =

3: 0.445586200710899 0.646313010111265

4: ans(:,:,2) =

5: 0.709364830858073 0.754686681982361

6: ans(:,:,3) =

7: 0.276025076998578 0.679702676853675

y = randn(size(a)),返回乙個和a有同樣維數大小的隨機數組。

randn

s = randn('state'),估計和c++裡初始化隨機種子乙個意思,隨便了。

二、舉例分析

產生乙個隨機分布的指定均值和方差的矩陣:將randn產生的結果乘以標準差,然後加上期望均值即可。例如,產生均值為0.6,方差為0.1的乙個5*5的隨機數方式如下:

1: x = .6 + sqrt(0.1) * randn(5)

其他類似函式:rand, randperm, sprand, sprandn

三、拓展

用matlab隨機產生60個1到365之間的正數 1+fix(365*rand(1,60)),fix就是取整函式。

用rand函式隨機取100個從-1到2的數x1,x2,...,x = rand(1,100) * 2 - 1。

逗號表示行,分號表示列。

四、參考資料:

3樓:擺渡尋音

window=rectwin(length(x));

得到n點的方窗,n大小等於x的維數(長度)

matlab的plot命令,matlab中 plot函式全部功能怎麼用

我行我素 畫出圖形後一看就明白了 中括號一般表示區間或資料點,plot 2,1.1 中表示y座標,plot 2,1.1,1.1,2 1.1,1.1,1.1,1.1 中表示x座標和y座標的區間端點和資料值 1 沒有中括號就是表示點的意思,第一個就畫點 2,1.1 2 像樓上說得,中括號是構造矩陣用的,...

matlab中矩陣寫入的問題,matlab中矩陣寫入txt文件的問題

521煙雨曉曉 先新建一個命名tt.txt的文件,在建一個m檔案,把這些copy進去就ok了。a 1 2 3 4 5 b 6 7 8 9 0 fid fopen tt.txt wt i size a j size b m max i 2 j 2 for k 1 m if k i 2 fprintf ...

如何在matlab中呼叫matlab中已有的函式

呼叫函式檔案 myfile.m clear clcfor t 1 10 y mylfg t fprintf m 1 3 6.4f n t,y end 自定義函式檔案 mylfg.m function y mylfg x 注意 函式名 mylfg 必須與檔名 mylfg.m 一致 y x 1 3 注 ...