當前位置: 首頁>>代碼示例>>Java>>正文


Java GL2.glFlush方法代碼示例

本文整理匯總了Java中javax.media.opengl.GL2.glFlush方法的典型用法代碼示例。如果您正苦於以下問題:Java GL2.glFlush方法的具體用法?Java GL2.glFlush怎麽用?Java GL2.glFlush使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在javax.media.opengl.GL2的用法示例。


在下文中一共展示了GL2.glFlush方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: renderSquare

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public static void renderSquare(OpenGLContext context,float zoomWidth,float zoomHeight,List<Geometry>geometries,Geometry selectedGeometry,float renderWidth,Color color){
	GL2 gl = context.getGL().getGL2();
       float[] c = color.brighter().getColorComponents(null);
       gl.glColor3f(c[0], c[1], c[2]);

	for (Geometry temp : geometries) {
           gl.glLineWidth(temp == selectedGeometry ? renderWidth * 3 : renderWidth);
           Coordinate point = new Coordinate(temp.getCoordinate());
           point.x = (point.x - context.getX()) / zoomWidth;
           point.y = 1 - (point.y - context.getY()) / zoomHeight;
           double rectwidth = 0.01;
           gl.glBegin(GL.GL_LINE_STRIP);
           gl.glVertex2d(point.x - rectwidth, point.y - rectwidth);
           gl.glVertex2d(point.x - rectwidth, point.y + rectwidth);
           gl.glVertex2d(point.x + rectwidth, point.y + rectwidth);
           gl.glVertex2d(point.x + rectwidth, point.y - rectwidth);
           gl.glVertex2d(point.x - rectwidth, point.y - rectwidth);
           gl.glEnd();
           gl.glFlush();
       }
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:22,代碼來源:GL2ShapesRender.java

示例2: renderCross

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public static void renderCross(OpenGLContext context,float zoomWidth,float zoomHeight,List<Geometry>geometries,Geometry selectedGeometry,float renderWidth,Color color){
	GL2 gl = context.getGL().getGL2();
       float[] c = color.brighter().getColorComponents(null);
       gl.glColor3f(c[0], c[1], c[2]);
       if(geometries!=null){
		for (Geometry temp : geometries) {
	        gl.glLineWidth(temp == selectedGeometry ? renderWidth * 2 : renderWidth);
	        Coordinate point = new Coordinate(temp.getCoordinate());
	        point.x = (point.x - context.getX()) / zoomWidth;
	        point.y = 1 - (point.y - context.getY()) / zoomHeight;
	        double rectwidth = 0.01;
	        gl.glBegin(GL.GL_LINE_STRIP);
	        gl.glVertex2d(point.x - rectwidth, point.y);
	        gl.glVertex2d(point.x + rectwidth, point.y);
	        gl.glEnd();
	        gl.glBegin(GL.GL_LINE_STRIP);
	        gl.glVertex2d(point.x, point.y - rectwidth);
	        gl.glVertex2d(point.x, point.y + rectwidth);
	        gl.glEnd();
	        gl.glFlush();
	    }
       }	
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:24,代碼來源:GL2ShapesRender.java

示例3: renderTriangle

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public static void renderTriangle(OpenGLContext context,float zoomWidth,float zoomHeight,List<Geometry>geometries,Geometry selectedGeometry,float renderWidth,Color color){
	GL2 gl = context.getGL().getGL2();
       float[] c = color.brighter().getColorComponents(null);
       gl.glColor3f(c[0], c[1], c[2]);
       if(geometries!=null){
		for (Geometry temp : geometries) {
	        gl.glLineWidth(temp == selectedGeometry ? renderWidth * 2 : renderWidth);
	        Coordinate point = new Coordinate(temp.getCoordinate());
	        point.x = (point.x - context.getX()) / zoomWidth;
	        point.y = 1 - (point.y - context.getY()) / zoomHeight;
	        double rectwidth = 0.01;
	        gl.glBegin(GL.GL_LINE_STRIP);
	        gl.glVertex2d(point.x - rectwidth, point.y - rectwidth);
	        gl.glVertex2d(point.x, point.y + rectwidth);
	        gl.glVertex2d(point.x + rectwidth, point.y - rectwidth);
	        gl.glVertex2d(point.x - rectwidth, point.y - rectwidth);
	        gl.glEnd();
	        gl.glFlush();
	    }
       }	
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:22,代碼來源:GL2ShapesRender.java

示例4: renderCircle

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public static void renderCircle(OpenGLContext context,float zoomWidth,float zoomHeight,List<Geometry>geometries,Geometry selectedGeometry,float size,Color color){
	GL2 gl = context.getGL().getGL2();
	float[] c = color.brighter().getColorComponents(null);
       gl.glColor3f(c[0], c[1], c[2]);
	gl.glBegin(GL.GL_POINTS);
   	
   	for (int ii=0;ii<geometries.size();ii++) {
   	   Geometry temp =geometries.get(ii);
   	   gl.glLineWidth(temp == selectedGeometry ? size * 2 : size);
   	   gl.glPointSize(temp == selectedGeometry ? size * 2 : size);
          Coordinate point = temp.getCoordinate();
          double dx=(point.x - context.getX()) / zoomWidth;
          double dy=1 - (point.y - context.getY()) / zoomHeight;
   	   for (int i=0; i < 360; i++){
   		   //double angle = 2 * Math.PI * i / 360;
   		   double xx = dx+Math.sin(i)*0.005;
   		   double yy = dy+Math.cos(i)*0.005;
   		   
   		   gl.glVertex2d(xx,yy);
   	   }
       } 
    gl.glEnd();
       gl.glFlush();
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:25,代碼來源:GL2ShapesRender.java

示例5: drawPoly

import javax.media.opengl.GL2; //導入方法依賴的package包/類
/**
   * 
   * @param gl
   * @param cs
   * @param width
   * @param height
   * @param x
   * @param y
   */
  public static void drawPoly(OpenGLContext context,Coordinate[] cs,float width,float height,int x,int y,float rwidth,Color color){
GL2 gl = context.getGL().getGL2();
float[] c = color.getColorComponents(null);
      gl.glColor3f(c[0], c[1], c[2]);
  	gl.glLineWidth(rwidth);
      gl.glBegin(GL.GL_LINE_STRIP);
      
     // System.out.println("----------------------------------");
      for (int p = 0; p < cs.length; p++) {
      	double vx=(cs[p].x - x) / width;
      	double vy=1 - (cs[p].y - y) / height;
      //	System.out.println(vx+"  "+vy+",");
          gl.glVertex2d(vx,vy);
      }
   //   System.out.println("----------------------------------");
      //close polygon
      Coordinate point = cs[0];
      gl.glVertex2d((point.x - x) / width, 1 - (point.y - y) / height);
      
      gl.glEnd();
      gl.glFlush();
  }
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:32,代碼來源:GL2ShapesRender.java

示例6: drawPoly

import javax.media.opengl.GL2; //導入方法依賴的package包/類
/**
 *
 * @param gl
 * @param cs
 * @param width
 * @param height
 * @param x
 * @param y
 */
protected void drawPoly(GL2 gl,Coordinate[] cs,float width,float height,int x,int y,float rwidth){
	gl.glLineWidth(rwidth);
    gl.glBegin(GL.GL_LINE_STRIP);
    for (int p = 0; p < cs.length; p++) {
    	double vx=(cs[p].x - x) / width;
    	double vy=1 - (cs[p].y - y) / height;
        gl.glVertex2d(vx,vy);
    }

    //close polygon
    Coordinate point = cs[0];
    gl.glVertex2d((point.x - x) / width, 1 - (point.y - y) / height);
    gl.glEnd();
    gl.glFlush();
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:25,代碼來源:SimpleGeometryLayer.java

示例7: render

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public void render(OpenGLContext context) {
    if (initPosition == null) {
        return;
    }
    int x = context.getX(), y = context.getY();
    float zoom = context.getZoom(), width = context.getWidth() * zoom, height = context.getHeight() * zoom;
    GL2 gl = context.getGL().getGL2();
    gl.glLineWidth(1);
    float[] c = Color.GREEN.getColorComponents(null);
    gl.glColor3f(c[0], c[1], c[2]);
    gl.glBegin(GL.GL_LINE_STRIP);
    gl.glVertex2d((initPosition.x - x) / width, 1 - (initPosition.y - y) / height);
    if (endPosition == null) {
        gl.glVertex2d((imagePosition.x - x) / width, 1 - (imagePosition.y - y) / height);
    } else {
        gl.glVertex2d((endPosition.x - x) / width, 1 - (endPosition.y - y) / height);
    }
    gl.glEnd();
    gl.glFlush();
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:21,代碼來源:PositionLayer.java

示例8: paint

import javax.media.opengl.GL2; //導入方法依賴的package包/類
@Override
public void paint(){
	// Compute maximum width of text we're going to draw
	TextRenderer textRenderer = new TextRenderer(new Font(Font.SERIF,0 , 18));
	
    int maxTextWidth = (int) textRenderer.getBounds(this.text).getWidth();
    maxTextWidth = Math.min(maxTextWidth+10,size.width);
	
	GL2 gl=glContext.getGL2();
	gl.glClear(GL.GL_COLOR_BUFFER_BIT);
	gl.glPolygonMode (GL2.GL_FRONT, GL2.GL_LINE_STRIP);
    gl.glColor3f(0.5f, 0.5f, 0.5f);

    gl.glBegin(GL2.GL_LINE_STRIP);
    gl.glVertex2i( this.posx,this.posy);							//x1,y1
    gl.glVertex2i( this.posx+maxTextWidth,this.posy );				//x2,y1
    gl.glVertex2i( this.posx+maxTextWidth,this.posy +size.height); 	//x2,y2 
    gl.glVertex2i( this.posx,this.posy+size.height);				//x1,y2
    gl.glVertex2i( this.posx,this.posy);	
    gl.glEnd( );
    
    
    GLDrawable draw=gl.getGL().getContext().getGLDrawable();
	textRenderer.beginRendering(draw.getWidth(),draw.getHeight());
	textRenderer.setColor(Color.WHITE);
	textRenderer.setSmoothing(true);
	textRenderer.draw(this.text,(int)posx,(int)posy+5); //text and position
	textRenderer.flush();
	textRenderer.endRendering();
	
	gl.glFlush();
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:33,代碼來源:GLButton.java

示例9: renderPolygons

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public static void renderPolygons(OpenGLContext context,float zoomWidth,float zoomHeight,List<Geometry>geometries,float size,Color color){
	GL2 gl = context.getGL().getGL2();
	float[] c = color.brighter().getColorComponents(null);
       gl.glColor3f(c[0], c[1], c[2]);
	gl.glPointSize(size);
       gl.glBegin(GL.GL_POINTS);
       for (Geometry temp : geometries) {
           for (Coordinate point : temp.getCoordinates()) {
               gl.glVertex2d((point.x - context.getX()) / zoomWidth, 1 - (point.y - context.getY()) / zoomHeight);
           }
       }
       gl.glEnd();
       gl.glFlush();
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:15,代碼來源:GL2ShapesRender.java

示例10: renderPolygon

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public static void renderPolygon(OpenGLContext context,float zoomWidth,float zoomHeight,Coordinate[] coordinates,float size,Color color){
	GL2 gl = context.getGL().getGL2();
	float[] c = color.brighter().getColorComponents(null);
       gl.glColor3f(c[0], c[1], c[2]);
	gl.glPointSize(size);
       gl.glBegin(GL.GL_LINE_STRIP);
       for (Coordinate point : coordinates) {
           gl.glVertex2d((point.x - context.getX()) / zoomWidth, 1 - (point.y - context.getY()) / zoomHeight);
       }
       //Coordinate point = temp.getCoordinates()[0];
       //gl.glVertex2d((point.x - x) / width, 1 - (point.y - y) / height);

       gl.glEnd();
       gl.glFlush();
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:16,代碼來源:GL2ShapesRender.java

示例11: renderPoint

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public static void renderPoint(OpenGLContext context,float zoomWidth,float zoomHeight,Coordinate point,float size,Color color){
	GL2 gl = context.getGL().getGL2();
       float[] c = color.brighter().getColorComponents(null);
       gl.glColor3f(c[0], c[1], c[2]);
       gl.glPointSize(size);
       gl.glBegin(GL.GL_POINTS);
       gl.glVertex2d((point.x - context.getX()) / zoomWidth, 1 - (point.y - context.getY()) / zoomHeight);
       gl.glEnd();
       gl.glFlush();
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:11,代碼來源:GL2ShapesRender.java

示例12: render

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public void render(OpenGLContext context) {
    GL2 gl = context.getGL().getGL2();
    gl.glColor3f(1, 1, 1);
    gl.glLineWidth(1.0f);
    gl.glBegin(GL.GL_LINE_LOOP);
    float zoom=context.getZoom();
    gl.glVertex2f(context.getX() / (1f*width),1-context.getY() / (1f*height));
    gl.glVertex2f((context.getX() + zoom*context.getWidth()) / width,1- context.getY() / (1f*height));
    gl.glVertex2f((context.getX() + zoom*context.getWidth()) / width,1- (context.getY() + zoom*context.getHeight()) / height);
    gl.glVertex2f(context.getX() / (1f*width),1-(context.getY() + zoom*context.getHeight()) / height);
    gl.glEnd();
    gl.glFlush();


}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:16,代碼來源:CaretLayer.java

示例13: display

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public void display(GLAutoDrawable drawable) 
{
  GL2 gl = drawable.getGL().getGL2();
  switch(cmd)
    {
    case UPDATE:
      drawScene(gl);
      break;
    case SELECT:
      int buffsize = 512;
      double x = (double) mouse_x, y = (double) mouse_y;
      int[] viewPort = new int[4];
      IntBuffer selectBuffer = Buffers.newDirectIntBuffer(buffsize);
      int hits = 0;
      gl.glGetIntegerv(GL2.GL_VIEWPORT, viewPort, 0);
      gl.glSelectBuffer(buffsize, selectBuffer);
      gl.glRenderMode(GL2.GL_SELECT);
      gl.glInitNames();
      gl.glMatrixMode(GL2.GL_PROJECTION);
      gl.glPushMatrix();
      gl.glLoadIdentity();
      glu.gluPickMatrix(x, (double) viewPort[3] - y, 5.0d, 5.0d, viewPort, 0);
      glu.gluOrtho2D(0.0d, 1.0d, 0.0d, 1.0d);
      drawScene(gl);
      gl.glMatrixMode(GL2.GL_PROJECTION);
      gl.glPopMatrix();
      gl.glFlush();
      hits = gl.glRenderMode(GL2.GL_RENDER);
      processHits(hits, selectBuffer);
      cmd = UPDATE;
      break;
    }
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:34,代碼來源:Picking.java

示例14: drawSurface

import javax.media.opengl.GL2; //導入方法依賴的package包/類
private void drawSurface(GLAutoDrawable drawable) {
	GL2 gl = drawable.getGL().getGL2();
	gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
	gl.glPushMatrix();
	gl.glEvalMesh2(GL2.GL_FILL, 0, 20, 0, 20);
	gl.glPopMatrix();
	gl.glFlush();
}
 
開發者ID:akmaier,項目名稱:CONRAD,代碼行數:9,代碼來源:SurfaceTest.java

示例15: drawScene

import javax.media.opengl.GL2; //導入方法依賴的package包/類
public void drawScene(GL2 gl)
{
  gl.glClear(GL2.GL_COLOR_BUFFER_BIT | GL2.GL_DEPTH_BUFFER_BIT);

  // Colors
  float red[] =   {1.0f,0.0f,0.0f,1.0f};
  float green[] = {0.0f,1.0f,0.0f,1.0f};
  float blue[] =  {0.0f,0.0f,1.0f,1.0f};
	
  // Red rectangle
  GLRectangleEntity r1 = new GLRectangleEntity(gl, glu);
  r1.x = 0.15f;
  r1.y = 0.25f;
  r1.z = 0.75f;
  r1.w = 0.4f;
  r1.h = 0.4f;
  r1.c = red;
  r1.id = 10;
  r1.draw();

  // Green rectangle
  GLRectangleEntity r2 = new GLRectangleEntity(gl, glu);
  r2.x = 0.35f;
  r2.y = 0.45f;
  r2.z = 0.5f;
  r2.w = 0.4f;
  r2.h = 0.4f;
  r2.c = green;
  r2.id = 20;
  r2.draw();

  // Blue rectangle
  GLRectangleEntity r3 = new GLRectangleEntity(gl, glu);
  r3.x = 0.45f;
  r3.y = 0.15f;
  r3.z = 0.25f;
  r3.w = 0.4f;
  r3.h = 0.4f;
  r3.c = blue;
  r3.id = 30;
  r3.draw();

  gl.glFlush();
}
 
開發者ID:ec-europa,項目名稱:sumo,代碼行數:45,代碼來源:Picking.java


注:本文中的javax.media.opengl.GL2.glFlush方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。