diff options
| author | Anthony LaTorre <tlatorre9@gmail.com> | 2011-09-06 17:18:14 -0400 |
|---|---|---|
| committer | Anthony LaTorre <tlatorre9@gmail.com> | 2011-09-06 17:18:14 -0400 |
| commit | 86cb5f26029b3357727b88fee3fa7dd799a8d6c8 (patch) | |
| tree | fc915556ef813cf4ad59edeb7b59fee0e3244c34 /src/rotate.h | |
| parent | 3d3140071713e523516793258e3c904ca162d7b7 (diff) | |
| download | chroma-86cb5f26029b3357727b88fee3fa7dd799a8d6c8.tar.gz chroma-86cb5f26029b3357727b88fee3fa7dd799a8d6c8.tar.bz2 chroma-86cb5f26029b3357727b88fee3fa7dd799a8d6c8.zip | |
geometry on the GPU is now a struct created in the GPUGeometry class. coding style for cuda code is now compliant with python PEP 7 -- Style Guide for C Code.
Diffstat (limited to 'src/rotate.h')
| -rw-r--r-- | src/rotate.h | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/rotate.h b/src/rotate.h index 7fc6f7e..15f8037 100644 --- a/src/rotate.h +++ b/src/rotate.h @@ -6,21 +6,22 @@ __device__ const Matrix IDENTITY_MATRIX = {1,0,0,0,1,0,0,0,1}; -__device__ __host__ Matrix make_rotation_matrix(float phi, const float3 &n) +__device__ Matrix +make_rotation_matrix(float phi, const float3 &n) { - /* rotate points counterclockwise, when looking towards +infinity, - through an angle `phi` about the axis `n`. */ + float cos_phi = cosf(phi); + float sin_phi = sinf(phi); - float cos_phi = cosf(phi); - float sin_phi = sinf(phi); - - return IDENTITY_MATRIX*cos_phi + (1-cos_phi)*outer(n,n) + - sin_phi*make_matrix(0,n.z,-n.y,-n.z,0,n.x,n.y,-n.x,0); + return IDENTITY_MATRIX*cos_phi + (1-cos_phi)*outer(n,n) + + sin_phi*make_matrix(0,n.z,-n.y,-n.z,0,n.x,n.y,-n.x,0); } -__device__ __host__ float3 rotate(const float3 &a, float phi, const float3 &n) +/* rotate points counterclockwise, when looking towards +infinity, + through an angle `phi` about the axis `n`. */ +__device__ float3 +rotate(const float3 &a, float phi, const float3 &n) { - return make_rotation_matrix(phi,n)*a; + return make_rotation_matrix(phi,n)*a; } #endif |
