@realsee/five 5.0.0-alpha.92 → 5.0.0-alpha.96

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/docs/assets/search.js +1 -1
  2. package/docs/classes/five.AnimationFrameLoop.html +1 -1
  3. package/docs/classes/five.BVH.html +3 -3
  4. package/docs/classes/five.BVHIntersect.html +1 -0
  5. package/docs/classes/five.BVHNode.html +3 -4
  6. package/docs/classes/five.BVHVector3.html +1 -1
  7. package/docs/classes/five.Camera.html +1 -1
  8. package/docs/classes/five.Five.html +17 -17
  9. package/docs/classes/five.InternalWebGLRenderer.html +1 -1
  10. package/docs/classes/five.IntersectMesh.html +1 -0
  11. package/docs/classes/five.LegacyPanoCircleMesh.html +5 -0
  12. package/docs/classes/five.Model.html +20 -20
  13. package/docs/classes/five.NetworkSubscribe.html +1 -1
  14. package/docs/classes/five.PBMContainer.html +1 -1
  15. package/docs/classes/five.PBMGroup.html +1 -1
  16. package/docs/classes/five.PBMMaterial.html +1 -1
  17. package/docs/classes/five.PBMMesh.html +1 -1
  18. package/docs/classes/five.PanoCircleMesh.html +7 -0
  19. package/docs/classes/five.Scene.html +1 -1
  20. package/docs/classes/five.Subscribe.html +2 -2
  21. package/docs/classes/five.Work.html +19 -1
  22. package/docs/classes/gltf_loader.GLTFLoader.html +1 -1
  23. package/docs/classes/gltf_loader.GLTFObject.html +1 -1
  24. package/docs/classes/line.Line.html +1 -1
  25. package/docs/classes/line.LineGeometry.html +1 -1
  26. package/docs/classes/line.LineMaterial.html +1 -1
  27. package/docs/classes/line.LineSegmentsGeometry.html +1 -1
  28. package/docs/classes/line.THREE_Line2.html +1 -1
  29. package/docs/classes/line.THREE_LineSegments2.html +1 -1
  30. package/docs/classes/react.Store.html +1 -1
  31. package/docs/classes/server.BVH.html +3 -3
  32. package/docs/classes/server.BVHIntersect.html +1 -0
  33. package/docs/classes/server.BVHNode.html +3 -4
  34. package/docs/classes/server.BVHVector3.html +1 -1
  35. package/docs/classes/server.Model.html +3 -3
  36. package/docs/classes/server.PBMGroup.html +1 -1
  37. package/docs/classes/server.PBMMesh.html +1 -1
  38. package/docs/classes/sticker.Sticker.html +1 -1
  39. package/docs/index.html +1 -1
  40. package/docs/interfaces/five.AddableObject.html +1 -1
  41. package/docs/interfaces/five.AnimationFrame.html +1 -1
  42. package/docs/interfaces/five.CameraPose.html +1 -1
  43. package/docs/interfaces/five.DepthPanoramaControllerCustomInitArgs.html +12 -12
  44. package/docs/interfaces/five.EventCallback.html +1 -1
  45. package/docs/interfaces/five.FiveInitArgs.html +1 -1
  46. package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +1 -1
  47. package/docs/interfaces/five.ImageOptions.html +3 -3
  48. package/docs/interfaces/five.ImageURLOptions.html +1 -1
  49. package/docs/interfaces/five.IntersectMeshInterface.html +3 -1
  50. package/docs/interfaces/five.Intersection.html +3 -3
  51. package/docs/interfaces/five.ModelControllerCustomInitArgs.html +9 -9
  52. package/docs/interfaces/five.ModelEventCallback.html +7 -7
  53. package/docs/interfaces/five.MovePanoOptions.html +1 -1
  54. package/docs/interfaces/five.PBMPanoPicture.html +1 -1
  55. package/docs/interfaces/five.PBMParameters.html +1 -1
  56. package/docs/interfaces/five.PanoCircleMeshInterface.html +7 -3
  57. package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +12 -12
  58. package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +9 -9
  59. package/docs/interfaces/five.Pose.html +1 -1
  60. package/docs/interfaces/five.Scissor.html +1 -1
  61. package/docs/interfaces/five.State.html +1 -1
  62. package/docs/interfaces/five.SubscribeMixinType.emit.html +1 -1
  63. package/docs/interfaces/five.SubscribeMixinType.hasListener.html +1 -1
  64. package/docs/interfaces/five.SubscribeMixinType.off.html +1 -1
  65. package/docs/interfaces/five.SubscribeMixinType.on.html +1 -1
  66. package/docs/interfaces/five.SubscribeMixinType.once.html +1 -1
  67. package/docs/interfaces/five.TextureOptions.html +3 -3
  68. package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +1 -1
  69. package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +11 -11
  70. package/docs/interfaces/five.WorkCubeImage.html +13 -1
  71. package/docs/interfaces/five.WorkImage.html +20 -2
  72. package/docs/interfaces/five.WorkInitial.html +1 -1
  73. package/docs/interfaces/five.WorkModel.html +10 -2
  74. package/docs/interfaces/five.WorkObserver.html +24 -2
  75. package/docs/interfaces/five.WorkTile.html +1 -1
  76. package/docs/interfaces/five.WorkVideo.html +8 -2
  77. package/docs/interfaces/gltf_loader.GLTF.html +1 -1
  78. package/docs/interfaces/react.FiveActionReactCallbacks.html +1 -1
  79. package/docs/interfaces/react.FiveInjectionTypes.html +4 -4
  80. package/docs/interfaces/react.PropTypeOfFiveFeatures.html +1 -1
  81. package/docs/interfaces/server.Intersection.html +1 -1
  82. package/docs/interfaces/server.ModelEventCallback.html +1 -1
  83. package/docs/interfaces/sticker.IntersectionLike.html +1 -1
  84. package/docs/modules/five.SubscribeMixinType.html +1 -1
  85. package/docs/modules/five.html +11 -11
  86. package/docs/modules/gltf_loader.html +1 -1
  87. package/docs/modules/line.html +1 -1
  88. package/docs/modules/react.html +1 -1
  89. package/docs/modules/server.html +2 -2
  90. package/docs/modules/sticker.html +1 -1
  91. package/docs/modules.html +1 -1
  92. package/five/index.d.ts +122 -58
  93. package/five/index.js +12 -12
  94. package/gltf-loader/index.js +2 -2
  95. package/line/index.js +2 -2
  96. package/package.json +1 -1
  97. package/react/index.js +2 -2
  98. package/server/index.d.ts +56 -50
  99. package/server/index.js +6 -6
  100. package/sticker/index.js +2 -2
  101. package/umd/five.js +1 -1
  102. package/docs/interfaces/five.BVHIntersect.html +0 -1
  103. package/docs/interfaces/server.BVHIntersect.html +0 -1
