math.like.ts 987 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. import { float, int, DeepImmutable } from '../types';
  2. /**
  3. * @hidden
  4. */
  5. export interface IColor4Like {
  6. r: float;
  7. g: float;
  8. b: float;
  9. a: float;
  10. }
  11. /**
  12. * @hidden
  13. */
  14. export interface IColor3Like {
  15. r: float;
  16. g: float;
  17. b: float;
  18. }
  19. /**
  20. * @hidden
  21. */
  22. export interface IVector4Like {
  23. x: float;
  24. y: float;
  25. z: float;
  26. w: float;
  27. }
  28. /**
  29. * @hidden
  30. */
  31. export interface IVector3Like {
  32. x: float;
  33. y: float;
  34. z: float;
  35. }
  36. /**
  37. * @hidden
  38. */
  39. export interface IVector2Like {
  40. x: float;
  41. y: float;
  42. }
  43. /**
  44. * @hidden
  45. */
  46. export interface IMatrixLike {
  47. toArray(): DeepImmutable<Float32Array | Array<number>>;
  48. updateFlag: int;
  49. }
  50. /**
  51. * @hidden
  52. */
  53. export interface IViewportLike {
  54. x: float;
  55. y: float;
  56. width: float;
  57. height: float;
  58. }
  59. /**
  60. * @hidden
  61. */
  62. export interface IPlaneLike {
  63. normal: IVector3Like;
  64. d: float;
  65. normalize(): void;
  66. }