本文整理汇总了Java中com.sun.opengl.util.GLUT类的典型用法代码示例。如果您正苦于以下问题:Java GLUT类的具体用法?Java GLUT怎么用?Java GLUT使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
GLUT类属于com.sun.opengl.util包,在下文中一共展示了GLUT类的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: renderPlacedMapEvent
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
/**
* Render {@link MapEvent} that is placed at fixed place (=not at the player).
* @param gl
* @param color what color should be map event drawn.
* @param mapEvent map event to render.
*/
private void renderPlacedMapEvent(GL gl, GlColor color, MapEvent mapEvent) {
LogMapMark mapMark = mapEvent.getMark();
Location position = mapMark.getLocation();
if (logger.isLoggable(Level.FINE)) logger.fine(" MSG: " + mapMark.getMessage() + ", LOC: " + position);
// gl.glEnable(GL.GL_BLEND);
// gl.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
gl.glPushMatrix();
{
gl.glTranslated(position.x, position.y, position.z + SPHERE_RADIUS * 1.1);
gl.glColor4d(color.r, color.g, color.b, color.a);
// glu.gluSphere(quadratic, SPHERE_RADIUS * 3, SPHERE_SLICES, SPHERE_STACKS);
glu.gluCylinder(quadratic, SPHERE_RADIUS, SPHERE_RADIUS, 2*SPHERE_RADIUS, 4, 1);
}
gl.glPopMatrix();
gl.glDisable(GL.GL_DEPTH_TEST);
{
gl.glColor3d(0, 0, 0);
gl.glRasterPos3d(position.x, position.y, position.z);
glut.glutBitmapString(GLUT.BITMAP_HELVETICA_12, mapEvent.getMessage());
gl.glColor3d(1, 1, 1);
}
gl.glEnable(GL.GL_DEPTH_TEST);
// gl.glDisable(GL.GL_BLEND);
}
示例2: VisualSignatureView
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
public VisualSignatureView(Rectangle worldWindowRect)
{
super(worldWindowRect);
GLCapabilities capabilities = new GLCapabilities();
setCanvas(new GLCanvas(capabilities));
// add a GLEventListener, which will get called when the
// canvas is resized or needs a repaint
getGLCanvas().addGLEventListener(this);
linesSet = new TreeSet( new LineComparator() );
//javax.swing.Timer timer = new javax.swing.Timer (10000, this);
//timer.start();
GLUT glut = new GLUT();
// precompute here for extra performance.
for(int i = 0; i < MARKED_PORTS.length; ++i)
{
MARKED_PORTS_HEIGHT[i] = HEIGHT * ( 1.0 - Math.pow(MARKED_PORTS[i], 0.333333) / CUBE_ROOT_65535);
MARKED_PORTS_HEIGHT_MINUS_12[i] = MARKED_PORTS_HEIGHT[i] - 12.0f;
MARKED_PORTS_AS_STRINGS[i] = Integer.toString(MARKED_PORTS[i]);
MARKED_PORTS_AS_STRINGS_WIDTH[i] = 5*glut.glutBitmapLength( GLUT.BITMAP_HELVETICA_10, MARKED_PORTS_AS_STRINGS[i] );
MARKED_PORTS_X[i] = PORT_AXIS_X_MINUS_20 - MARKED_PORTS_AS_STRINGS_WIDTH[i];
}
setName("VisualSignature");
}
示例3: renderVerticalBitmapString
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
public void renderVerticalBitmapString(GL gl, float x, float y, int bitmapHeight, int font, String string)
{
GLUT glut = new GLUT();
char c;
for (int i = 0; i < string.length(); ++i)
{
c = string.charAt(i);
gl.glRasterPos2f(x, y+bitmapHeight*i);
glut.glutBitmapCharacter(font, c);
}
}
示例4: axis
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
public void axis(GL gl, double length) {
GLUT glut = new GLUT();
// draw a z-axis, with cone at end
gl.glPushMatrix();
gl.glBegin(GL.GL_LINES);
gl.glVertex3d(0, 0, 0);
gl.glVertex3d(0, 0, length);
gl.glEnd();
gl.glTranslated(0, 0, length - 0.2);
glut.glutWireCone(0.04, 0.2, 12, 9);
gl.glPopMatrix();
}
示例5: drawText
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
private void drawText(GL gl, float x, float y, String text) {
GLUT glut = new GLUT();
// "shadow"
gl.glColor4d(0, 0, 0, 0.8);
gl.glRasterPos2f(x - 0.2f, y - 0.2f);
glut.glutBitmapString(GLUT.BITMAP_HELVETICA_18, text);
// text
gl.glColor4d(1, 1, 1, 0.8);
gl.glRasterPos2f(x, y);
glut.glutBitmapString(GLUT.BITMAP_HELVETICA_18, text);
}
示例6: renderInfo
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
/**
* Render info about agent (in most cases event messages) and its name.
* TODO: Ugly code, refactor
* @param gl
* @param color What color should be used to render info.
* @param location position of agent
*/
private void renderInfo(GL gl, GlColor color, Location location) {
// get text
List<String> infos = new ArrayList<String>(agent.getAssociatedInfo());
infos.add(0, '*' + agent.getName() + '*');
Location topHead = new Location(location);
topHead = new Location(topHead.x, topHead.y, topHead.z + 2 * SPHERE_RADIUS * 1.1);
Location top2d = GLTools.getScreenCoordinates(gl, glu, topHead, null);
int lineGap = 12;
int font = GLUT.BITMAP_HELVETICA_10;
int maxWidth = 0;
for (String line : infos) {
int lineWidth = glut.glutBitmapLength(font, line);
if (lineWidth > maxWidth) {
maxWidth = lineWidth;
}
}
// update starting position
top2d = new Location(top2d.x - maxWidth / 2, top2d.y + (infos.size() - 1) * lineGap);
GlColor textColor = color.getMixedWith(new GlColor(0, 0, 0), 80);
gl.glColor3d(textColor.r, textColor.g, textColor.b);
for (int i = 0; i < infos.size(); i++) {
String text = infos.get(i);
if (i == 0) {
gl.glColor3d(color.r, color.g, color.b);
} else {
gl.glColor3d(textColor.r, textColor.g, textColor.b);
// gl.glColor3d(0, 0, 0);
}
Location textPos = GLTools.getWorldCoordinates(gl, glu, top2d, null);
gl.glRasterPos3d(textPos.x, textPos.y, textPos.z);
glut.glutBitmapString(font, text);
top2d = top2d.setY(top2d.y - lineGap);
}
}
示例7: outputText
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
void outputText(GL gl, int x, int y, String text)
{
gl.glRasterPos2f(x, y);
glut.glutBitmapString(GLUT.BITMAP_HELVETICA_18, text);
}
示例8: display
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
/**
* Display event
*/
public void display(GLAutoDrawable GLAutoDrawable)
{
final GL gl = GLAutoDrawable.getGL();
gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT); //Clear the buffers
gl.glLoadIdentity(); //Reset the view
gl.glRotatef(xRotation, 1.0f, 0.0f, 0.0f);
gl.glRotatef(yRotation, 0.0f, 1.0f, 0.0f);
gl.glTranslatef(-xListenerPos, -yListenerPos, -zListenerPos);
// clear
gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
gl.glClearColor(0.4f, 0.6f, 1.0f, 0.0f);
gl.glEnable(GL.GL_TEXTURE_2D);
gl.glBindTexture(GL.GL_TEXTURE_2D, texture);
// draw geometry
drawGeometry(gl, walls);
drawGeometry(gl, rotatingMesh);
drawGeometry(gl, doorList[0]);
drawGeometry(gl, doorList[1]);
drawGeometry(gl, doorList[2]);
drawGeometry(gl, doorList[3]);
gl.glDisable(GL.GL_TEXTURE_2D);
// draw sound objects
for(int object = 0; object < objects.length; object++)
{
FloatBuffer directOcclusion = newFloatBuffer(SIZEOF_FLOAT);
FloatBuffer reverbOcclusion = newFloatBuffer(SIZEOF_FLOAT);
directOcclusion.put(0, 1.0f);
reverbOcclusion.put(0, 1.0f);
// set colour baced on direct occlusion
objects[object].channel.get3DOcclusion(directOcclusion, reverbOcclusion);
float intensity = 1.0f - directOcclusion.get(0);
gl.glPolygonMode(GL.GL_FRONT_AND_BACK, GL.GL_FILL);
gl.glPushMatrix();
gl.glTranslatef(objects[object].xPos, objects[object].yPos, objects[object].zPos);
gl.glPushAttrib(GL.GL_LIGHTING_BIT);
intensity *= 0.75f;
float[] color = new float[]{intensity, intensity, 0.0f, 0.0f};
gl.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_DIFFUSE, color, 0);
intensity *= 0.5f;
float[] ambient = new float[]{intensity, intensity, 0.0f, 0.0f};
gl.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT, ambient, 0);
gl.glRotatef(accumulatedTime * 200.0f, 0.0f, 1.0f, 0.0f);
new GLUT().glutSolidTorus(0.15f, 0.6f, 8, 16);
gl.glPopAttrib();
gl.glPopMatrix();
}
timerFunc();
}
示例9: drawAxis
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
void drawAxis(GL gl)
{
/////////////// Draw top and bottom boundaries //////////////////
gl.glColor3f(BG_RGB[0] + 0.1f, BG_RGB[1] + 0.1f, BG_RGB[2] + 0.1f);
gl.glPointSize(1.0f);
gl.glBegin(GL.GL_LINES);
gl.glVertex2d(0.0f, HEIGHT - 1);
gl.glVertex2d(WIDTH, HEIGHT - 1);
gl.glEnd();
gl.glBegin(GL.GL_LINES);
gl.glVertex2d(0.0f, 0.0f);
gl.glVertex2d(WIDTH, 0.0f);
gl.glEnd();
/////////////////////////////////////////////////////////////////
//if(DEBUG)System.out.println("VisualSignatureView: drawAxis() called");
GLUT glut = new GLUT();
gl.glColor3f(AXIS_RGB[0], AXIS_RGB[1], AXIS_RGB[2]);
gl.glPointSize(5.0f);
gl.glBegin(GL.GL_LINES);
gl.glVertex2d(PORT_AXIS_X, 0.0f);
gl.glVertex2d(PORT_AXIS_X, HEIGHT);
gl.glEnd();
for(int i = 0; i < MARKED_PORTS.length; ++i)
{
//double tmpHeight = 1.0 - Math.pow(MARKED_PORTS[i], .3333) / CUBE_ROOT_65535;
//tmpHeight *= HEIGHT;
gl.glBegin(GL.GL_LINES);
gl.glVertex2d(PORT_AXIS_X_MINUS_10, (float)MARKED_PORTS_HEIGHT[i]);
gl.glVertex2d(PORT_AXIS_X_PLUS_10, (float)MARKED_PORTS_HEIGHT[i]);
gl.glEnd();
///////////////////////////////////////////////////////////
if(isMaximized)
{
//int width = glut.glutBitmapLength( GLUT.BITMAP_HELVETICA_10, MARKED_PORTS_AS_STRINGS[i] );
gl.glRasterPos2f((float)MARKED_PORTS_X[i], (float)MARKED_PORTS_HEIGHT_MINUS_12[i]);
//Take a string and make it a bitmap, put it in the 'gl' passed over and pick
//the GLUT font, then provide the string to show
glut.glutBitmapString(GLUT.BITMAP_HELVETICA_10, MARKED_PORTS_AS_STRINGS[i]);
}
}
gl.glBegin(GL.GL_LINES);
gl.glVertex2d(ADDR_AXIS_X, 0.0f);
gl.glVertex2d(ADDR_AXIS_X, HEIGHT);
gl.glEnd();
if(isMaximized)
{
gl.glRasterPos2f(ADDR_AXIS_X_PLUS_20, HIGH_ADDR_HEIGHT);
glut.glutBitmapString(GLUT.BITMAP_HELVETICA_10, "255.255.255.255");
gl.glRasterPos2f(ADDR_AXIS_X_PLUS_20, LOW_ADDR_HEIGHT);
glut.glutBitmapString(GLUT.BITMAP_HELVETICA_10, "0.0.0.0" );
}
}
示例10: display
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
public void display(GLAutoDrawable drawable)
{
if(DEBUG)System.out.println("PongView: display() called");
long inTime = System.currentTimeMillis();
// System.out.println ("display()");
GL gl = getGLCanvas().getGL();
GLU glu = new GLU();
// is there a pending world window change?
if (worldWindowChanged)
resetWorldWindow(gl, glu);
//calls gl compiled drawStaticGraphics
gl.glCallList(1);
drawICMPChart(gl);
GLUT glut = new GLUT();
//update and draw every ball
updateDisplaySimul(gl, glut);
}
示例11: display
import com.sun.opengl.util.GLUT; //导入依赖的package包/类
@Override
public void display(GLAutoDrawable glAutoDrawable) {
// System.out.println("MER.display " + time + " " + this.mapEvent.getMessage());
GL gl = glAutoDrawable.getGL();
gl.glPushMatrix();
gl.glTranslated(location.x, location.y, location.z + 60 * 1.1);
// display small
// gl.glEnable(GL.GL_BLEND);
gl.glBlendFunc(GL.GL_SRC_ALPHA,GL.GL_ONE_MINUS_SRC_ALPHA);
GlColor color = new GlColor(entity.getColor(), 0.5);
gl.glColor4d(color.r, color.g, color.b, color.a);
GLUquadric quadratic = glu.gluNewQuadric();
glu.gluSphere(quadratic, SPHERE_RADIUS, SPHERE_SLICES, SPHERE_STACKS);
gl.glPopMatrix();
gl.glDisable(GL.GL_DEPTH_TEST);
gl.glColor3d(1,1,1);
gl.glRasterPos3d(location.x, location.y, location.z);
glut.glutBitmapString(GLUT.BITMAP_HELVETICA_12, this.mapEvent.getMessage());
gl.glEnable(GL.GL_DEPTH_TEST);
// gl.glDisable(GL.GL_BLEND);
}