math.viewport.d.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import type { IViewportLike } from "./math.like";
  2. /**
  3. * Class used to represent a viewport on screen
  4. */
  5. export declare class Viewport implements IViewportLike {
  6. /** viewport left coordinate */
  7. x: number;
  8. /** viewport top coordinate */
  9. y: number;
  10. /**viewport width */
  11. width: number;
  12. /** viewport height */
  13. height: number;
  14. /**
  15. * Creates a Viewport object located at (x, y) and sized (width, height)
  16. * @param x defines viewport left coordinate
  17. * @param y defines viewport top coordinate
  18. * @param width defines the viewport width
  19. * @param height defines the viewport height
  20. */
  21. constructor(
  22. /** viewport left coordinate */
  23. x: number,
  24. /** viewport top coordinate */
  25. y: number,
  26. /**viewport width */
  27. width: number,
  28. /** viewport height */
  29. height: number);
  30. /**
  31. * Creates a new viewport using absolute sizing (from 0-> width, 0-> height instead of 0->1)
  32. * @param renderWidth defines the rendering width
  33. * @param renderHeight defines the rendering height
  34. * @returns a new Viewport
  35. */
  36. toGlobal(renderWidth: number, renderHeight: number): Viewport;
  37. /**
  38. * Stores absolute viewport value into a target viewport (from 0-> width, 0-> height instead of 0->1)
  39. * @param renderWidth defines the rendering width
  40. * @param renderHeight defines the rendering height
  41. * @param ref defines the target viewport
  42. * @returns the current viewport
  43. */
  44. toGlobalToRef(renderWidth: number, renderHeight: number, ref: Viewport): Viewport;
  45. /**
  46. * Returns a new Viewport copied from the current one
  47. * @returns a new Viewport
  48. */
  49. clone(): Viewport;
  50. }