From 425367f89255764234313889b403bf53b0993e0a Mon Sep 17 00:00:00 2001 From: Laszlo Papp Date: Thu, 6 Dec 2012 23:02:00 +0000 Subject: Make the documentation more explicit an talkative MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Ifa4b7c3c5f8ec384addbb80a9436d55b32d8bc51 Reviewed-by: Lars Knoll Reviewed-by: Samuel Rødal --- src/gui/math3d/qmatrix4x4.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src/gui/math3d/qmatrix4x4.cpp') diff --git a/src/gui/math3d/qmatrix4x4.cpp b/src/gui/math3d/qmatrix4x4.cpp index d8c2116b0d..e0f401bc10 100644 --- a/src/gui/math3d/qmatrix4x4.cpp +++ b/src/gui/math3d/qmatrix4x4.cpp @@ -1458,27 +1458,29 @@ void QMatrix4x4::frustum(float left, float right, float bottom, float top, float /*! Multiplies this matrix by another that applies a perspective - projection. The field of view will be \a angle degrees within - a window with a given \a aspect ratio. The projection will - have the specified \a nearPlane and \a farPlane clipping planes. + projection. The vertical field of view will be \a verticalAngle degrees + within a window with a given \a aspectRatio that determines the horizontal + field of view. + The projection will have the specified \a nearPlane and \a farPlane clipping + planes which are the distances from the viewer to the corresponding planes. \sa ortho(), frustum() */ -void QMatrix4x4::perspective(float angle, float aspect, float nearPlane, float farPlane) +void QMatrix4x4::perspective(float verticalAngle, float aspectRatio, float nearPlane, float farPlane) { // Bail out if the projection volume is zero-sized. - if (nearPlane == farPlane || aspect == 0.0f) + if (nearPlane == farPlane || aspectRatio == 0.0f) return; // Construct the projection. QMatrix4x4 m(1); - float radians = (angle / 2.0f) * M_PI / 180.0f; + float radians = (verticalAngle / 2.0f) * M_PI / 180.0f; float sine = sinf(radians); if (sine == 0.0f) return; float cotan = cosf(radians) / sine; float clip = farPlane - nearPlane; - m.m[0][0] = cotan / aspect; + m.m[0][0] = cotan / aspectRatio; m.m[1][0] = 0.0f; m.m[2][0] = 0.0f; m.m[3][0] = 0.0f; -- cgit v1.2.3