ovr_sdk
diff LibOVR/Src/Kernel/OVR_Math.cpp @ 0:1b39a1b46319
initial 0.4.4
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Wed, 14 Jan 2015 06:51:16 +0200 |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/LibOVR/Src/Kernel/OVR_Math.cpp Wed Jan 14 06:51:16 2015 +0200 1.3 @@ -0,0 +1,58 @@ 1.4 +/************************************************************************************ 1.5 + 1.6 +Filename : OVR_Math.h 1.7 +Content : Implementation of 3D primitives such as vectors, matrices. 1.8 +Created : September 4, 2012 1.9 +Authors : Andrew Reisse, Michael Antonov, Anna Yershova 1.10 + 1.11 +Copyright : Copyright 2014 Oculus VR, LLC All Rights reserved. 1.12 + 1.13 +Licensed under the Oculus VR Rift SDK License Version 3.2 (the "License"); 1.14 +you may not use the Oculus VR Rift SDK except in compliance with the License, 1.15 +which is provided at the time of installation or download, or which 1.16 +otherwise accompanies this software in either electronic or hard copy form. 1.17 + 1.18 +You may obtain a copy of the License at 1.19 + 1.20 +http://www.oculusvr.com/licenses/LICENSE-3.2 1.21 + 1.22 +Unless required by applicable law or agreed to in writing, the Oculus VR SDK 1.23 +distributed under the License is distributed on an "AS IS" BASIS, 1.24 +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1.25 +See the License for the specific language governing permissions and 1.26 +limitations under the License. 1.27 + 1.28 +*************************************************************************************/ 1.29 + 1.30 +#include "OVR_Math.h" 1.31 +#include "OVR_Log.h" 1.32 + 1.33 +#include <float.h> 1.34 + 1.35 + 1.36 +namespace OVR { 1.37 + 1.38 + 1.39 +//------------------------------------------------------------------------------------- 1.40 +// ***** Constants 1.41 + 1.42 +template<> 1.43 +const Vector3<float> Vector3<float>::ZERO = Vector3<float>(); 1.44 + 1.45 +template<> 1.46 +const Vector3<double> Vector3<double>::ZERO = Vector3<double>(); 1.47 + 1.48 +template<> 1.49 +const Matrix4<float> Matrix4<float>::IdentityValue = Matrix4<float>(1.0f, 0.0f, 0.0f, 0.0f, 1.50 + 0.0f, 1.0f, 0.0f, 0.0f, 1.51 + 0.0f, 0.0f, 1.0f, 0.0f, 1.52 + 0.0f, 0.0f, 0.0f, 1.0f); 1.53 + 1.54 +template<> 1.55 +const Matrix4<double> Matrix4<double>::IdentityValue = Matrix4<double>(1.0, 0.0, 0.0, 0.0, 1.56 + 0.0, 1.0, 0.0, 0.0, 1.57 + 0.0, 0.0, 1.0, 0.0, 1.58 + 0.0, 0.0, 0.0, 1.0); 1.59 + 1.60 + 1.61 +} // Namespace OVR