package ip.hak;
import java.awt.*;
public class Preview extends ip.gui.frames.ClosableFrame {
Double4 d4[];
int w = 220;
int h = 240;
double max,min;
double s = 0.0;
public Preview(Double4 db4[]) {
super("Preview");
d4 = db4;
setSize(w, h);
init();
setVisible(true);
}
private void getMaxMin() {
max = min = d4[0].x;
for (int i = 1; i < d4.length; i++) {
if (max < d4[i].x + d4[i].r)
max = d4[i].x + d4[i].r;
if (min > d4[i].x - d4[i].r)
min = d4[i].x - d4[i].r;
}
for (int i = 0; i < d4.length; i++) {
if (max < d4[i].y + d4[i].r)
max = d4[i].y + d4[i].r;
if (min > d4[i].y - d4[i].r)
min = d4[i].y - d4[i].r;
}
}
private void init() {
getMaxMin();
s = (w - 20) / (max - min);
repaint();
}
public void paint(Graphics g) {
if (d4 == null || s == 0.0)
return;
for (int i = 0; i < d4.length; i++) {
int xp = (int) ((d4[i].x - min) * s);
int yp = h - 10 - (int) ((d4[i].y - min) * s);
int c = (int) (d4[i].r * s * 2);
int hc = c / 2;
g.drawOval(xp - hc, yp - hc, c, c);
}
}
}