gimp_selection_bounds()
選択範囲のバウンディングボックス(境界ボックス)の座標情報を返します。
GIMPで1000×1000の画像を作成し「Ctrl」+「A」で全選択。
メニュー「フィルター」→「Python-Fu」→「コンソール」を起動
以下をコードを実行
image = gimp.image_list()[0]
pdb.gimp_selection_bounds(image)
結果
(1, 0, 0, 1000, 1000)
non_empy…1(TRUE) 範囲選択されている。0(FALSE) 範囲選択されていない
x1…0 バウンディングボックスの左上隅のx座標
y1…0 バウンディングボックスの左上隅のy座標
x2…1000 バウンディングボックスの右下隅のx座標
y2…1000 バウンディングボックスの右下隅のy座標
座標が0~1000だと1001ピクセルになるので、右下隅の座標は999になると思われる。
ただ、この値は各ピクセルにアクセスするループをする場合都合がよかったりします。
for x in range(x1, x2):
0~999までループしてくれます。
逆にループする場合は、ちょっと理解しにくいコードになります。
for x in range(x2-1, x1-1, -1):
999~0までのループになります。
コメント