个性化阅读
专注于IT技术分析

JOGL缩放

点击下载

在JOGL中, 缩放用于增加或减小对象的大小。它操纵对象的物理尺寸。因此, 通过缩放, 可以从对象的任何轴拉伸或收缩对象。

要缩放对象, 请使用以下语法:

glScalef(float a, float b, float c)

此处, GLMatrixFunc接口提供了glScalef()方法, 该方法具有表示尺寸的参数。

JOGL缩放示例

在此示例中, 我们将减小多边形的尺寸。

package com.srcmini.jogl;

	import javax.media.opengl.*;
	import javax.media.opengl.awt.GLCanvas; 

	import javax.swing.JFrame;
	
	public class JScaling implements GLEventListener {
	
	   @Override 
		
	public void display( GLAutoDrawable drawable ) { 
	
	final GL2 gl = drawable.getGL().getGL2(); 
	
	gl.glScalef( 0.40f, 0.30f, 0.40f ); 
	
		gl.glBegin(GL2.GL_QUADS);
		
		gl.glVertex3f( 0.0f, 0.5f, 0);
		gl.glVertex3f(-0.5f, 0f, 0);
		gl.glVertex3f(0f, -0.5f, 0);
		gl.glVertex3f(0.5f, 0f, 0);
		
		gl.glEnd();

	   }
	
	   @Override 
	public void dispose( GLAutoDrawable arg0 ) { 
	   } 
	
	   @Override 
	public void init( GLAutoDrawable arg0 ) { 
	   } 
	
	   @Override 
	public void reshape( GLAutoDrawable arg0, int arg1, int arg2, int arg3, int arg4 ) { 
	   }
	
	public static void main( String[] args ) {   
	
		final GLProfile gp = GLProfile.get(GLProfile.GL2);
		GLCapabilities cap = new GLCapabilities(gp);
		
		final GLCanvas gc = new GLCanvas(cap);
		JScaling js= new JScaling();
		gc.addGLEventListener(js);
		gc.setSize(400, 400);
		
		final JFrame frame = new JFrame("After Scaling");
		frame.add(gc);
		frame.setSize(500, 400);
		frame.setVisible(true);  
	   } 
		
	}

输出:

JOGL缩放输出
JOGL缩放输出1
赞(0)
未经允许不得转载:srcmini » JOGL缩放

相关推荐

评论 抢沙发

评论前必须登录!