Guest User

Untitled

a guest
Jan 18th, 2019
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.34 KB | None | 0 0
  1. /***************************************************
  2.  
  3. KDL's D3DRM porting
  4.  
  5. ****************************************************/
  6. #include "pcincl.h"
  7. #include "structs.h"
  8. #include <d3d.h>
  9.  
  10. //Vector Subtract
  11. void VectorSubtract(RevoltVertex* dest,RevoltVertex src1, RevoltVertex src2)
  12. {
  13. dest->X = src1.X - src2.X;
  14. dest->Y = src1.Y - src2.Y;
  15. dest->Z = src1.Z - src2.Z;
  16. }
  17.  
  18. //VectorCrossProduct
  19. void VectorCrossProduct(RevoltVertex*& out,RevoltVertex src1, RevoltVertex src2)
  20. {
  21.  out->X =src1.Y * src2.Z - src1.Z * src2.Y;
  22.  out->Y = src1.Z * src2.X - src1.X * src2.Z;
  23. out-> Z =  src1.X * src2.Y - src1.Y * src2.X;
  24. }
  25.  
  26. void VectorCrossProduct(RevoltVertex*& out,RevoltVertex* src1, RevoltVertex* src2)
  27. {
  28.  out->X =src1->Y * src2->Z - src1->Z * src2->Y;
  29.  out->Y = src1->Z * src2->X - src1->X * src2->Z;
  30. out-> Z =  src1->X * src2->Y - src1->Y * src2->X;
  31. }
  32.  
  33. //VectorNormalize
  34. void VectorNormalize(RevoltVertex*& vec)
  35. {
  36.     float norm = sqrt(vec->X * vec->X + vec->Y * vec->Y + vec->Z * vec->Z);
  37.     if (norm == 0) {
  38.         vec->X = ZERO;
  39.         vec->Y = ZERO;
  40.         vec->Z = ZERO;
  41.     } else {
  42.         vec->X =    vec->X /norm;
  43.         vec->Y =    vec->Y /norm;
  44.         vec->Z =    vec->Z /norm;
  45.     }
  46. }
  47.  
  48. // Subtract for D3DVector
  49. void VECTORSubtract(D3DVECTOR* dest,D3DVECTOR src1, D3DVECTOR src2)
  50. {
  51. dest->x = src1.x - src2.x;
  52. dest->y = src1.y - src2.y;
  53. dest->z = src1.z - src2.z;
  54. }
Add Comment
Please, Sign In to add comment