package/five/index.d.ts CHANGED
@@ -40,23 +40,11 @@ export declare class AnimationFrameLoop {
40
40
  }
41
41
 
42
42
  export declare class BVH {
43
- _trianglesArray: Float32Array;
44
- _maxTrianglesPerNode: number;
45
- _bboxArray: Float32Array;
46
- _bboxHelper: Float32Array;
47
- _rootNode: BVHNode | null;
48
- _nodesToSplit: BVHNode[];
49
- constructor(trianglesArray: Float32Array, maxTrianglesPerNode?: number);
50
- private calcBoundingBoxes;
51
- splitNode(): void;
52
- private _splitNode;
53
- /**
54
- * 计算包围盒
55
- * @param startIndex - 开始的三角形序号
56
- * @param endIndex - 结束的三角形序号
57
- * @param expandBy - 外面扩展
58
- */
59
- private calcExtents;
43
+ trianglesArray?: Float32Array;
44
+ offsetArray?: Uint32Array;
45
+ rootNode?: BVHNode;
46
+ create(trianglesArray: Float32Array): this;
47
+ splitNode(maxTrianglesPerNode: number): this;
60
48
  /**
61
49
  * 计算射线与三角形的碰撞
62
50
  * @param rayOrigin - 射线的原点坐标
@@ -68,60 +56,36 @@ export declare class BVH {
68
56
  dispose(): void;
69
57
  }
70
58
 
71
- export declare interface BVHIntersect {
59
+ export declare class BVHIntersect {
72
60
  triangle: [BVHVector3, BVHVector3, BVHVector3];
73
- triangleIndex: number;
74
61
  intersectionPoint: BVHVector3;
62
+ constructor(triangle: [BVHVector3, BVHVector3, BVHVector3], intersectionPoint: BVHVector3);
75
63
  }
76
64
 
77
65
  /**
78
66
  * A node in the BVH structure
79
- * @param extentsMin - the min coords of this node's bounding box
80
- * @param extentsMax - the max coords of this node's bounding box
67
+ * @param extents - the min coords of this node's bounding box
81
68
  * @param startIndex - an index in the bbox array, where the first element of this node is located
82
69
  * @param endIndex - an index in the bbox array, where the last of this node is located, plus 1 (meaning that its non-inclusive).
83
70
  * @param level - distance of this node from the root for the bvh tree. root node has level=0, its children have level=1 etc.
84
71
  */
85
72
  export declare class BVHNode {
86
- _extentsMin: {
87
- x: number;
88
- y: number;
89
- z: number;
90
- };
91
- _extentsMax: {
92
- x: number;
93
- y: number;
94
- z: number;
95
- };
96
- _startIndex: number;
97
- _endIndex: number;
98
- _level: number;
99
- _node0: BVHNode | null;
100
- _node1: BVHNode | null;
101
- elementCount: number;
102
- center: number[];
103
- size: number[];
104
- order: number[];
105
- constructor(extentsMin: {
106
- x: number;
107
- y: number;
108
- z: number;
109
- }, extentsMax: {
110
- x: number;
111
- y: number;
112
- z: number;
113
- }, startIndex: number, endIndex: number, level: number);
114
- clearShapes(): void;
73
+ extents: ArrayLike<number>;
74
+ startIndex: number;
75
+ endIndex: number;
76
+ node0?: BVHNode;
77
+ node1?: BVHNode;
78
+ constructor(extents: ArrayLike<number>, startIndex: number, endIndex: number);
115
79
  }
116
80
 
117
81
  export declare class BVHVector3 {
118
82
  x: number;
119
83
  y: number;
120
84
  z: number;
121
- constructor(x?: number, y?: number, z?: number);
85
+ constructor(x: number, y: number, z: number);
122
86
  copy(v: BVHVector3): this;
123
87
  set(x: number, y: number, z: number): this;
124
- fromArray(array: ArrayLike<number>, firstElementPos?: number): this;
88
+ fromArray(array: number[], firstElementPos?: number): this;
125
89
  add(v: BVHVector3): this;
126
90
  multiplyScalar(scalar: number): this;
127
91
  subVectors(a: BVHVector3, b: BVHVector3): this;
@@ -1227,11 +1191,11 @@ export declare interface ImageOptions {
1227
1191
  * @returns 转化后地址
1228
1192
  */
1229
1193
  transform?: (url: string, options: ImageURLOptions) => string;
1230
- /** 图片尺寸参数 */
1194
+ /** 图片尺寸参数 尽量使用 2 的幂次 如 512 1024 2048 */
1231
1195
  size?: number;
1232
1196
  /** 图片质量参数(0-100) */
1233
1197
  quality?: number;
1234
- /** 图片格式参数(jpg, png) */
1198
+ /** 图片格式参数 */
1235
1199
  format?: "jpg" | "png" | "heif" | "webp" | "avif";
1236
1200
  }
1237
1201
 
@@ -1266,10 +1230,41 @@ export declare interface Intersection {
1266
1230
  distance: number;
1267
1231
  }
1268
1232
 
1233
+ export declare class IntersectMesh extends THREE_2.Object3D implements IntersectMeshInterface {
1234
+ private ringMesh;
1235
+ constructor();
1236
+ dispose(): void;
1237
+ }
1238
+
1239
+ /**
1240
+ * 地面提示点位接口
1241
+ */
1269
1242
  export declare interface IntersectMeshInterface extends THREE_2.Object3D {
1270
1243
  dispose(): void;
1271
1244
  }
1272
1245
 
1246
+ export declare class LegacyPanoCircleMesh extends THREE_2.Object3D implements PanoCircleMeshInterface {
1247
+ needsRender: boolean;
1248
+ current: boolean;
1249
+ loading: boolean;
1250
+ disabled: boolean;
1251
+ progress: number;
1252
+ opacity: number;
1253
+ private centerMesh;
1254
+ private loadingMesh;
1255
+ private progressMotion;
1256
+ private opacityMotion;
1257
+ private stopInterval?;
1258
+ constructor();
1259
+ setLoading(shown: boolean): void;
1260
+ setDisabled(disabled: boolean): void;
1261
+ setProgress(progress: number): void;
1262
+ setOpacity(opacity: number): void;
1263
+ setCurrent(current: boolean): void;
1264
+ updateTime(time: number, deltaTime: number): void;
1265
+ dispose(): void;
1266
+ }
1267
+
1273
1268
  export declare type LooseWork = {
1274
1269
  bvh?: boolean;
1275
1270
  modelAsync?: boolean;
@@ -1578,6 +1573,37 @@ export declare class NetworkSubscribe extends Subscribe<{
1578
1573
 
1579
1574
  export declare type NetworkType = "XMLHttpRequest" | "Script" | "Image" | "Link";
1580
1575
 
1576
+ export declare class PanoCircleMesh extends THREE_2.Object3D implements PanoCircleMeshInterface {
1577
+ needsRender: boolean;
1578
+ private loadingMesh;
1579
+ private disableMesh;
1580
+ private centerMesh;
1581
+ private ringMesh;
1582
+ private progressMesh;
1583
+ private ringRotateMotion;
1584
+ private tapMotion;
1585
+ private progressMotion;
1586
+ private progressOpacityMotion;
1587
+ private opacityMotion;
1588
+ progress: number;
1589
+ opacity: number;
1590
+ current: boolean;
1591
+ loading: boolean;
1592
+ disabled: boolean;
1593
+ constructor();
1594
+ setProgress(progress: number): void;
1595
+ setOpacity(opacity: number): void;
1596
+ setCurrent(current: boolean): void;
1597
+ setLoading(loading: boolean): void;
1598
+ setDisabled(disabled: boolean): void;
1599
+ tap(): Promise<void>;
1600
+ updateTime(time: number, deltaTime: number): void;
1601
+ dispose(): void;
1602
+ }
1603
+
1604
+ /**
1605
+ * 地面提示点位接口
1606
+ */
1581
1607
  export declare interface PanoCircleMeshInterface extends THREE_2.Object3D {
1582
1608
  needsRender: boolean;
1583
1609
  /** 当前高亮 */
@@ -1585,14 +1611,16 @@ export declare interface PanoCircleMeshInterface extends THREE_2.Object3D {
1585
1611
  /** 是否当前高亮 */
1586
1612
  setCurrent(current: boolean): void;
1587
1613
  loading: boolean;
1588
- setLoading(shown: boolean): void;
1614
+ setLoading(loading: boolean): void;
1589
1615
  disabled: boolean;
1590
1616
  setDisabled(disabled: boolean): void;
1591
1617
  progress: number;
1592
1618
  setProgress(progress: number): void;
1593
1619
  opacity: number;
1594
1620
  setOpacity(opacity: number): void;
1595
- updateTime(time: number, deltaTime: number): void;
1621
+ updateTime?(time: number, deltaTime: number): void;
1622
+ /** 点击交互 */
1623
+ tap?(): Promise<void>;
1596
1624
  dispose(): void;
1597
1625
  }
1598
1626
 
@@ -1879,11 +1907,11 @@ export declare interface TextureOptions {
1879
1907
  * @returns 转化后地址
1880
1908
  */
1881
1909
  transform?: (url: string, options: ImageURLOptions) => string;
1882
- /** 图片尺寸参数 */
1910
+ /** 图片尺寸参数 尽量使用 2 的幂次 如 256 512 1024 */
1883
1911
  size?: number;
1884
1912
  /** 图片质量参数(0-100) */
1885
1913
  quality?: number;
1886
- /** 图片格式参数(jpg, png) */
1914
+ /** 图片格式参数 */
1887
1915
  format?: "jpg" | "png" | "heif" | "webp" | "avif";
1888
1916
  /** 针对 textureOptions 是否自动通过模型贴图的数量计算需要的模型贴图的尺寸 默认 true */
1889
1917
  autoResize?: boolean;
@@ -1902,32 +1930,50 @@ export declare interface VRPanoramaControllerCustomInitArgs extends Omit<Panoram
1902
1930
  }
1903
1931
 
1904
1932
  export declare class Work {
1933
+ /** 名称 */
1905
1934
  name: string;
1935
+ /** 编号 */
1906
1936
  workCode: string;
1937
+ /** 允许访问的安全域名 */
1907
1938
  allowHosts: string[];
1939
+ /** 过期时间 */
1908
1940
  expire: Date;
1941
+ /** 初始化参数 */
1909
1942
  initial: WorkInitial;
1943
+ /** 模型参数 */
1910
1944
  model?: WorkModel;
1945
+ /** 全景点位信息 */
1911
1946
  observers: WorkObserver[];
1947
+ /** 数据签发人 */
1912
1948
  issuer: string;
1949
+ /** 原始数据 */
1913
1950
  raw: any;
1914
1951
  constructor();
1915
1952
  toJSON(): any;
1916
1953
  }
1917
1954
 
1918
1955
  export declare interface WorkCubeImage {
1956
+ /** 全景图 up */
1919
1957
  up: string;
1958
+ /** 全景图 down */
1920
1959
  down: string;
1960
+ /** 全景图 right */
1921
1961
  right: string;
1962
+ /** 全景图 left */
1922
1963
  left: string;
1964
+ /** 全景图 front */
1923
1965
  front: string;
1966
+ /** 全景图 back */
1924
1967
  back: string;
1925
1968
  }
1926
1969
 
1927
1970
  /** 全景图 */
1928
1971
  export declare interface WorkImage extends WorkCubeImage {
1972
+ /** 深度图 */
1929
1973
  depth?: string;
1974
+ /** 光照强度图 */
1930
1975
  luminance?: WorkCubeImage;
1976
+ /** 瓦片信息 */
1931
1977
  tiles?: WorkTile[];
1932
1978
  }
1933
1979
 
@@ -1937,24 +1983,39 @@ export declare interface WorkInitial extends Omit<State, "offset"> {
1937
1983
 
1938
1984
  /** 模型数据 */
1939
1985
  export declare interface WorkModel {
1986
+ /** 模型文件地址 at3d / domez */
1940
1987
  file: string;
1988
+ /** 模型贴图文件地址 */
1941
1989
  textures: string[];
1990
+ /** 模型贴图文件地址的父目录 */
1942
1991
  textureBase: string;
1992
+ /** 是否开启 bvh 碰撞树,开启会大大加快射线碰撞的执行效率 */
1943
1993
  bvh: boolean;
1944
1994
  }
1945
1995
 
1946
1996
  /** 每个点位的数据 */
1947
1997
  export declare interface WorkObserver {
1998
+ /** 点位序号 */
1948
1999
  panoIndex: number;
2000
+ /** 点位是否激活可用 */
1949
2001
  active: boolean;
2002
+ /** 点位是否可加载 */
1950
2003
  loadable: boolean;
2004
+ /** 点位全景图 */
1951
2005
  images: WorkImage;
2006
+ /** 点位视频 */
1952
2007
  video?: WorkVideo;
2008
+ /** 可以看到的相关点位序号 */
1953
2009
  visibleNodes: number[];
2010
+ /** 可以连通的相关点位序号 */
1954
2011
  accessibleNodes: number[];
2012
+ /** 点位和模型的旋转对齐关系四元数 */
1955
2013
  quaternion: THREE_2.Quaternion;
2014
+ /** 点位和模型的地面位置坐标关系 */
1956
2015
  standingPosition: THREE_2.Vector3;
2016
+ /** 点位和模型的观察点坐标关系 */
1957
2017
  position: THREE_2.Vector3;
2018
+ /** 点位所在楼层 */
1958
2019
  floorIndex: number;
1959
2020
  }
1960
2021
 
@@ -1971,8 +2032,11 @@ export declare interface WorkTile {
1971
2032
 
1972
2033
  /** 全景视频贴片 */
1973
2034
  export declare interface WorkVideo {
2035
+ /** 视频源 url */
1974
2036
  source: string;
2037
+ /** 视频源变化矩阵 */
1975
2038
  matrix: THREE_2.Matrix4;
2039
+ /** 视频源长宽尺寸 */
1976
2040
  size: THREE_2.Vector2;
1977
2041
  }
1978
2042