<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>processing / Drkcore</title><link>http://blog.kzfmix.com/processing</link><description>Programming, Music, Snowboarding</description><language>ja</language><lastBuildDate>Fri, 08 Apr 2011 05:29:59 +0919</lastBuildDate><item><title>FORM+CODE -デザイン／アート／建築における、かたちとコード</title><link>http://blog.kzfmix.com/entry/1302208184</link><description>&lt;p&gt;&lt;a href="http://formandcode.com/"&gt;これ&lt;/a&gt;の日本語訳。サイトにcode exampleや本の中身が少し出てるのでどういう内容かはわかると思う。&lt;/p&gt;
&lt;p&gt;&lt;p&gt;&lt;div class="awsxom"&gt;
    &lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4861007518/ref=nosim/kaerutyuuihou-22"&gt;
    &lt;img src="http://ecx.images-amazon.com/images/I/61Jz5RQuRrL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
    &lt;strong&gt;FORM+CODE -デザイン／アート／建築における、かたちとコード&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
    &lt;br /&gt;
    ビー・エヌ・エヌ新社 / 2520円 ( 2011-04-25 )&lt;br /&gt;
    &lt;br /&gt;
    &lt;br clear="all" /&gt;
    &lt;/div&gt;&lt;/p&gt;&lt;/p&gt;
&lt;p&gt;というわけで、予約した。&lt;/p&gt;
&lt;p&gt;またprocessingいじり熱も再発するんだろうなぁ。&lt;/p&gt;</description><pubDate>Fri, 08 Apr 2011 05:29:59 +0919</pubDate><category>processing</category></item><item><title>Visualizing Data　chapter 7 (TreeMap)</title><link>http://blog.kzfmix.com/entry/1222081423</link><description>&lt;p&gt;processingを使ってデータの視覚化をするための基礎的な本。なのでprocessingでアート的なことをやる本とはちょっと違うかも。&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/0596514557/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51FI87ptqLL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;Visualizing Data&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
Ben Fry &lt;br /&gt;
Oreilly &amp; Associates Inc / ￥ 3,852 ()&lt;br /&gt;
在庫あり。&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;p&gt;スキャッタープロットとかネットワークを題材に「より効率的にデータを表現する」ということを考えていく。僕は、データとヒトの目という中途半端なデバイスをうまくつなげるミドルウェアのようなものはどういうものが良いのかということを考えていくための教科書的なものと位置づけて読んでる。&lt;/p&gt;

&lt;p&gt;7章はズームして掘っていけるようなTreeMapを実装する。TreeMapなら&lt;a href="http://www.scipy.org/Cookbook/Matplotlib/TreeMap?action=show&amp;amp;redirect=TreeMap"&gt;Matplotlib&lt;/a&gt;でももちろんできるけど、インタラクテイブ性をもたすならProcessingがいいかも。
あとこの本はコードの断片の説明というかたちが多いので別途&lt;a href="http://benfry.com/writing/archives/3"&gt;サンプルコード&lt;/a&gt;をダウンロードしながら読む必要がある。
僕はjavaとprocessingがまだ拙いので、単に写経していくだけでは動かず、悩むことが多かったため、なかなか読み進められていないが、良書の予感はする（びしびしと）。&lt;/p&gt;
</description><pubDate>Tue, 24 Aug 2010 20:04:18 +0919</pubDate><category>processing</category><category>VD</category></item><item><title>pyprocessing</title><link>http://blog.kzfmix.com/entry/1255525483</link><description>&lt;p&gt;pythonでprocessingっぽいことをやろうというプロジェクトが立ち上がってた。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://code.google.com/p/pyprocessing/"&gt;pyprocessing&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;楽しみ。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://r1chardj0n3s.googlepages.com/bruce"&gt;bruce&lt;/a&gt;とかでかっこいいプレゼンが出来るようになると嬉しい。&lt;/p&gt;
</description><pubDate>Tue, 24 Aug 2010 20:03:59 +0919</pubDate><category>Python</category><category>processing</category></item><item><title>A Face for Richie Hawtin</title><link>http://blog.kzfmix.com/entry/1225802783</link><description>&lt;p&gt;ruby-processingのところの&lt;a href="http://github.com/jashkenas/ruby-processing/wikis/gallery"&gt;Gallery&lt;/a&gt;にあったA Face for Richie Hawtinはマイクの音に反応する。&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.kzfmix.com/images/blog/ffrh.png" alt="ffrh" /&gt;&lt;/p&gt;

