ファイル出力
下記のプログラムはランダムな黒い円を10個描くプログラムです。描かれた円の大きさ(wの値)を知りたいのでwの値を1つづつテキストファイルに出力するようにしたいのです。宜しくお願いします。
import ij.*;
import ij.process.*;
import ij.gui.*;
import java.awt.*;
import java.util.Random;
import ij.plugin.*;
public class Random_1 implements PlugIn {
public void run(String arg) {
IJ.run("New...", "name='Random 1' type='32-bit RGB' width=256 height=256");
drawOvals();
}
void drawOvals() {
ImagePlus imp = WindowManager.getCurrentImage();
Random ran = new Random();
int width = imp.getWidth();
int height = imp.getHeight();
for (int i=0; i<500; i++) {
int w = (int)(ran.nextDouble()*width/16+1);
int h = w;
int x = (int)(ran.nextDouble()*width-w/2);
int y = (int)(ran.nextDouble()*height-h/2);
IJ.setForegroundColor((int)(0),
(int)(0), (int)(0));
IJ.makeOval(x, y, w, h);
IJ.run("Fill");
}
}
}
補足
ありがとうございます。 返事遅くなってすみません。 範囲を-50~+50に変更しました。 それで(Math.random() * 100) - 50 にしたところたとえば+24.0や-8.0というように小数点以下に.0というふうについてしまいます。 (int)をつけても同じでした。 どうしてなのかご存知ですか? ご存知だったらおしえてください。 お願いします。