Java(Eclipse) で Processing Library の作成

* 以前に EVERNOTE にて書いたものより転載

環境設定


  • Eclipse の起動
  • File > New > Java Project
    Project name : 任意   //今回は「makeProcessingLibrary」とした
    /* Windows の場合、
    JRE : たぶんProcessingが使っているランタイムのバージョンに合わせる
    // メモ : ランタイムのバージョンに合わせて、ライブラリを作らなくてはならない
    */
    で、Finish
  • Package Explorer の表示されたプロジェクトを選択、展開
  • プロジェクトを選択した状態で、左クリック(control + Click)
  • Build Path > Add External Archives
    Processing の core.jar をOpen
    MacOSXの場合、/Applications/Processing 0135/lib/core.jar
    >>プロジェクトに Referenced Libraries > core.jar が追加される

ライブラリクラスの作成

  • プロジェクトを選択した状態で、左クリック(control + Click)
  • New > Class
    Package : 任意(自分のドメインを逆から配置していくのがセオリー)//今回は「com.example.HelloWorld」とした

    Name : 任意(英字大文字で始めるのがセオリー)//今回は「HelloWorld」とした
    で、Finish
  • サンプルコード

[java]
package com.example.HelloWorld;

import processing.core.*;

public class HelloWorld {

//Field property
PApplet parent;

String name;

//constructor
public HelloWorld(PApplet parent){
this.parent = parent; //processng.core の PApplet.class から参照できるようにする
parent.println(parent.sketchPath); //PAppletにはskechPathというのが用意されていたりする

parent.println(“processing:println ” Hello World! “”);//processing の メソッドを使える

System.out.println(“java:println ” Hello World! “”);//もちろん Java のメソッドでも
}

public HelloWorld(String name){//コンストラクタのオーバーライド?!
this.name = name;
System.out.println( “” ” + name + ” Welcome to World! “”);
}

//method
public void showname(){
if(name != null) System.out.println(name);
}

}

[/java]

パッケージ化

  • Finderで

  • Processing / libraries に作成しようとしているライブラリのフォルダを作成する

    MacOSXの場合、
    /Applications/Processing 0135/libraries/HelloWorld
    /Applications/Processing 0135/libraries/HelloWorld/library
    /Applications/Processing 0135/libraries/HelloWorld/code
    の3つを用意することになる
  • Eclipseで
  • プロジェクトを選択した状態で、左クリック(control + Click)
  • New > File
    File name : build.xml
    で、Finish
  • サンプルコード:テンプレートとして

[xml]


Build file for processing libray






destfile="${dest}/HelloWorld.jar"
basedir="${build}"
includes="com/example/HelloWorld/*.class"
/>



[/xml]

  • 書き換えるポイント
    サンプルコードの赤字を作成するライブラリによって書き換える
    HelloWorld はライブラリ名
    com/example/HelloWorld のところは、Eclipseでライブラリクラスを作成するときに決めた Package name によって階層が異なるので注意
    ex. Package name : test.HelloWorld の場合、test/HelloWorld となる(EclipseのworkspaceをFinderで直接確認すれば確実)
  • Package Explorer 上に作成された build.xml を選択した状態で、左クリック(control + Click
  • Run As > Ant Build
  • Console に、BUILD SUCCESSFUL と表示されていれば、OK

Processing での実装


  • Processing の起動(すでに立ち上がっているなら、Processingの再起動)
  • Sketch > Import Library… > HelloWorld
  • サンプルコード

[java]
import com.example.HelloWorld.*;

HelloWorld a;
HelloWorld b;

void setup(){
a = new HelloWorld(this);
b = new HelloWorld(“ksmda tmya”);

b.showname();
}

void draw(){

}
[/java]


  • 実行
  • できた!?

コメントをどうぞ