&lt;p&gt;椎名林檎の時は暴走するを流して適当にスクリーンショットを撮ってみた。&lt;/p&gt;

&lt;p&gt;あとで&lt;a href="http://ashkenas.com/codework/a_face_for_stephen_hawking.html"&gt;コード&lt;/a&gt;をちゃんと見てみる。&lt;/p&gt;
</description><pubDate>Tue, 12 Jan 2010 11:26:05 +0919</pubDate><category>Ruby</category><category>processing</category></item><item><title>jythonでprocessing</title><link>http://blog.kzfmix.com/entry/1206881034</link><description>&lt;p&gt;Built with Processing [改訂版]が到着したので、これを手本にjythonで書いていく。&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4861005582/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/41XEE%2BuMOzL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;Built with Processing [改訂版]&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
前川 峻志,田中 孝太郎 &lt;br /&gt;
ビー・エヌ・エヌ新社 / ￥ 3,570 ()&lt;br /&gt;
&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://hysysk.blogspot.com/2007/11/jython-p52.html"&gt;jython + p5#2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.backspaces.net/hacks/30/processing-with-jython"&gt;Processing: .. with Jython&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;を参考にして、step 04-aを。&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.kzfmix.com/images/blog/processing04a.png" alt="step 04-a" /&gt;&lt;/p&gt;

&lt;p&gt;ソース。jythonだとswing呼んだりしないといけない。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;from javax.swing import JFrame
from processing.core import PApplet

class Sketch(PApplet):
    def __init__(self):
        pass

    def setup(self):
        self.size(200, 200)

    def getField(self, name):
        return self.class.superclass.getDeclaredField(name).get(self)

    def draw(self):
        self.rectMode(PApplet.CENTER)
        self.colorMode(PApplet.HSB, 100)
        self.background(99)
        self.noStroke()
        self.smooth()

        self.fill(45, 60, 99)
        self.rect(100, 100, 100, 100)

        self.fill(45, 40, 99)
        self.rect(100, 100, 60, 60)

        self.fill(45, 20, 99)
        self.rect(100, 100, 20, 20)

        self.noFill()
        self.strokeWeight(60)

        self.stroke(80, 99, 99, 30)
        self.ellipse(50, 50, 200, 200)
        self.ellipse(150, 50, 200, 200)
        self.ellipse(50, 150, 200, 200)
        self.ellipse(150, 150, 200, 200)

def run(applet):
    frame = JFrame(title="Processing",
                   resizable = 0,
                   defaultCloseOperation=JFrame.EXIT_ON_CLOSE)
    frame.contentPane.add(applet)
    applet.init()
    frame.pack()
    frame.visible = 1

if __name__ == '__main__':
    run(Sketch())
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;video入力いじりたいからUSBカメラ買わなきゃ。&lt;/p&gt;
</description><pubDate>Tue, 12 Jan 2010 11:00:36 +0919</pubDate><category>Python</category><category>jython</category><category>processing</category></item><item><title>jythonでprocessing 080331</title><link>http://blog.kzfmix.com/entry/1206975655</link><description>&lt;p&gt;processingは繰り返しがfor(i=0;i&amp;lt;10;i++)のCっぽい書き方だけど、jythonだったらrangeが使えるのでお手軽でいいんじゃないか。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;def setup(self):
    self.size(200, 200)
    self.colorMode(PApplet.HSB, 100)
    self.background(99)
    self.noStroke()

def draw(self):
    for y in range(10):
        for x in range(10):
            self.fill(x*10, 10 + y*10, 99)
            self.rect(x*20, y*20, 10, 10)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;img src="http://www.kzfmix.com/images/blog/processing_list2-6-b.png" alt="list2-6-b" /&gt;&lt;/p&gt;
