private AffineTransform getRotationTransform ()
    {
        double theta;

        switch (_orient) {
            case NORTH:
            default:
                theta = 0.0;
                break;

            case SOUTH:
                theta = Math.PI;
                break;

            case EAST:
                theta = Math.PI*0.5;
                break;

            case WEST:
                theta = -Math.PI*0.5;
                break;

            case NORTHEAST:
                theta = Math.PI*0.25;
                break;

            case NORTHWEST:
                theta = -Math.PI*0.25;
                break;

            case SOUTHEAST:
                theta = Math.PI*0.75;
                break;

            case SOUTHWEST:
                theta = -Math.PI*0.75;
                break;

            case NORTHNORTHEAST:
                theta = -Math.PI*0.125;
                break;

            case NORTHNORTHWEST:
                theta = Math.PI*0.125;
                break;

            case SOUTHSOUTHEAST:
                theta = -Math.PI*0.875;
                break;

            case SOUTHSOUTHWEST:
                theta = Math.PI*0.875;
                break;

            case EASTNORTHEAST:
                theta = -Math.PI*0.375;
                break;

            case EASTSOUTHEAST:
                theta = -Math.PI*0.625;
                break;

            case WESTNORTHWEST:
                theta = Math.PI*0.375;
                break;

            case WESTSOUTHWEST:
                theta = Math.PI*0.625;
                break;
        }

        return AffineTransform.getRotateInstance(
            theta,
            (_ox - _oxoff) + _frames.getWidth(_frameIdx)/2,
            (_oy - _oyoff) + _frames.getHeight(_frameIdx)/2
        );
    }
private AffineTransform getRotationTransform ( ) { double theta ; switch ( _orient ) { case NORTH : default : theta = 0.0 ; break ; case SOUTH : theta = Math . PI ; break ; case EAST : theta = Math . PI * 0.5 ; break ; case WEST : theta = - Math . PI * 0.5 ; break ; case NORTHEAST : theta = Math . PI * 0.25 ; break ; case NORTHWEST : theta = - Math . PI * 0.25 ; break ; case SOUTHEAST : theta = Math . PI * 0.75 ; break ; case SOUTHWEST : theta = - Math . PI * 0.75 ; break ; case NORTHNORTHEAST : theta = - Math . PI * 0.125 ; break ; case NORTHNORTHWEST : theta = Math . PI * 0.125 ; break ; case SOUTHSOUTHEAST : theta = - Math . PI * 0.875 ; break ; case SOUTHSOUTHWEST : theta = Math . PI * 0.875 ; break ; case EASTNORTHEAST : theta = - Math . PI * 0.375 ; break ; case EASTSOUTHEAST : theta = - Math . PI * 0.625 ; break ; case WESTNORTHWEST : theta = Math . PI * 0.375 ; break ; case WESTSOUTHWEST : theta = Math . PI * 0.625 ; break ; } return AffineTransform . getRotateInstance ( theta , ( _ox - _oxoff ) + _frames . getWidth ( _frameIdx ) / 2 , ( _oy - _oyoff ) + _frames . getHeight ( _frameIdx ) / 2 ) ; }
Computes and returns the rotation transform for this
sprite.

@return the newly computed rotation transform