package net.sf.openrocket.gui.figure3d.photo.sky;
import java.net.URL;
import javax.media.opengl.GL;
import javax.media.opengl.GL2;
import javax.media.opengl.glu.GLU;
import javax.media.opengl.glu.GLUquadric;
import net.sf.openrocket.gui.figure3d.TextureCache;
import com.jogamp.opengl.util.texture.Texture;
public class SkySphere extends Sky {
private final URL imageURL;
public SkySphere(final URL imageURL) {
this.imageURL = imageURL;
}
@Override
public void draw(GL2 gl, final TextureCache cache) {
gl.glCullFace(GL.GL_FRONT);
gl.glPushMatrix();
GLU glu = new GLU();
gl.glRotatef(90, 1, 0, 0);
Texture sky = cache.getTexture(imageURL);
sky.enable(gl);
sky.bind(gl);
gl.glColor3d(1, 1, 1);
GLUquadric q = glu.gluNewQuadric();
glu.gluQuadricTexture(q, true);
glu.gluQuadricOrientation(q, GLU.GLU_OUTSIDE);
glu.gluSphere(q, 1f, 20, 20);
sky.disable(gl);
gl.glPopMatrix();
gl.glCullFace(GL.GL_BACK);
}
}