カレンダー
| 10 | 2025/11 | 12 |
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
最新記事
(01/30)
(01/18)
(12/16)
(12/12)
(11/25)
(11/25)
(11/24)
(11/24)
(11/22)
(11/17)
最新コメント
[12/25 日没]
[11/15 無色大師]
[11/12 無色大師]
[11/11 無色大師]
[11/08 無色大師]
リンク
新刊カレンダー
ブログ内検索
プロフィール
HN:
Nina.A
性別:
男性
趣味:
麻雀、ラノベ、漫画
自己紹介:
MJ4や天鳳等でよく麻雀やってます。もし会ったらよろしくです。
ブログは単なるメモ帳となる予定。
ブログは単なるメモ帳となる予定。
カウンタ
C/C++勉強中の大学生雑記
2025/11/05
10:56:21
2008/11/16
00:06:53
画像を他の画像の(x,y)を左上とする位置に合成する関数を作った。自分は使わないけど。
void combine(IplImage* img, IplImage* add, IplImage* mask, const int x, const int y){
assert( img != NULL && add != NULL && mask != NULL );
assert( add->width == mask->width && add->height == mask->height );
const int i_max( ((x+add->width ) > img->width ) ? img->width - x : add->width );
const int j_max( ((y+add->height) > img->height) ? img->height - y : add->height );
for(int j = 0; j < j_max; ++j){
for(int i = 0; i < i_max; ++i){
if( mask->imageData[ j*mask->widthStep + i ] != 0 ){
// imgの(x+i,y+j)をadd(i,j)で上書き
copyat(img, x+i, y+j, add, i, j);
}
}
}
return;
}
PR
この記事にコメントする
