最小包圍矩形

2021-08-30 13:22:04 字數 591 閱讀 3073

題目內容:

給定一組二維座標,表示直角座標系內的乙個多邊形的連續的頂點的座標序列。計算能包圍這個多邊形的平行於座標軸的最小矩形,輸出它的左下角和右上角的座標。

輸入格式:

第一行是乙個正整數n表示頂點的數量,第二行是n組整數,依次表示每個頂點座標的x和y值。

輸出格式:

四個整數,依次表示所計算的矩形的左下角的座標的x、y值和右上角座標的x、y值。輸出最後帶有回車換行。

輸入樣例:

1 1 1 4 3 7 4 4 4 1

輸出樣例:

1 1 4 7

#includeint main()

} int ymin,ymax;

ymin = ymax = y[0];

for( int i=1; iymax )

} printf("%d %d %d %d\n",xmin,ymin,xmax,ymax);

return 0;

}

matlab練習程式(最小包圍矩形)

又是計算幾何,我感覺最近對計算幾何上癮了。當然,工作上也會用一些,不過工作上一般直接呼叫boost的geometry庫。上次寫過最小包圍圓,這次是最小包圍矩形,要比最小包圍圓複雜些。最小包圍矩形可不一定是個直立的矩形,也可能像下圖一樣是傾斜的。求法如下 1.求多邊形凸包,這裡凸包直接呼叫系統函式了,...

matlab練習程式(最小包圍矩形)

又是計算幾何,我感覺最近對計算幾何上癮了。當然,工作上也會用一些,不過工作上一般直接呼叫boost的geometry庫。上次寫過最小包圍圓,這次是最小包圍矩形,要比最小包圍圓複雜些。最小包圍矩形可不一定是個直立的矩形,也可能像下圖一樣是傾斜的。求法如下 1.求多邊形凸包,這裡凸包直接呼叫系統函式了,...

最小包圍凸包

最近看了最小凸包繪製,官方 沒看,常見的有graham s scan演算法 其實原理比較簡單,先將點集排序,之後根據左轉進行棧掃瞄。1.點集排序 一般取x座標最小的,並且盡量y大的,靠左下角的點作為起始點。然後連線起始點p0與其他點,計算連線與豎直向下方向的夾角,按照大小順序排列。s p1,p2,p...