Advertisement
Guest User

Untitled

a guest
Aug 23rd, 2015
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.84 KB | None | 0 0
  1. template<typename TObjectSpaceFaces, BlockFace face>
  2. class FaceSpaceVertices {
  3.     public:
  4.         static const BlockFaceVertex LEFT_TOP_OR_LEFT_FRONT_OR_TOP_FRONT;
  5.         static const BlockFaceVertex LEFT_BOTTOM_OR_LEFT_BACK_OR_TOP_BACK;
  6.         static const BlockFaceVertex RIGHT_TOP_OR_RIGHT_FRONT_OR_BOTTOM_FRONT;
  7.         static const BlockFaceVertex RIGHT_BOTTOM_OR_RIGHT_BACK_OR_BOTTOM_BACK;
  8. };
  9.  
  10. template<typename TObjectSpaceFaces, BlockFace face>
  11. const BlockFaceVertex FaceSpaceVertices<TObjectSpaceFaces, face>::LEFT_TOP_OR_LEFT_FRONT_OR_TOP_FRONT(
  12.     (face == TObjectSpaceFaces::LEFT || face == TObjectSpaceFaces::RIGHT) ?
  13.         BlockFaceCombine<TObjectSpaceFaces::TOP, TObjectSpaceFaces::FRONT>::RESULT
  14.     : (face == TObjectSpaceFaces::TOP || face == TObjectSpaceFaces::BOTTOM) ?
  15.         BlockFaceCombine<TObjectSpaceFaces::LEFT, TObjectSpaceFaces::FRONT>::RESULT
  16.     : (face == TObjectSpaceFaces::FRONT || face == TObjectSpaceFaces::BACK) ?
  17.         BlockFaceCombine<TObjectSpaceFaces::TOP, TObjectSpaceFaces::LEFT>::RESULT
  18. );
  19.  
  20. template<typename TObjectSpaceFaces, BlockFace face>
  21. const BlockFaceVertex FaceSpaceVertices<TObjectSpaceFaces, face>::LEFT_BOTTOM_OR_LEFT_BACK_OR_TOP_BACK(
  22.     (face == TObjectSpaceFaces::LEFT || face == TObjectSpaceFaces::RIGHT) ?
  23.         BlockFaceCombine<TObjectSpaceFaces::TOP, TObjectSpaceFaces::BACK>::RESULT
  24.     : (face == TObjectSpaceFaces::TOP || face == TObjectSpaceFaces::BOTTOM) ?
  25.         BlockFaceCombine<TObjectSpaceFaces::LEFT, TObjectSpaceFaces::BACK>::RESULT
  26.     : (face == TObjectSpaceFaces::FRONT || face == TObjectSpaceFaces::BACK) ?
  27.         BlockFaceCombine<TObjectSpaceFaces::LEFT, TObjectSpaceFaces::BOTTOM>::RESULT
  28.     );
  29.  
  30. template<typename TObjectSpaceFaces, BlockFace face>
  31. const BlockFaceVertex FaceSpaceVertices<TObjectSpaceFaces, face>::RIGHT_TOP_OR_RIGHT_FRONT_OR_BOTTOM_FRONT(
  32.     (face == TObjectSpaceFaces::LEFT || face == TObjectSpaceFaces::RIGHT) ?
  33.         BlockFaceCombine<TObjectSpaceFaces::BOTTOM, TObjectSpaceFaces::FRONT>::RESULT
  34.     : (face == TObjectSpaceFaces::TOP || face == TObjectSpaceFaces::BOTTOM) ?
  35.         BlockFaceCombine<TObjectSpaceFaces::RIGHT, TObjectSpaceFaces::FRONT>::RESULT
  36.     : (face == TObjectSpaceFaces::FRONT || face == TObjectSpaceFaces::BACK) ?
  37.         BlockFaceCombine<TObjectSpaceFaces::RIGHT, TObjectSpaceFaces::TOP>::RESULT
  38.     );
  39.  
  40. template<typename TObjectSpaceFaces, BlockFace face>
  41. const BlockFaceVertex FaceSpaceVertices<TObjectSpaceFaces, face>::RIGHT_BOTTOM_OR_RIGHT_BACK_OR_BOTTOM_BACK(
  42.     (face == TObjectSpaceFaces::LEFT || face == TObjectSpaceFaces::RIGHT) ?
  43.         BlockFaceCombine<TObjectSpaceFaces::BOTTOM, TObjectSpaceFaces::BACK>::RESULT
  44.     : (face == TObjectSpaceFaces::TOP || face == TObjectSpaceFaces::BOTTOM) ?
  45.         BlockFaceCombine<TObjectSpaceFaces::RIGHT, TObjectSpaceFaces::BACK>::RESULT
  46.     : (face == TObjectSpaceFaces::FRONT || face == TObjectSpaceFaces::BACK) ?
  47.         BlockFaceCombine<TObjectSpaceFaces::RIGHT, TObjectSpaceFaces::BOTTOM>::RESULT
  48.     );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement