【Processing】copy()関数の使い方【画像をコピーする】

  • URLをコピーしました!
ワタタク

今回の記事の目的はProcessingの「copy()」を理解し、自分なりに使ってみること。

この記事を書いた人

クリエイティブコーダー Watataku のプロフィール写真
ワタタク(Watataku)

上達の研究家 / アーティスト

「才能」ではなく「論理(システム)」で、人の心を動かす機能するアートを探究中

【文系・36歳・未経験】から独学でクリエイティブコーディングに挑戦し、独自の思考法で以下の実績を達成

  • 開始1年8ヶ月目までに公募6つに挑戦し、3つ入選(勝率50%)
  • 開始1年9ヶ月目に、虎ノ門ヒルズ ステーションタワー49階 スカイガーデン&プールのために制作した作品が展示される

記事内のProcessingのバージョンは4.3。

目次

【Processing】copy()について

copy()について
  • 「copy」は英語で「コピーする」という意味
  • copy()、画像をコピーするために使います
    • たくさん複製することで、デザインの表現力を向上する
  • 【注意点】コピーする位置とサイズを正しく指定しないと、思ったように表示されないことがあります

【Processing】copy()の書き方【構文】

copy()の書き方【構文】
  • copy(src, sx, sy, sw, sh, dx, dy, dw, dh)
    • src: コピー元の画像
    • sx: コピー元画像のX座標(開始位置)
    • sy: コピー元画像のY座標(開始位置)
    • sw: コピーする幅
    • sh: コピーする高さ
    • dx: コピー先画像のX座標(貼り付け位置)
    • dy: コピー先画像のY座標(貼り付け位置)
    • dw: コピー先画像の幅
    • dh: コピー先画像の高さ

【Processing】copy()の使い方【画像とコード】

コピーする画像

コピーした後の画像

// 画像の情報を格納する変数を宣言
PImage img;

void setup() {
  // 画像を読み込み
  img = loadImage("bledlake.jpg");
  // ウィンドウのサイズを400x400に設定
  size(400, 400);
}

void draw() {
  // 画像の一部(左上100x100ピクセル)を
  // 新しい位置(200, 200)に同じサイズでコピー
  copy(img, 0, 0, 100, 100, 200, 200, 100, 100);
}

【Processing】copy()を使ってみた感想

copy()を使うと、指定した部分が正確にコピーされて新しい位置に表示されました。

とても便利で、画像を加工するのに非常に役立つツールだと感じました。

複数の画像を組み合わせることで、面白いアート作品やデザインを作成してみたいと思います。

copy()を使って背景に小さな画像を散りばめたり、特定のパターンを繰り返し表示させるような作品をつくるのが楽しみ。

ワタタク

それでは今日もレッツワクワクコーディング。

ワタタク(Watataku)
上達の研究家
アナログ絵画(2025.11~) × クリエイティブコーディング(2024.3~)

「不完全な人間(Analog)」が、「完全な論理(Algorithm)」を武器にどこまで行けるか。

手描きの一本の線(One)をコードで無限(All)に拡張し、再び一つの作品へ定着させる。「才能」ではなく「発見」と「システム」で描く、人生をかけた実験記録。

溢れる思考を、独自の脳内OS「Watataku Blueprint」で整理し、初心者から世界で活躍するまでの「激闘」と「攻略本」を公開しています。

▼【創作×上達】思考を「作品」に変える、モレスキン6冊の運用設計図
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次