</description><pubDate>Tue, 12 Jan 2010 11:00:21 +0919</pubDate><category>Python</category><category>jython</category><category>processing</category></item><item><title>jython+processingでpdfを生成</title><link>http://blog.kzfmix.com/entry/1207398352</link><description>&lt;p&gt;processingはpdfに出力できるらしい。同じことはjythonでも可能でしょう。&lt;/p&gt;

&lt;p&gt;と思いつつ、三日くらいはまった。classpathにpdf.jarだけでなくitext.jarも設定しておかないといけなかったのがわからなかった。itextってのはフリーの&lt;a href="http://www.atmarkit.co.jp/fjava/javatips/134java025.html"&gt;pdfライブラリ&lt;/a&gt;らしい。それにしても、classpathがどんどん長くなっていくのが気持ち悪いなぁ。もうちょっとスマートに記述する方法もあるんだろうな。&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.kzfmix.com/images/blog/noiseline.png" alt="noise.line" /&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;from javax.swing import JFrame
from processing.core import PApplet
from random import randint
import processing.pdf


class Sketch(PApplet):
    def __init__(self):
        pass

    def setup(self):
        self.size(200, 200, PApplet.PDF,"noiseline.pdf")
        self.colorMode(PApplet.HSB, 100)
        self.noFill()
        self.fluc_color = 50

    def getField(self, name):
        return  self.class.superclass.getDeclaredField(name).get(self)

    def draw(self):
        self.background(0)
        for i in range(0, 200 ,5):
            self.fluc_color += randint(-10,10)
            self.stroke(self.fluc_color, 60, 90, 30)

            fluc_y = 0
            self.beginShape()

            for j in range(0, 200, 5):
                fluc_y += randint(-2, 2)
                self.vertex(j, i + fluc_y)

            self.endShape()
        self.exit()

def run(applet):
    frame = JFrame(title="Processing",
                   resizable = 1,
                   defaultCloseOperation=JFrame.EXIT_ON_CLOSE)
    frame.contentPane.add(applet)
    applet.init()
    frame.pack()
    frame.visible = 1

if __name__ == '__main__':
    run(Sketch())
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;実際に生成されるpdfは&lt;a href="http://www.kzfmix.com/images/blog/noiseline.pdf"&gt;これ&lt;/a&gt;です。&lt;/p&gt;
</description><pubDate>Tue, 12 Jan 2010 10:59:25 +0919</pubDate><category>Python</category><category>jython</category><category>processing</category></item><item><title>processing + jythonでGainerを制御する</title><link>http://blog.kzfmix.com/entry/1207469282</link><description>&lt;p&gt;processing使ってGainerにアクセスするjythonスクリプト。gainer.jarだけではなく、serialフォルダのRXTXcomm.jarにもclasspathを通しておく。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://gainer.cc/Tutorial/HowToUseGainerWithProcessing?p=8"&gt;ボタンを押すと白黒するサンプル&lt;/a&gt;を書いてみた。&lt;/p&gt;

&lt;p&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/2VNK8Cqz4Pw&amp;amp;hl=en"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/2VNK8Cqz4Pw&amp;amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;

&lt;p&gt;コード&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;from javax.swing import JFrame
from processing.core import PApplet
from processing.gainer import *

class Sketch(PApplet):
    def __init__(self):
        pass

    def setup(self):
        self.size(200, 200)
        self.gainer = Gainer(self,'COM8')

    def getField(self, name):
        return self.class.superclass.getDeclaredField(name).get(self)

    def draw(self):
        self.background(0)
        if(self.gainer.buttonPressed):
            self.background(255)

def run(applet):
    frame = JFrame(title="Processing",
                   resizable = 1,
                   defaultCloseOperation=JFrame.EXIT_ON_CLOSE)
    frame.contentPane.add(applet)
    applet.init()
    frame.pack()
    frame.visible = 1

if __name__ == '__main__':
    run(Sketch())
