OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

Java 3Dで二次関数のグラフを描く

  • すぐに回答を!
  • 質問No.246567
  • 閲覧数449
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 27% (30/110)

Java3Dを使ってサーフボードを作ってみようと思っているのですが、初歩中の初歩からつまずいています。public BranchGroup createSceneGraph()の中に以下のようなコードを書いたのですが、load test can't be instantiatedと出ます(testはアプレットの名前です)。そもそもこのエラーがどのような物なのかも分からないのですが、以下のコードのどこがおかしいのか教えてください。お願いします。

//createSceneGraph()の一部
Point3d[] vertices = new Point3d[400];
double step = (1 - (-1)) / 400;
int i = 0;
for(double x= -1; x < 1; x += step){
  // x座標が x と x+step の間を計算して線分で結
  vertices[i] = new Point3d(x, f(x), 0.0);
  vertices[1+1] = new Point3d(x + step, f(x+step), 0.0);
  i += 2;
}

double f(double x){
  return a*x*x + b*x + c;
}
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全1件)

  • 回答No.1
レベル13

ベストアンサー率 50% (604/1207)

load test can't be instantiated(testをインスタンス化できない)と出ているので、このコード内にエラーメッセージの原因があるとは思えないのですが、とりあえず、お書きになられたコードで修正すべき点を上げておきます。 double step = (1 - (-1)) / 400; ↓整数型と浮動小数点型はしっかり区別。 double step = (1.0 ...続きを読む
load test can't be instantiated(testをインスタンス化できない)と出ているので、このコード内にエラーメッセージの原因があるとは思えないのですが、とりあえず、お書きになられたコードで修正すべき点を上げておきます。

double step = (1 - (-1)) / 400;
↓整数型と浮動小数点型はしっかり区別。
double step = (1.0 - (-1.0)) / 400.0;

変数iとの兼ね合いもあるため、ループカウンタに浮動小数点型はお勧めできません。
修正例)
double x = -1.0;
int i = 0;
while (i < 400) {
  vertices[i] = new Point3d(x, f(x), 0.0);
  i++;
  x += step;
  vertices[i] = new Point3d(x, f(x), 0.0);
  i++;
}
↑元のコードをそのまま修正したものです。(ループカウンタをxからiにしました)
↓でもループの中はこっちのほうが正しいような気がします。
while (i < 400) {
  vertices[i] = new Point3d(x, f(x), 0.0);
  i++;
  x += step;
}
補足コメント
northcurlcurl

お礼率 27% (30/110)

UKYのおっしゃるとおり、エラーの原因はこのロープの部分ではなく、コンストラクターにpublicを付け忘れてたせいでした。エラーはなくなったのですが、何も表示されないんです。どのような原因が考えられるのでしょうか?
投稿日時 - 2002-04-04 12:48:04


このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