Processing Advent Calendar 2014 参加記事
Processingには「tools」というPDEの拡張機能が入っています。
例えば、デフォルトで入っているカラーセレクターやフォント作成ツールなどがこれにあたります。
多くのP5erが利用したことがあるでしょう。
このツールは自作することもできます。
この記事では、ツールの自作について書かれている以下のページを翻訳し、まとめたものを掲載します。
Tool Overview · processing/processing Wiki - GitHub
Tool Basics · processing/processing Wiki - GitHub
processing/processing-tool-template - GitHub
---
ツールでできること
ツールを使うことによって、スケッチの内容を修正したり、ステータスバーにメッセージを表示したりできます。
スケッチの内容を修正するというのは、例えばコードを挿入するといった操作です。
あるいは、カラーセレクターのようなウィンドウを表示するために、PAppletや他のGUIライブラリ(JavaのSwingなど)も使うことができます。
また、スケッチフォルダの中のデータを操作することも可能です。
開発方法
後ほど詳しく述べますが、Processing Tool Template for Eclipseというものが用意されているので、
これを利用すると楽に開発できます。
なお、PDE上では開発できません。
あくまでも、PDEはProcessingのスケッチを制作するための環境として用意されています。
ツールの保存場所
自作ツールはProcessingのスケッチを保存しているフォルダの「tools」というフォルダの中に置く必要があります。
これは他の人がつくったツールをダウンロードした時も同様です。
Processingのバージョンが古い場合、toolsフォルダが存在しないかもしれないので、
新しくフォルダを作成してください。
その際、フォルダ名は間違っても「tool」にしないよう気をつけてください。
最後に「s」がつきます。「tools」フォルダです。
Eclipse用テンプレートの使い方
導入にあたっては、GitHubを利用する方法とパッケージそのものをダウンロードする方法がありますが、
ここでは後者について解説します。
まずは以下のページにアクセスしてください。
processing/processing-tool-template - GitHub
「Import to Eclipse」の中の「Option B: Downloaded Package」という項目の中に、
「1.Download the latest Eclipse template from here.」という文章があります。
ページの真ん中あたりです。
この「here」のリンクをクリックし、zipかtarファイルを選択してダウンロードします。
ダウンロードしても解凍しないでください。
Eclipseを起動し、メニューバーの「ファイル」から「新規」>「Javaプロジェクト」を選択します。
ツールのプロジェクト名をつけたら「完了」をクリックします。
パッケージ・エクスプローラー上に作成したプロジェクトが表示されるので、
右クリックして「インポート」を選択します。
「一般」の中の「アーカイブ・ファイル」を選択し、「次へ」をクリックします。
「ソース・アーカイブ・ファイル」に先ほどダウンロードした圧縮ファイルを指定して完了です。
ここで、Eclipseのワークスペースフォルダ内にpde.jarとcore.jarというファイルをコピーするため、
いったんEclipseから離れます。
WindowsかLinuxであれば、Processingのアプリケーション自体のフォルダ内の「lib」フォルダの中にあります。
OS Xの場合は、Processingのアプリケーションのアイコンを右クリックし、
「パッケージの内容を表示」をクリックします。
そこから、「Contents」>「Java」>「lib」とたどります。
ファイルが見つかったら、目的どおりコピーを行います。
Eclipseに戻り、再びプロジェクトのアイコンの上で右クリックし、プロパティを選択します。
左側の「Java Build Path」という項目を開き、「ライブラリー」タブを選択し、
「外部 Jar 追加...」をクリックします。
先ほどコピーしたpde.jarとcore.jarを選択したら完了です。
プロジェクト内の「processing-tool-template-[バージョン番号]」>「resources」から、
build.propertiesファイルをダブルクリックすると、内容が表示されます。
(「ビルド構成」が表示された場合は、下の方のタブを「ビルド」から「build.properties」に切り替えてください)
(1)から(5)までの項目について、確認してください。
特に(1)から(4)までの項目については注意してください。
(5)についても必要があれば変更を行ってください。
(1)...スケッチフォルダのパス
(2)...core.jarが置かれているパスやライブラリフォルダのパスなど
(3)...コンパイルに利用するJavaのバージョンなど
(4)...ツールの名前
(5)...作者やツールの情報など
メニューバーの「ウィンドウ」から「ビューの表示」>「Ant」を選択します。
右側に「Ant」タブが表示されるので、そこへプロジェクト内の「resources」>「build.xml」ファイルをドラッグします。
「ProcessingTools」という項目が表示されるのでクリックします。
同じAntタブの上部に実行ボタンが表示されるのでクリックします。
コンパイル後、「BUILD SUCCESSFUL」と表示されれば正常に動作しています。
この時、いくつか警告文が出ますが、これは無視して大丈夫です。
もし、ビルドが失敗してしまった場合は、もう一度build.propertiesファイルについて見なおしてみてください。
特に各種パスが正しく記述されているかチェックしてください。
ビルドが成功したら、Processingを起動してください。
メニューバーの「ツール」内に自作ツールの名前が増えていると思います。
デフォルトでは「Hello Tool」のはずです。
これをクリックすると、コンソールにメッセージやツールの情報が表示されます。
コードについて
プロジェクト内の「src」>「template」>「tool」>「HelloTool.java」がこのツールの本体とも言えるコードです。
以下のページのコードを参考に、クラス名等に配慮したコードを掲載します。
コピペして置き換えてみてください。
Tool Basics · processing/processing Wiki - GitHub
このツールを実行すると、Processingに「A Destructive Tool」というツールが表示されます。
これを実行すると、PDEのエディタ上に書かれたコードが
「Deleted your code. What now?」という文章に置き換わります。
では、それぞれのメソッドについて見ていきましょう。
public void init(Editor editor)
このメソッドはツールの最小限のセットアップをするためのものです。
ツールが呼び出された時、最初に一度だけ実行されます。
public void run()
ツールが呼び出された後、常時実行されるメソッドです。
public String getMenuTitle()
メニューにおけるツールの名前を設定するためのメソッドです。
アルファベットのみ使用することができます。
以下のクラスについては詳しいドキュメントが用意されています。
processing/Base.java - GitHub
Processingのメインアプリケーションに関するクラスです。
processing/Editor.java - GitHub
PDEのエディタに関するクラスです。
processing/Preferences.java - GitHub
ユーザの環境設定に関するクラスです。
processing/Sketch.java - GitHub
スケッチの情報に関するクラスです。
processing/SketchCode.java - GitHub
開いているスケッチのタブに関するクラスです。
また、保存する際は、一番上の階層のフォルダ名がツール名と同じになるように設定してください。
例:
以上がツールの作成方法になります。
実際に配布する際はTool Guidelinesに従い、
tool.propertiesファイルにツールについての説明を記述する等、
情報を整理した上で行ってください。
Processingには「tools」というPDEの拡張機能が入っています。
例えば、デフォルトで入っているカラーセレクターやフォント作成ツールなどがこれにあたります。
多くのP5erが利用したことがあるでしょう。
このツールは自作することもできます。
この記事では、ツールの自作について書かれている以下のページを翻訳し、まとめたものを掲載します。
Tool Overview · processing/processing Wiki - GitHub
Tool Basics · processing/processing Wiki - GitHub
processing/processing-tool-template - GitHub
---
ツールでできること
ツールを使うことによって、スケッチの内容を修正したり、ステータスバーにメッセージを表示したりできます。
スケッチの内容を修正するというのは、例えばコードを挿入するといった操作です。
あるいは、カラーセレクターのようなウィンドウを表示するために、PAppletや他のGUIライブラリ(JavaのSwingなど)も使うことができます。
また、スケッチフォルダの中のデータを操作することも可能です。
開発方法
後ほど詳しく述べますが、Processing Tool Template for Eclipseというものが用意されているので、
これを利用すると楽に開発できます。
なお、PDE上では開発できません。
あくまでも、PDEはProcessingのスケッチを制作するための環境として用意されています。
ツールの保存場所
自作ツールはProcessingのスケッチを保存しているフォルダの「tools」というフォルダの中に置く必要があります。
これは他の人がつくったツールをダウンロードした時も同様です。
Processingのバージョンが古い場合、toolsフォルダが存在しないかもしれないので、
新しくフォルダを作成してください。
その際、フォルダ名は間違っても「tool」にしないよう気をつけてください。
最後に「s」がつきます。「tools」フォルダです。
Eclipse用テンプレートの使い方
導入にあたっては、GitHubを利用する方法とパッケージそのものをダウンロードする方法がありますが、
ここでは後者について解説します。
まずは以下のページにアクセスしてください。
processing/processing-tool-template - GitHub
「Import to Eclipse」の中の「Option B: Downloaded Package」という項目の中に、
「1.Download the latest Eclipse template from here.」という文章があります。
ページの真ん中あたりです。
この「here」のリンクをクリックし、zipかtarファイルを選択してダウンロードします。
ダウンロードしても解凍しないでください。
Eclipseを起動し、メニューバーの「ファイル」から「新規」>「Javaプロジェクト」を選択します。
ツールのプロジェクト名をつけたら「完了」をクリックします。
パッケージ・エクスプローラー上に作成したプロジェクトが表示されるので、
右クリックして「インポート」を選択します。
「一般」の中の「アーカイブ・ファイル」を選択し、「次へ」をクリックします。
「ソース・アーカイブ・ファイル」に先ほどダウンロードした圧縮ファイルを指定して完了です。
ここで、Eclipseのワークスペースフォルダ内にpde.jarとcore.jarというファイルをコピーするため、
いったんEclipseから離れます。
WindowsかLinuxであれば、Processingのアプリケーション自体のフォルダ内の「lib」フォルダの中にあります。
OS Xの場合は、Processingのアプリケーションのアイコンを右クリックし、
「パッケージの内容を表示」をクリックします。
そこから、「Contents」>「Java」>「lib」とたどります。
ファイルが見つかったら、目的どおりコピーを行います。
Eclipseに戻り、再びプロジェクトのアイコンの上で右クリックし、プロパティを選択します。
左側の「Java Build Path」という項目を開き、「ライブラリー」タブを選択し、
「外部 Jar 追加...」をクリックします。
先ほどコピーしたpde.jarとcore.jarを選択したら完了です。
プロジェクト内の「processing-tool-template-[バージョン番号]」>「resources」から、
build.propertiesファイルをダブルクリックすると、内容が表示されます。
(「ビルド構成」が表示された場合は、下の方のタブを「ビルド」から「build.properties」に切り替えてください)
(1)から(5)までの項目について、確認してください。
特に(1)から(4)までの項目については注意してください。
(5)についても必要があれば変更を行ってください。
(1)...スケッチフォルダのパス
(2)...core.jarが置かれているパスやライブラリフォルダのパスなど
(3)...コンパイルに利用するJavaのバージョンなど
(4)...ツールの名前
(5)...作者やツールの情報など
メニューバーの「ウィンドウ」から「ビューの表示」>「Ant」を選択します。
右側に「Ant」タブが表示されるので、そこへプロジェクト内の「resources」>「build.xml」ファイルをドラッグします。
「ProcessingTools」という項目が表示されるのでクリックします。
同じAntタブの上部に実行ボタンが表示されるのでクリックします。
コンパイル後、「BUILD SUCCESSFUL」と表示されれば正常に動作しています。
この時、いくつか警告文が出ますが、これは無視して大丈夫です。
もし、ビルドが失敗してしまった場合は、もう一度build.propertiesファイルについて見なおしてみてください。
特に各種パスが正しく記述されているかチェックしてください。
ビルドが成功したら、Processingを起動してください。
メニューバーの「ツール」内に自作ツールの名前が増えていると思います。
デフォルトでは「Hello Tool」のはずです。
これをクリックすると、コンソールにメッセージやツールの情報が表示されます。
コードについて
プロジェクト内の「src」>「template」>「tool」>「HelloTool.java」がこのツールの本体とも言えるコードです。
以下のページのコードを参考に、クラス名等に配慮したコードを掲載します。
コピペして置き換えてみてください。
Tool Basics · processing/processing Wiki - GitHub
package template.tool;
import processing.app.*;
import processing.app.tools.*;
public class HelloTool implements Tool {
Editor editor;
public void init(Editor editor) {
this.editor = editor;
}
public void run() {
editor.setText("Deleted your code. What now?");
}
public String getMenuTitle() {
return "A Destructive Tool";
}
}
このツールを実行すると、Processingに「A Destructive Tool」というツールが表示されます。
これを実行すると、PDEのエディタ上に書かれたコードが
「Deleted your code. What now?」という文章に置き換わります。
では、それぞれのメソッドについて見ていきましょう。
public void init(Editor editor)
このメソッドはツールの最小限のセットアップをするためのものです。
ツールが呼び出された時、最初に一度だけ実行されます。
public void run()
ツールが呼び出された後、常時実行されるメソッドです。
public String getMenuTitle()
メニューにおけるツールの名前を設定するためのメソッドです。
アルファベットのみ使用することができます。
以下のクラスについては詳しいドキュメントが用意されています。
processing/Base.java - GitHub
Processingのメインアプリケーションに関するクラスです。
processing/Editor.java - GitHub
PDEのエディタに関するクラスです。
processing/Preferences.java - GitHub
ユーザの環境設定に関するクラスです。
processing/Sketch.java - GitHub
スケッチの情報に関するクラスです。
processing/SketchCode.java - GitHub
開いているスケッチのタブに関するクラスです。
また、保存する際は、一番上の階層のフォルダ名がツール名と同じになるように設定してください。
例:
MyTool/tool/MyTool.jar---
MyTool/src/
以上がツールの作成方法になります。
実際に配布する際はTool Guidelinesに従い、
tool.propertiesファイルにツールについての説明を記述する等、
情報を整理した上で行ってください。
コメント
このブログにコメントするにはログインが必要です。
さんログアウト
この記事には許可ユーザしかコメントができません。