public class Object2D
/**
* A TwoD_Object contains two ints resembling its width and height,
* and a Color-Array constructed by them. That Array, contains the
* information about every possible point that could be used in the
* boundaries, set by int width and int height.
**/
{
int width;
int height;
Color PointInformation[][];
public void convertImageTo2DObject(BufferedImage image) {
this.width = image.getWidth();
this.height = image.getHeight();
this.PointInformation = new Color[width][height];
for (int row = 0; row < height; row++) {
for (int col = 0; col < width; col++) {
this.PointInformation[row][col] = Color(image.getRGB(col, row));
}
}
}
私は、2Dオブジェクトを象徴するクラスを書いています。各オブジェクトには、高さと幅の属性と、幅と高さによって設定された境界内の各可能なポイントの色を実際に含むサイズ [幅][高さ] の二次元カラー配列があります。これまでは、点や線などの単純なものをオブジェクトに正しく描画するいくつかのメソッドを書きましたが、今は画像を 2d オブジェクトの仕様に変換したいと考えています。
これを行うには、最初に importet BufferedImage の高さと幅が計算されます。
this.width = image.getWidth();
this.height = image.getHeight();
続いて、画像がコピーされるオブジェクトの PointInformation が再作成されます。
this.PointInformation = new Color[width][height];
これで、2 つの for ループが importet 画像の任意のピクセルに対して実行されます。
for (int row = 0; row < height; row++) {
for (int col = 0; col < width; col++) {
理論的には、色に変換された各ピクセルの RGB 値を、オブジェクト PointInformation の適切なスポットに割り当てます。
this.PointInformation[row][col] = Color(image.getRGB(col, row));
}
}
ここでの問題は、Netbeans のコンパイラが次のように教えてくれることです。
Cannot find symbol
symbol: method Color(int)
location: class Object2D
したがって、どういうわけかこの行に問題があります。
this.PointInformation = new Color[width][height];
しかし、私は何が問題なのか理解していません!私はすでにやった
import java.awt.Color;
import java.awt.image.BufferedImage;
(ここには表示されませんが)、私も試しました
import java.awt.*;
しかし、それも機能せず、その方法を知らないと言われました。
私が何を間違えたのか教えていただければ、本当にありがたいです!ありがとう!