import jlab.graphics.*;
public class Ball3DX extends Ball3D {
private int color = DWindow.BLACK;
private DImage image = null;
public Ball3DX(double r, double x, double y, double z) {
super(r, x, y, z);
}
public void setColor(int c) {
color = c;
}
public void setImage(String imageFile) {
image = new DImage(imageFile);
r = image.getWidth()/2;
}
public void draw(DWindow3D w3) {
drawShadow(w3);
if (image != null) {
w3.drawImage(image, x, y, z);
} else {
w3.fillEllipse(color, x, y, z, 2*r, 2*r);
}
}
private void drawShadow(DWindow3D w3) {
double s = y / w3.getHeight();
w3.fillEllipse(DWindow.BLACK, x, w3.getHeight(), z,
2*r*s, r/2*s);
}
}
|