Changeset 406 for trunk/nv/interface/interpolation_raw.hh
- Timestamp:
- 06/20/15 00:05:17 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/nv/interface/interpolation_raw.hh
r398 r406 29 29 inline uint32 interpolate_raw_quat( float factor, const float* k1, const float* k2, float* result ) 30 30 { 31 *( (quat*)(result)) = interpolate( *((quat*)(k1)), *((quat*)(k2)), factor );31 *( reinterpret_cast<quat*>(result) ) = interpolate( *( reinterpret_cast<const quat*>(k1) ), *( reinterpret_cast<const quat*>(k2) ), factor ); 32 32 return 4; 33 33 } … … 53 53 { 54 54 quat result; 55 memcpy( (float*)(&result), data, sizeof(quat));55 memcpy(reinterpret_cast<float*>(&result), data, sizeof(quat)); 56 56 return result; 57 57 } … … 139 139 inline void transform_key_position( uint8* data, float scale, const mat3& r33 ) 140 140 { 141 vec3& p = *( (vec3*)(data));141 vec3& p = *( reinterpret_cast<vec3*>( data ) ); 142 142 p = r33 * p * scale; 143 143 } 144 144 inline void transform_key_rotation( uint8* data, const mat3& r33, const mat3& ri33 ) 145 145 { 146 quat& r = *( (quat*)(data));146 quat& r = *( reinterpret_cast<quat*>( data ) ); 147 147 r = quat_cast( r33 * mat3_cast( r ) * ri33 ); 148 148 } 149 149 inline void transform_key_scale( void* data, float scale ) 150 150 { 151 vec3& s = *( (vec3*)(data));151 vec3& s = *( reinterpret_cast<vec3*>( data ) ); 152 152 s = s * scale; 153 153 } 154 154 inline void transform_key_transform( uint8* data, float scale, const mat3& r33, const mat3& ri33 ) 155 155 { 156 transform& t = *( (transform*)(data));156 transform& t = *( reinterpret_cast<transform*>( data ) ); 157 157 t = transform( 158 158 r33 * t.get_position() * scale,
Note: See TracChangeset
for help on using the changeset viewer.