WhiteRectangleConfig.h 5.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. //
  2. // WhiteRectangleConfig.h
  3. // WhiteSDK
  4. //
  5. // Created by yleaf on 2019/12/10.
  6. //
  7. #import "WhiteObject.h"
  8. #import <UIKit/UIKit.h>
  9. #import "WhiteCameraConfig.h"
  10. NS_ASSUME_NONNULL_BEGIN
  11. /** 配置白板的视觉矩形。
  12. 视觉矩形是用户的视角必须容纳的区域。设置好视觉矩形后,视角会自动调整到刚好可以完整展示视觉矩形所表示的范围。
  13. 该方法可用于保证同样的内容在不同的设备上都可以显示完整。
  14. */
  15. @interface WhiteRectangleConfig : WhiteObject
  16. /**
  17. 初始化一个 `WhiteRectangleConfig` 对象。
  18. 在该函数中,你需要传入 `width` 和 `height`。SDK 会根据你传入 `width` 和 `height` 计算视觉矩形左上角原点
  19. 在世界坐标系中的位置 `originX` 和 `originY`, 即 `originX = - width / 2.0d`,`originY = - height / 2.0d`。
  20. 该方法适用于需要快速显示完整 PPT 内容的场景。
  21. @param width 白板视觉矩形的宽度。视觉矩形的宽度不能小于实际展示内容的宽度,否则用户将看不见超出的部分。
  22. @param height 白板视觉矩形的高度。视觉矩形的高度不能小于实际展示内容的宽度,否则用户将看不见超出的部分。
  23. @return 初始化的 `WhiteRectangleConfig` 对象
  24. */
  25. - (instancetype)initWithInitialPosition:(CGFloat)width height:(CGFloat)height;
  26. /**
  27. 设置视觉矩形的动画模式初始化一个 `WhiteRectangleConfig` 对象。
  28. 在该函数中,你需要传入 `width`,`height` 和 `mode`。SDK 会根据你传入 `width` 和 `height` 计算视觉矩形左上角原点
  29. 在世界坐标系中的位置 `originX` 和 `originY`, 即 `originX = - width / 2.0d`,`originY = - height / 2.0d`。
  30. 该方法适用于需要快速显示完整 PPT 内容的场景。
  31. @param width 白板视觉矩形的宽度。视觉矩形的宽度不能小于实际展示内容的宽度,否则用户将看不见超出的部分。
  32. @param height 白板视觉矩形的高度。视觉矩形的高度不能小于实际展示内容的宽度,否则用户将看不见超出的部分。
  33. @param mode 视觉矩形的动画模式,详见 [AnimationMode](AnimationMode)。
  34. @return 初始化的 `WhiteRectangleConfig` 对象
  35. */
  36. - (instancetype)initWithInitialPosition:(CGFloat)width height:(CGFloat)height animation:(WhiteAnimationMode)mode;
  37. /**
  38. 设置视觉矩形的坐标并初始化一个 `WhiteRectangleConfig` 对象。
  39. 在该函数中,你需要传入 `originX`、`originY`、`width`、`height` 和 `mode`。
  40. SDK 会根据你传入的 `originX`、`originY`、`width` 和 `height` 确定视觉矩形在白板坐标系(即世界坐标系)中的位置、大小和动画模式。
  41. @param originX 视觉矩形左上角原点在世界坐标系(以白板初始化时的中心点为原点的坐标系)中的 X 轴坐标。
  42. @param originY 视觉矩形左上角原点在世界坐标系(以白板初始化时的中心点为原点的坐标系)中的 Y 轴坐标。
  43. @param width 视觉矩形的宽度。视觉矩形的宽度不能小于实际展示内容的宽度,否则用户将看不见超出的部分。
  44. @param height 视觉矩形的高度。视觉矩形的高度不能小于实际展示内容的宽度,否则用户将看不见超出的部分。
  45. @return 初始化的 `WhiteRectangleConfig` 对象
  46. */
  47. - (instancetype)initWithOriginX:(CGFloat)originX originY:(CGFloat)originY width:(CGFloat)width height:(CGFloat)height;
  48. /**
  49. 设置视觉矩形的坐标和动画模式并初始化一个 `WhiteRectangleConfig` 对象。
  50. 在该函数中,你需要传入 `originX`、`originY`、`width`、`height` 和 `mode`。
  51. SDK 会根据你传入的 `originX`、`originY`、`width`、`height` 和 `mode` 确定视觉矩形在白板坐标系(即世界坐标系)中的位置、大小和动画模式。
  52. @param originX 视觉矩形左上角原点在世界坐标系(以白板初始化时的中心点为原点的坐标系)中的 X 轴坐标。
  53. @param originY 视觉矩形左上角原点在世界坐标系(以白板初始化时的中心点为原点的坐标系)中的 Y 轴坐标。
  54. @param width 视觉矩形的宽度。视觉矩形的宽度不能小于实际展示内容的宽度,否则用户将看不见超出的部分。
  55. @param height 视觉矩形的高度。视觉矩形的高度不能小于实际展示内容的宽度,否则用户将看不见超出的部分。
  56. @param mode 视觉矩形的动画模式,详见[WhiteAnimationMode](WhiteAnimationMode)。
  57. @return 初始化的 `WhiteRectangleConfig` 对象
  58. */
  59. - (instancetype)initWithOriginX:(CGFloat)originX originY:(CGFloat)originY width:(CGFloat)width height:(CGFloat)height animation:(WhiteAnimationMode)mode;
  60. /** 视觉矩形左上角原点在世界坐标系(以白板初始化时的中心点为原点的坐标系)中的 X 轴坐标。 */
  61. @property (nonatomic, assign) CGFloat originX;
  62. /** 视觉矩形左上角原点在世界坐标系(以白板初始化时的中心点为原点的坐标系)中的 Y 轴坐标。 */
  63. @property (nonatomic, assign) CGFloat originY;
  64. /** 视觉矩形的宽度。视觉矩形的宽度不能小于实际展示内容的宽度,否则用户将看不见超出的部分。 */
  65. @property (nonatomic, assign) CGFloat width;
  66. /** 视觉矩形的高度。视觉矩形的高度不能小于实际展示内容的宽度,否则用户将看不见超出的部分。 */
  67. @property (nonatomic, assign) CGFloat height;
  68. /** 视觉矩形的动画模式,详见[WhiteAnimationMode](WhiteAnimationMode)。 */
  69. @property (nonatomic, assign) WhiteAnimationMode animationMode;
  70. @end
  71. NS_ASSUME_NONNULL_END