BsRect3.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. using System.Runtime.InteropServices;
  2. namespace BansheeEngine
  3. {
  4. [StructLayout(LayoutKind.Sequential), SerializeObject]
  5. public struct Rect3
  6. {
  7. public Rect3(Vector3 center, Vector3[] axes, float[] extents)
  8. {
  9. this._center = center;
  10. _axisHorz = axes[0];
  11. _axisVert = axes[1];
  12. _extentHorz = extents[0];
  13. _extentVert = extents[1];
  14. }
  15. public Vector3 center
  16. {
  17. get { return _center; }
  18. set { _center = value; }
  19. }
  20. public Vector3 axisHorz
  21. {
  22. get { return _axisHorz; }
  23. set { _axisHorz = value; }
  24. }
  25. public Vector3 axisVert
  26. {
  27. get { return _axisVert; }
  28. set { _axisVert = value; }
  29. }
  30. public float extentHorz
  31. {
  32. get { return _extentHorz; }
  33. set { _extentHorz = value; }
  34. }
  35. public float extentVert
  36. {
  37. get { return _extentVert; }
  38. set { _extentVert = value; }
  39. }
  40. private Vector3 _center;
  41. private Vector3 _axisHorz;
  42. private Vector3 _axisVert;
  43. private float _extentHorz;
  44. private float _extentVert;
  45. };
  46. }