Saturday, November 03, 2018

Processing3.4とjsilhouetteを使用して吹き出しを描画する

Processing3.4とjsilhouetteを使用して吹き出しを描画するには、以下のコードを実行します。jsilhouetteはhttp://code.google.com/p/jsilhouette/から jsilhouette-geom-0.3.1.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。

import processing.awt.*;
import java.awt.*;

// キャンバスサイズ
size(200, 200);
background(#f8f8ff);
// 描画用PGraphics作成
PGraphicsJava2D g2d=(PGraphicsJava2D)createGraphics(200, 200, JAVA2D);
g2d.beginDraw();
Graphics2D gr = g2d.g2;
gr.setColor(new Color(#ffcc00));
// 吹き出しを描画
gr.fill(new Balloon(50, 40, 100, 100, 20, 20, 40,
  Balloon.TAB_AT_BOTTOM, 0.5f, Balloon.ANGLE_AT_END));
g2d.endDraw();

image(g2d, 0, 0);
// ファイル保存
save("sample1482a.png");

出力画像(sample1482a.png)
Processingとjsilhouetteを使用して描画した吹き出し


○動作環境
Processing 3.4

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。

ProcessingとJava Image Filtersを使用して画像を左右反転・上下反転する

ProcessingとJava Image Filtersを使用して画像を左右反転・上下反転するには、以下のコードを実行します。Java Image Filtersはhttp://www.jhlabs.com/ip/filters/download.htmlからFilters.jarをダウンロードしてSketchのcodeサブフォルダに配置するか、Sketch->Add FilesメニューからSketchに追加します。

// キャンバスサイズ
size(200, 200);
PImage img = loadImage("SF.JPG");
// 左右反転
FlipFilter ff = new FlipFilter();
ff.setOperation(FlipFilter.FLIP_H);
PImage img2 = new PImage(ff.filter((java.awt.image.BufferedImage)img.getImage(), null));
image(img2, 0, 0);
// ファイル保存
save("sample1449a.png");

// 上下反転
FlipFilter ff2 = new FlipFilter();
ff2.setOperation(FlipFilter.FLIP_V);
PImage img3 = new PImage(ff2.filter((java.awt.image.BufferedImage)img.getImage(), null));
image(img3, 0, 0);
// ファイル保存
save("sample1449b.png");

元画像(sf.jpg):dataサブディレクトリに配置か、Add Filesで追加。


出力画像(sample1449a.png)
ProcessingとJava Image Filtersを使用して左右反転した画像


出力画像(sample1449b.png)
ProcessingとJava Image Filtersを使用して上下反転した画像


○動作環境
Processing 3.4

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。