質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.79%

エラー eclipse java processing

受付中

回答 4

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 2,913

score 258

クラスファイルが見つからないという事で、いろいろいじっていたらUsage: PApplet [options] <class name> [sketch args]
See the Javadoc for PApplet for an explanation.
というものが出てきました。

コード
import processing.core.PApplet;
import processing.core.PImage;

public class MyPapplet extends PApplet {
    private String URL = "http:///...jpg";
    private PImage backgroundImg;

    public void setup() {
        size(200, 200);
        backgroundImg = loadImage(URL, "jpg");
    }

    public void draw() {
        backgroundImg.resize(0,height);
        image(backgroundImg,0,0);

    }
}


上のコードを実行できるようにしたいのですが、
知恵をいただきたいです。

processingの版を記入し忘れました、すいません。
processing3を使っています。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 4

0

「See the Javadoc for PApplet for an explanation. 」と、記載されている通り、PAppletクラスのJavaDocを確認したほうが良いかと思いますよ!

https://www.youtube.com/watch?v=0cqSjyvA8EY

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/01/14 01:31 編集

    (すみません、運営に届くものかと思い書いてしまいましたがあまり気にしないでください。)

    キャンセル

0

public static void main(String args[]) {
    PApplet.main("MyPapplet");
}

をdraw関数の下に追記してください。
余談ですがPAppletはP(rocessing)Appletかと思いますのでキャメル記法なら"MyPApplet"のほうが適切かと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

現象が再現できないので、原因はよくわかりませんが、
参考までに報告します。

まず、Processing は 2 と 3 で大きく事情が違いますので、
Processing の質問をされる場合はどちらを使っているかを書かれた方がいいと思います。

eclipse java processing で applet を使用されているということはおそらく 2 をお使いだと思いますので、
私の環境

Eclipse IDE for Java Developers
Version: Mars.1 Release (4.5.1)

Proclipsing 0.4.2.7

processing-2.1.2-windows64

で以下のコードを動かしてみたところ、問題なく動作しました。
(URLを完全なものにしただけです)

import processing.core.PApplet;
import processing.core.PImage;

public class MyPapplet extends PApplet {
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    private String URL = "https://upload.wikimedia.org/wikipedia/commons/6/6b/Phalaenopsis_JPEG.jpg";
    private PImage backgroundImg;

    public void setup() {
        size(200, 200);
        backgroundImg = loadImage(URL, "jpg");
    }

    public void draw() {
        backgroundImg.resize(0,height);
        image(backgroundImg,0,0);

    }
}

ですので、このコードに起因する問題ではないと思いますので、もう少し簡単なサンプルや、
Processing の自前の IDE で動作するかどうかも確認されてはどうでしょうか。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

processing3 ということは、Eclipse 上で applet として実行することはできないはずですが、
ご質問のエラーはどういった方法で実行された場合に出ましたか?
お使いのプラグインと実行方法をお教えください。
(すいません、自分が proclipsing を使っていたので、
同じプラグインをお使いと思い込んでいましたが、違っていた場合話が合いません)

前述のこちらの環境で processing-3.0.1 を使って kurogomapurin さんが回答されたように、
main() メソッドを補完したものを実行してみましたが、最終的には動作しました。
一点、問題があって、Eclipse 上で書く場合、 size() メソッドは setup() メソッド内では
使用できないので、 setting() メソッドを別途オーバーライドして、
その中で記述する必要があります。
つまり、変更点は、

  • main() メソッドの追加
  • size() メソッドの setting() メソッドへの移動

の二点です。

変更後の以下のコードを、

右クリック->[実行]->[Javaアプリケーション]

で実行したところ、画像が表示されました。

import processing.core.PApplet;
import processing.core.PImage;

public class MyPapplet extends PApplet {
    /**
     * 
     */
    private String URL = "https://upload.wikimedia.org/wikipedia/commons/6/6b/Phalaenopsis_JPEG.jpg";
    private PImage backgroundImg;

    public void settings() {
        size(200, 200);    
    }

    public void setup() {
        backgroundImg = loadImage(URL, "jpg");
    }

    public void draw() {
        backgroundImg.resize(0,height);
        image(backgroundImg,0,0);

    }

    public static void main(String args[]) { 
        PApplet.main("MyPapplet"); 
    }
}

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/01/14 13:10

    はい、そのように書いたとところ実行できました。
    初めてprocessing を使うのですが、3は使いやすいものなのでしょうか?

    キャンセル

  • 2016/01/14 17:07

    実行できるようになってなによりです。

    2 と 3 の違いについては、私もそこまで使い込んでいるわけではないのでよくわかりません。
    よくわからないような状態なのでとりあえず最新のものを使うということで 3 を使っています。
    私の場合、処理の主な部分は Java で組んで、Processing はもっぱらフロントエンドとして使っているので、
    多少の違いはあまり重要ではないということもあります。
    setup() で size() が使えない件とアプレットでなくなった件には少し面喰いましたが、
    分かれば簡単なことで、アプレットを作る予定もとくにないのであまり関係ないです。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.79%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る