&lt;/code&gt;&lt;/pre&gt;
</description><pubDate>Tue, 12 Jan 2010 10:59:03 +0919</pubDate><category>Python</category><category>Gainer</category><category>jython</category><category>processing</category></item><item><title>jython+processingでwebカメラで取り込むサンプル</title><link>http://blog.kzfmix.com/entry/1209199125</link><description>&lt;p&gt;&lt;a href="http://blog.kzfmix.com/entry/1208956269"&gt;usbカメラを買った&lt;/a&gt;ので早速遊んでいる。ちなみに奥に見える黄色いのはjython本じゃなくて独習C++とかいう本。&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.kzfmix.com/images/blog/jython_w_webcam.png" alt="webcam" /&gt;&lt;/p&gt;

&lt;p&gt;drawメソッドでピクセルをいじくると色々とエフェクトがかけられるわけです。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;from javax.swing import JFrame
from processing.core import PApplet
from processing.video import *

class Sketch(PApplet):
    def __init__(self):
        pass

    def getField(self, name):
        return self.class.superclass.getDeclaredField(name).get(self)

    def setup(self):
        self.size(320, 240)
        self.camera = Capture(self, 320, 240, 12)

    def draw(self):
        self.camera.read()        
        self.image(self.camera, 0,0)

def run(applet):
    frame = JFrame(title="Processing camera",
                   resizable = 1,
                   defaultCloseOperation=JFrame.EXIT_ON_CLOSE)
    frame.contentPane.add(applet)
    applet.init()
    frame.pack()
    frame.visible = 1

if __name__ == '__main__':
    run(Sketch())
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;jython本が待ち遠しい。&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4839922829/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/41yCUBiGtZL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;Jythonプログラミング&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
西尾 泰和 &lt;br /&gt;
毎日コミュニケーションズ / ￥ 3,150 ()&lt;br /&gt;
在庫あり。&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;
</description><pubDate>Tue, 12 Jan 2010 10:57:28 +0919</pubDate><category>Python</category><category>jython</category><category>processing</category></item><item><title>Chuckで遊んでみた</title><link>http://blog.kzfmix.com/entry/1243770122</link><description>&lt;p&gt;朝から&lt;a href="http://chuck.cs.princeton.edu/"&gt;ChucK&lt;/a&gt;で遊ぶ。&lt;/p&gt;

&lt;p&gt;編集した結果をリアル気味に反映させたくなったのでperlで書いた(loop.pl)。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;use Path::Class;

my $file = $ARGV[0] || die "filename not found";

my $t = file($file)-&amp;gt;stat-&amp;gt;mtime;

system "chuck", "+", $file;

while(1){
  sleep 1;
  unless ($t == file($file)-&amp;gt;stat-&amp;gt;mtime) {
    system "chuck", "=", "1", $file;
    $t = file($file)-&amp;gt;stat-&amp;gt;mtime;
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;あとはChuckのサンプル(test.pl)&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;SinOsc s =&amp;gt; JCRev r =&amp;gt; dac;

.5 =&amp;gt; s.gain;
.2 =&amp;gt; r.mix;

[ 1, 3, 5, 7 ] @=&amp;gt; int note[];

while( true )
{
    Std.mtof(Std.rand2(1,3)*12 + 48 + note[Std.rand2(0,note.cap()-1)] ) =&amp;gt; s.freq;
    140::ms =&amp;gt; now;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;これで、chuckのほうをサバクラにするために&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;chuck --loop
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;で動かしておいて、別の端末から&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;perl loop.pl test.ck
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;これで、test.ckをエディタで編集して保存すると反映される。&lt;/p&gt;

&lt;p&gt;Arduinoとかで制御すればもっと面白くなりそう。CdSセンサとかで変化するようなのをつくってみてもいいし、ChucKをネットワーク越しに制御できるので音サーバーというのも面白いかもしれませんな。&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4873113849/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51i8Q20O9IL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;Making Things Talk -Arduinoで作る「会話」するモノたち&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
Tom Igoe &lt;br /&gt;
オライリージャパン / ￥ 3,990 ()&lt;br /&gt;
在庫あり。&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;
</description><pubDate>Sun, 31 May 2009 20:44:58 +0919</pubDate><category>perl</category><category>music</category><category>Gainer</category><category>processing</category><category>Arduino</category><category>chuck</category></item></channel></rss>