public void setFrustumPerspective(float fovY, float aspect, float near,
            float far) {
        if (Float.isNaN(aspect) || Float.isInfinite(aspect)) {
            // ignore.
            logger.log(Level.WARNING, "Invalid aspect given to setFrustumPerspective: {0}", aspect);
            return;
        }

        float h = FastMath.tan(fovY * FastMath.DEG_TO_RAD * .5f) * near;
        float w = h * aspect;
        frustumLeft = -w;
        frustumRight = w;
        frustumBottom = -h;
        frustumTop = h;
        frustumNear = near;
        frustumFar = far;

        // Camera is no longer parallel projection even if it was before
        parallelProjection = false;

        onFrustumChange();
    }
Defines the frustum for the camera.  This
frustum is defined by a viewing angle, aspect ratio, and near/far planes

@param fovY   Frame of view angle along the Y in degrees.
@param aspect Width:Height ratio
@param near   Near view plane distance
@param far    Far view plane distance
jme3-core/src/main/java/com/jme3/renderer/Camera.java