Java Reference
In-Depth Information
}
G.13 key events response functIon for keyboard
navIGatIon
private void processKeyEvent(KeyEvent e)
{
int key = e.getKeyCode();
direction = key;
switch(key)
{
case Forward:
direction = Forward;
viewposi.x = viewposi.x-2.0f*SPAN*(float)Math.sin(turningAngle);
viewposi.z = viewposi.z-2.0f*SPAN*(float)Math.cos(turningAngle);
setPosition(bodyTrans, viewposi);
setPosition(viewTrans, viewposi);
if (outsideTrans!=null)
setPosition(outsideTrans, new Point3f(Outsidescale*viewposi.x, outsideposi.y, outsideposi.z));
break;
case Backward:
direction = Backward;
viewposi.x = viewposi.x+2.0f*SPAN*(float)Math.sin(turningAngle);
viewposi.z = viewposi.z+2.0f*SPAN*(float)Math.cos(turningAngle);
setPosition(bodyTrans, viewposi);
setPosition(viewTrans, viewposi);
if (outsideTrans!=null)
setPosition(outsideTrans, new Point3f(Outsidescale*viewposi.x, outsideposi.y, outsideposi.z));
break;
case LEFT:
if (pitchAngle!=0)
{
setRotation(viewTrans, -pitchAngle, comMat, 2);
pitchAngle = 0.0f;
}
setRotation(viewTrans, ANGLESTEP, comMat, 1);
turningAngle += ANGLESTEP;
break;
case RIGHT:
if (pitchAngle!=0)
{
setRotation(viewTrans, -pitchAngle, comMat, 2);
pitchAngle = 0.0f;
}
setRotation(viewTrans, -ANGLESTEP, comMat, 1);
turningAngle -= ANGLESTEP;
break;
case Up:
if (viewposi.y<1.7f)
Search WWH ::




Custom Search