groovyで画像をさまざまなパターンで塗りつぶすには、以下のコードを実行します。
import groovy.swing.j2d.*
def gr = new GraphicsRenderer()
gr.renderToFile("sample859a.png", 200, 200){
antialias("on")
rect( x: 0, y: 0, width: 200, height: 200,
borderColor: no){
texturePaint(x: 0, y: 0, file: 'sf.jpg' )
filters {
smear(shape:smearLines,
density:0.8, distance:8, angle:10)
}
}
}
gr.renderToFile("sample859b.png", 200, 200){
antialias("on")
rect( x: 0, y: 0, width: 200, height: 200,
borderColor: no){
texturePaint(x: 0, y: 0, file: 'sf.jpg' )
filters {
smear(shape:smearCrosses,
density:0.8, distance:8, angle:10)
}
}
}
gr.renderToFile("sample859c.png", 200, 200){
antialias("on")
rect( x: 0, y: 0, width: 200, height: 200,
borderColor: no){
texturePaint(x: 0, y: 0, file: 'sf.jpg' )
filters {
smear(shape:smearCircles,
density:0.8, distance:8, angle:10)
}
}
}
gr.renderToFile("sample859d.png", 200, 200){
antialias("on")
rect( x: 0, y: 0, width: 200, height: 200,
borderColor: no){
texturePaint(x: 0, y: 0, file: 'sf.jpg' )
filters {
smear(shape:smearSquares,
density:0.8, distance:8, angle:10)
}
}
}
元画像(sf.jpg)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxwnkwoj_qx0S5BpC93Gw-86070rwijdq_5bJLpYTyqi1CBxbXkvn9eDrtY593tcLDD15ReAUlFpjeTrtstClQLn9Md8bT1fhx_hKNJNeNfRfQLaTVnjNftwl3fWNPR1ykABeD/s320/SF.JPG)
出力画像1(sample859a.png):指定の角度の線で塗りつぶし
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjigOBOkHq6aNUQZZn_V-LQslfStiOsvELl3ZpFTrKWxkYbShXfwH09zTV9WX1rna7l17Jj14-uT7MerVSfRyMl2efEZS2YCyb6vLwLGIdCs8G1ATVkD_bGRJs9F1KF1RjZ9pRk/s320/sample859a.png)
出力画像2(sample859b.png):十字で
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEin3It8Zs30V4-OWTwZjXxZrpiP40KizZQyz-qdm4qOfIjlWkMfnbXie1VIIpEynHLdB-S6_PW5lWnZ1zxBk5k-ZrW0jSnbq5-SHW8urQX54McOTWMnkgolAkURfE9xiaRAZra6/s320/sample859b.png)
出力画像3(sample859c.png):円で塗りつぶし
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBb5OkFBgcAkt4Pq4TWaYtAeHu4h7vJtXwxH0NaSWbH_LlVgBkqtjXOkkpqb87qsCWQg942fwYF-I00_6PiLB8gGRl_PbJhTsp_4k5w5rK-HvNpbF6IaeP-WrIB0f6IoKQjrBF/s320/sample859c.png)
出力画像4(sample859d.png):四角で塗りつぶし
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuCMFxtbSQXZo3YqyH_2GHKHQ-cKQEzO4CDoNieeZbrFppgHMTAz_Fg50kTaRU2and_HaG-GrZZ-6Yoczna8fMp92KxlNCVVf1rymBlHDUjxkIeepOzUqE0wUtcnqxCTFcjmUD/s320/sample859d.png)
動作環境
Groovy1.6.0 Beta2, JDK1.6 Update11
関連項目
groovyで画像にスタンプフィルタをかけるgroovyで画像を感光させたように加工するgroovyで画像を2値化する