@realsee/dnalogel 0.1.7-alpha.2 → 0.1.7-alpha.6

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 (157) hide show
  1. package/components/ARVideoFigure/ImgBgTransparentMesh.js +2 -2
  2. package/components/GLTFView/index.d.ts +7 -1
  3. package/components/GLTFView/index.js +7 -1
  4. package/components/GlassFilters/index.js +2 -2
  5. package/components/ModelView/ModelViewController.js +6 -5
  6. package/data/81zxMaeVKLQU93OZMG.d.ts +49 -0
  7. package/data/81zxMaeVKLQU93OZMG.js +633 -0
  8. package/data/PrXel3aqGbp34JQn.js +139 -1
  9. package/data/_vLykj3NWrllMrG06.d.ts +95 -0
  10. package/data/_vLykj3NWrllMrG06.js +1 -0
  11. package/data/vLykj3NWrllMrG06.js +335 -71
  12. package/libs/gltf-viewer/Subscribe.js +2 -0
  13. package/libs/gltf-viewer/coordsToDirection.d.ts +1 -1
  14. package/libs/gltf-viewer/index.d.ts +18 -0
  15. package/libs/gltf-viewer/index.js +133 -45
  16. package/package.json +3 -3
  17. package/plugins/CSS3DRenderPlugin/components/Marker/index.js +2 -0
  18. package/plugins/CSS3DRenderPlugin/index.js +2 -2
  19. package/plugins/ModelChassisCompassPlugin/index.d.ts +1 -1
  20. package/plugins/ModelChassisCompassPlugin/index.js +2 -1
  21. package/plugins/ModelEntryDoorGuidePlugin/index.d.ts +4 -0
  22. package/plugins/ModelEntryDoorGuidePlugin/index.js +6 -1
  23. package/plugins/ModelExtrudeWallsPlugin/index.js +2 -2
  24. package/plugins/ModelRoomLabelPlugin/Controller.js +1 -0
  25. package/plugins/ModelRoomLabelPlugin/RoomLabelItem.js +5 -5
  26. package/plugins/ModelRoomLabelPlugin/RoomLabelItems.js +2 -2
  27. package/plugins/ModelRoomLabelPlugin/index.d.ts +4 -0
  28. package/plugins/ModelRoomLabelPlugin/index.js +7 -2
  29. package/plugins/ModelTVVideoPlugin/index.js +4 -2
  30. package/plugins/ModelViewPlugin/index.js +2 -2
  31. package/plugins/PanoCursorRaycasterPlugin/index.js +2 -0
  32. package/plugins/PanoMeasurePlugin/Controller/BaseController.d.ts +36 -0
  33. package/plugins/PanoMeasurePlugin/Controller/BaseController.js +105 -0
  34. package/plugins/PanoMeasurePlugin/Controller/EditController.d.ts +52 -0
  35. package/plugins/PanoMeasurePlugin/Controller/EditController.js +343 -0
  36. package/plugins/PanoMeasurePlugin/Controller/ShortcutKeyController.d.ts +12 -0
  37. package/plugins/PanoMeasurePlugin/Controller/ShortcutKeyController.js +69 -0
  38. package/plugins/PanoMeasurePlugin/Controller/WatchController.d.ts +25 -0
  39. package/plugins/PanoMeasurePlugin/Controller/WatchController.js +373 -0
  40. package/plugins/PanoMeasurePlugin/Controller/index.d.ts +61 -0
  41. package/plugins/PanoMeasurePlugin/Controller/index.js +230 -0
  42. package/plugins/PanoMeasurePlugin/Model/index.d.ts +38 -0
  43. package/plugins/PanoMeasurePlugin/Model/index.js +237 -0
  44. package/plugins/PanoMeasurePlugin/Model/line.d.ts +30 -0
  45. package/plugins/PanoMeasurePlugin/Model/line.js +123 -0
  46. package/plugins/PanoMeasurePlugin/Model/point.d.ts +16 -0
  47. package/plugins/PanoMeasurePlugin/Model/point.js +72 -0
  48. package/plugins/PanoMeasurePlugin/Model/polyline.d.ts +16 -0
  49. package/plugins/PanoMeasurePlugin/Model/polyline.js +111 -0
  50. package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.d.ts +2 -0
  51. package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.js +11 -0
  52. package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.d.ts +2 -0
  53. package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.js +11 -0
  54. package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.d.ts +2 -0
  55. package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.js +11 -0
  56. package/plugins/PanoMeasurePlugin/Modules/DeleteDom/index.d.ts +22 -0
  57. package/plugins/PanoMeasurePlugin/Modules/DeleteDom/index.js +184 -0
  58. package/plugins/PanoMeasurePlugin/Modules/FiveHelper.d.ts +11 -0
  59. package/plugins/PanoMeasurePlugin/Modules/FiveHelper.js +68 -0
  60. package/plugins/PanoMeasurePlugin/Modules/GuideController.d.ts +18 -0
  61. package/plugins/PanoMeasurePlugin/Modules/GuideController.js +107 -0
  62. package/plugins/PanoMeasurePlugin/Modules/Magnifier.d.ts +24 -0
  63. package/plugins/PanoMeasurePlugin/Modules/Magnifier.js +139 -0
  64. package/plugins/PanoMeasurePlugin/Modules/UIController/HTML.d.ts +6 -0
  65. package/plugins/PanoMeasurePlugin/Modules/UIController/HTML.js +26 -0
  66. package/plugins/PanoMeasurePlugin/Modules/UIController/MainBtnController.d.ts +18 -0
  67. package/plugins/PanoMeasurePlugin/Modules/UIController/MainBtnController.js +169 -0
  68. package/plugins/PanoMeasurePlugin/Modules/UIController/Revoke/index.d.ts +12 -0
  69. package/plugins/PanoMeasurePlugin/Modules/UIController/Revoke/index.js +59 -0
  70. package/plugins/PanoMeasurePlugin/Modules/UIController/index.d.ts +16 -0
  71. package/plugins/PanoMeasurePlugin/Modules/UIController/index.js +125 -0
  72. package/plugins/PanoMeasurePlugin/Modules/UIController/style.d.ts +17 -0
  73. package/plugins/PanoMeasurePlugin/Modules/UIController/style.js +103 -0
  74. package/plugins/PanoMeasurePlugin/index.d.ts +7 -0
  75. package/plugins/PanoMeasurePlugin/index.js +20 -0
  76. package/plugins/PanoMeasurePlugin/typings/data.d.ts +28 -0
  77. package/plugins/PanoMeasurePlugin/typings/data.js +7 -0
  78. package/plugins/PanoMeasurePlugin/typings/event.type.d.ts +28 -0
  79. package/plugins/PanoMeasurePlugin/typings/event.type.js +7 -0
  80. package/plugins/PanoMeasurePlugin/typings/utils.type.d.ts +1 -0
  81. package/plugins/PanoMeasurePlugin/typings/utils.type.js +7 -0
  82. package/plugins/PanoMeasurePlugin/utils/clearGroup.d.ts +2 -0
  83. package/plugins/PanoMeasurePlugin/utils/clearGroup.js +16 -0
  84. package/plugins/PanoMeasurePlugin/utils/constants.d.ts +4 -0
  85. package/plugins/PanoMeasurePlugin/utils/constants.js +47 -0
  86. package/plugins/PanoMeasurePlugin/utils/distanceDom.d.ts +28 -0
  87. package/plugins/PanoMeasurePlugin/utils/distanceDom.js +147 -0
  88. package/plugins/PanoMeasurePlugin/utils/findAssociatedLines.d.ts +2 -0
  89. package/plugins/PanoMeasurePlugin/utils/findAssociatedLines.js +39 -0
  90. package/plugins/PanoMeasurePlugin/utils/findClosestPoint.d.ts +10 -0
  91. package/plugins/PanoMeasurePlugin/utils/findClosestPoint.js +49 -0
  92. package/plugins/PanoMeasurePlugin/utils/getIntersectionFromEvent.d.ts +4 -0
  93. package/plugins/PanoMeasurePlugin/utils/getIntersectionFromEvent.js +20 -0
  94. package/plugins/PanoMeasurePlugin/utils/getPointFromHammerEvent.d.ts +10 -0
  95. package/plugins/PanoMeasurePlugin/utils/getPointFromHammerEvent.js +33 -0
  96. package/plugins/PanoMeasurePlugin/utils/ironbox.d.ts +1 -0
  97. package/plugins/PanoMeasurePlugin/utils/ironbox.js +14 -0
  98. package/plugins/PanoMeasurePlugin/utils/isNDCPointInScreen.d.ts +2 -0
  99. package/plugins/PanoMeasurePlugin/utils/isNDCPointInScreen.js +16 -0
  100. package/plugins/PanoMeasurePlugin/utils/line.d.ts +17 -0
  101. package/plugins/PanoMeasurePlugin/utils/line.js +61 -0
  102. package/plugins/PanoMeasurePlugin/utils/math.d.ts +17 -0
  103. package/plugins/PanoMeasurePlugin/utils/math.js +57 -0
  104. package/plugins/PanoMeasurePlugin/utils/mouseGroup.d.ts +2 -0
  105. package/plugins/PanoMeasurePlugin/utils/mouseGroup.js +42 -0
  106. package/plugins/PanoMeasurePlugin/utils/ndc2Screen.d.ts +5 -0
  107. package/plugins/PanoMeasurePlugin/utils/ndc2Screen.js +16 -0
  108. package/plugins/PanoRulerPlugin/index.d.ts +4 -0
  109. package/plugins/PanoRulerPlugin/index.js +8 -3
  110. package/plugins/TreasurePlugin/Controller.js +2 -2
  111. package/plugins/TreasurePlugin/TreasureOpenAnime.js +2 -2
  112. package/plugins/floorplan/Assets/floorplanExtraObject.d.ts +1 -1
  113. package/plugins/floorplan/Assets/floorplanExtraObject.js +3 -3
  114. package/plugins/floorplan/ModelFloorplanPlugin/Controller.d.ts +5 -2
  115. package/plugins/floorplan/ModelFloorplanPlugin/Controller.js +22 -11
  116. package/plugins/floorplan/ModelFloorplanPlugin/components/Camera.js +4 -4
  117. package/plugins/floorplan/ModelFloorplanPlugin/components/Compass.js +5 -5
  118. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomHighlight.js +2 -2
  119. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomLabels.js +2 -2
  120. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomMaterial.d.ts +11 -0
  121. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomMaterial.js +174 -0
  122. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RuleLabels.d.ts +8 -0
  123. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RuleLabels.js +182 -0
  124. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/index.d.ts +2 -0
  125. package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/index.js +14 -2
  126. package/plugins/floorplan/ModelFloorplanPlugin/components/index.d.ts +3 -0
  127. package/plugins/floorplan/ModelFloorplanPlugin/components/index.js +1 -1
  128. package/plugins/floorplan/ModelFloorplanPlugin/typings/utility.d.ts +2 -0
  129. package/plugins/floorplan/ModelFloorplanPlugin/typings/utility.js +7 -0
  130. package/plugins/floorplan/ModelFloorplanPlugin/utils/constant.d.ts +1 -1
  131. package/plugins/floorplan/ModelFloorplanPlugin/utils/constant.js +1 -1
  132. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/Camera.js +3 -2
  133. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/Camera.style.js +4 -4
  134. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/NowFloor/ExtraObjects.js +2 -2
  135. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/NowFloor/RoomHighlight.js +2 -2
  136. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/NowFloor/index.js +2 -2
  137. package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/index.js +2 -2
  138. package/plugins/floorplan/TopviewFloorplanPlugin/Controller.d.ts +3 -0
  139. package/plugins/floorplan/TopviewFloorplanPlugin/Controller.js +16 -6
  140. package/plugins/floorplan/index.d.ts +4 -0
  141. package/plugins/floorplan/index.js +13 -0
  142. package/plugins/floorplan/typings/floorplanData.d.ts +2 -0
  143. package/plugins/floorplan/typings/floorplanServerData.d.ts +3 -1
  144. package/plugins/floorplan/typings/floorplanServerData.js +3 -3
  145. package/plugins/floorplan/utils/formatData.js +3 -2
  146. package/plugins/floorplan/utils/formatPosition.js +2 -0
  147. package/shared-utils/Subscribe.js +4 -2
  148. package/shared-utils/animationFrame/BetterTween.js +5 -1
  149. package/shared-utils/changeModelCanvasOpacity.d.ts +2 -0
  150. package/shared-utils/{changeModelCanvansOpacity.js → changeModelCanvasOpacity.js} +2 -2
  151. package/shared-utils/filter.js +4 -2
  152. package/shared-utils/math/planimetry.js +2 -0
  153. package/shared-utils/removeArrayItem.d.ts +7 -0
  154. package/shared-utils/removeArrayItem.js +22 -0
  155. package/shared-utils/three/loadTexture.d.ts +2 -2
  156. package/shared-utils/three/loadTexture.js +21 -2
  157. package/shared-utils/changeModelCanvansOpacity.d.ts +0 -2
@@ -0,0 +1,182 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = RuleLabels;
11
+
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ require("core-js/modules/es.array.map.js");
17
+
18
+ require("core-js/modules/es.object.keys.js");
19
+
20
+ require("core-js/modules/es.array.filter.js");
21
+
22
+ require("core-js/modules/es.object.to-string.js");
23
+
24
+ require("core-js/modules/es.array.sort.js");
25
+
26
+ require("core-js/modules/es.array.flat.js");
27
+
28
+ require("core-js/modules/es.array.unscopables.flat.js");
29
+
30
+ require("core-js/modules/es.array.slice.js");
31
+
32
+ require("core-js/modules/es.array.concat.js");
33
+
34
+ require("core-js/modules/es.object.assign.js");
35
+
36
+ var _react = _interopRequireDefault(require("react"));
37
+
38
+ var _px2rem = _interopRequireDefault(require("../../../../../shared-utils/px2rem"));
39
+
40
+ var _isNil = require("../../../../../shared-utils/isNil");
41
+
42
+ var padding = 1000;
43
+
44
+ /** 展示当前楼层的户型图对应上下左右的标尺 */
45
+ function RuleLabels(props) {
46
+ var currentFloorDatas = props.floorplanData.floorDatas[props.floorIndex];
47
+ var bounding = props.floorplanData.bounding;
48
+ var ruleLabels = currentFloorDatas.rules;
49
+ if (!ruleLabels) return null;
50
+ return /*#__PURE__*/_react["default"].createElement("div", {
51
+ className: "floorplan-plugin__rulelabels"
52
+ }, Object.keys(ruleLabels).map(function (direction) {
53
+ return /*#__PURE__*/_react["default"].createElement(RulesItem, {
54
+ key: direction,
55
+ data: ruleLabels[direction],
56
+ type: direction,
57
+ bounding: bounding,
58
+ pxmm: props.pxmm
59
+ });
60
+ }));
61
+ }
62
+
63
+ function RulesItem(props) {
64
+ var _rulesStyle;
65
+
66
+ var pxmm = props.pxmm,
67
+ bounding = props.bounding,
68
+ type = props.type,
69
+ data = props.data;
70
+ var isTop = type === 'top';
71
+ var isBottom = type === 'bottom';
72
+ var isLeft = type === 'left';
73
+ var isRight = type === 'right';
74
+ var isRow = isTop || isBottom; // 计算每一段墙的长度,以及墙两侧点距离标尺初始点的像素值
75
+
76
+ var positionArray = data.map(function (_ref) {
77
+ var _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
78
+ start = _ref2[0],
79
+ end = _ref2[1];
80
+
81
+ return isRow ? [start.x, end.x] : [start.y, end.y];
82
+ }).flat().sort().filter(function (x, index, arr) {
83
+ if (index === 0) return true;
84
+ return x !== arr[index - 1];
85
+ });
86
+ var minPosition = positionArray[0];
87
+ var maxPosition = positionArray.slice(-1)[0];
88
+ var length = maxPosition - minPosition;
89
+ var minBounding = isRow ? bounding.min.x : bounding.min.y;
90
+ var lengthPx = length * pxmm;
91
+ var positionPxArray = positionArray.map(function (x) {
92
+ return (x - minPosition) / length * lengthPx;
93
+ }); // 在主要方向上的偏移量,上下的标尺是距离图片左侧的长度,左右的标尺是距离图片底部的距离
94
+
95
+ var translateMain = (minPosition - minBounding) * pxmm; // 在次要方向的偏移量,希望达到的效果是标尺轴距离户型图边界 27px,但是图片自身是带有 1000mm 的边界,所以在计算时需要减去这个边界
96
+
97
+ var translateSecond = 27 - padding * pxmm;
98
+
99
+ var transform = function () {
100
+ if (isTop) return "translate(".concat(translateMain, "px, ").concat(-translateSecond, "px)");
101
+ if (isBottom) return "translate(".concat(translateMain, "px, ").concat(translateSecond, "px)");
102
+ if (isLeft) return "translate(".concat(-translateSecond, "px, ").concat(-translateMain, "px)");
103
+ if (isRight) return "translate(".concat(translateSecond, "px, ").concat(-translateMain - lengthPx, "px)");
104
+ }(); // 把点位的户型图坐标转成距离起始位置的像素值
105
+
106
+
107
+ var textArray = positionArray.map(function (position, index, array) {
108
+ if (index === 0) return;
109
+ var distance = position - array[index - 1];
110
+ var positionPx = (array[index - 1] + distance / 2 - minPosition) / length * lengthPx;
111
+ return {
112
+ distance: distance,
113
+ positionPx: positionPx
114
+ };
115
+ }).filter(_isNil.notNil).filter(function (item) {
116
+ return item.distance / length > 0.12;
117
+ });
118
+ var rulesStyle = (_rulesStyle = {
119
+ position: 'absolute',
120
+ transform: "".concat(transform, " ").concat(isRow ? '' : 'rotate(-90deg)'),
121
+ transformOrigin: "".concat(isRight ? 'right top' : '').concat(isLeft ? 'left bottom' : ''),
122
+ left: isRow ? 0 : undefined,
123
+ bottom: !isRow ? 0 : undefined
124
+ }, (0, _defineProperty2["default"])(_rulesStyle, type, 0), (0, _defineProperty2["default"])(_rulesStyle, "width", lengthPx + 'px'), (0, _defineProperty2["default"])(_rulesStyle, "height", (0, _px2rem["default"])(5)), (0, _defineProperty2["default"])(_rulesStyle, "display", 'flex'), (0, _defineProperty2["default"])(_rulesStyle, "alignItems", 'center'), _rulesStyle);
125
+ var ruleLineStyle = {
126
+ background: '#fff',
127
+ opacity: 0.05,
128
+ width: '100%',
129
+ height: (0, _px2rem["default"])(1)
130
+ };
131
+ var ruleScaleStyle = {
132
+ position: 'absolute',
133
+ background: '#fff',
134
+ opacity: 0.05,
135
+ transformOrigin: 'center',
136
+ width: (0, _px2rem["default"])(1),
137
+ height: (0, _px2rem["default"])(5)
138
+ };
139
+ var isRightOrBottom = isRight || isBottom;
140
+ var textWrapperStyle = {
141
+ width: 0,
142
+ height: 0,
143
+ position: 'absolute',
144
+ bottom: isRightOrBottom ? (0, _px2rem["default"])(10) : undefined,
145
+ top: isRightOrBottom ? undefined : (0, _px2rem["default"])(10)
146
+ };
147
+ var textStyle = {
148
+ position: 'absolute',
149
+ width: 'max-content',
150
+ display: 'block',
151
+ transform: "translate(-50%, -50%) ".concat(isRow ? '' : 'rotate(180deg)'),
152
+ fontSize: (0, _px2rem["default"])(10),
153
+ color: '#fff',
154
+ opacity: 0.2
155
+ };
156
+ return /*#__PURE__*/_react["default"].createElement("div", {
157
+ className: "rule-labels-".concat(type),
158
+ style: rulesStyle
159
+ }, /*#__PURE__*/_react["default"].createElement("div", {
160
+ className: "rule-line",
161
+ style: ruleLineStyle
162
+ }), positionPxArray.map(function (position, index) {
163
+ return /*#__PURE__*/_react["default"].createElement("div", {
164
+ key: index,
165
+ className: "rule-scale",
166
+ style: Object.assign({
167
+ left: "".concat(position, "px")
168
+ }, ruleScaleStyle)
169
+ });
170
+ }), textArray.map(function (textItem, index) {
171
+ return /*#__PURE__*/_react["default"].createElement("div", {
172
+ key: index,
173
+ className: "text-wrapper",
174
+ style: Object.assign({
175
+ left: "".concat(textItem.positionPx, "px")
176
+ }, textWrapperStyle)
177
+ }, /*#__PURE__*/_react["default"].createElement("span", {
178
+ className: "text",
179
+ style: textStyle
180
+ }, textItem.distance));
181
+ }));
182
+ }
@@ -7,6 +7,8 @@ export default function NowFloor(props: {
7
7
  visible: boolean;
8
8
  floorIndex: number;
9
9
  hoverEnable?: boolean;
10
+ ruleLabelsEnable?: boolean;
11
+ roomLabelsEnable?: boolean;
10
12
  floorplanData: FloorplanData;
11
13
  getLabelElement?: (room: FloorplanRoomItem) => Element | null;
12
14
  onRoomHeightClick?: (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => boolean | void;
@@ -33,6 +33,10 @@ var _RoomHighlight = _interopRequireDefault(require("./RoomHighlight"));
33
33
 
34
34
  var _FloorplanImage = _interopRequireDefault(require("../../../components/FloorplanImage"));
35
35
 
36
+ var _RuleLabels = _interopRequireDefault(require("./RuleLabels"));
37
+
38
+ var _RoomMaterial = _interopRequireDefault(require("./RoomMaterial"));
39
+
36
40
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
37
41
 
38
42
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -49,14 +53,22 @@ function NowFloor(props) {
49
53
  return /*#__PURE__*/React.createElement("div", {
50
54
  className: "now-floor",
51
55
  style: floorStyle
52
- }, !!props.hoverEnable && props.visible && /*#__PURE__*/React.createElement(_RoomHighlight["default"], (0, _extends2["default"])({}, props, {
56
+ }, /*#__PURE__*/React.createElement(_RoomMaterial["default"], {
57
+ floorplanData: floorplanData,
58
+ floorIndex: floorIndex,
59
+ pxmm: props.pxmm
60
+ }), !!props.hoverEnable && props.visible && /*#__PURE__*/React.createElement(_RoomHighlight["default"], (0, _extends2["default"])({}, props, {
53
61
  onClick: props.onRoomHeightClick
54
62
  })), /*#__PURE__*/React.createElement(_FloorplanImage["default"], {
55
63
  floorplanData: floorplanData,
56
64
  floorIndex: floorIndex
57
- }), /*#__PURE__*/React.createElement(_RoomLabels["default"], {
65
+ }), !!props.roomLabelsEnable && /*#__PURE__*/React.createElement(_RoomLabels["default"], {
58
66
  floorplanData: floorplanData,
59
67
  floorIndex: floorIndex,
60
68
  getLabelElement: getLabelElement
69
+ }), !!props.ruleLabelsEnable && /*#__PURE__*/React.createElement(_RuleLabels["default"], {
70
+ floorplanData: floorplanData,
71
+ floorIndex: floorIndex,
72
+ pxmm: props.pxmm
61
73
  }));
62
74
  }
@@ -9,6 +9,9 @@ declare const _default: React.NamedExoticComponent<{
9
9
  panoIndex: number;
10
10
  floorIndex: number;
11
11
  hoverEnable?: boolean | undefined;
12
+ compassEnable?: boolean | undefined;
13
+ ruleLabelsEnable?: boolean | undefined;
14
+ roomLabelsEnable?: boolean | undefined;
12
15
  lastPanoramaLongitude: number;
13
16
  floorplanData?: FloorplanData | undefined;
14
17
  cameraImage?: {
@@ -76,7 +76,7 @@ var _default = /*#__PURE__*/React.memo(function Main(props) {
76
76
  floorplanData: props.floorplanData
77
77
  })), /*#__PURE__*/React.createElement(_Camera["default"], (0, _extends2["default"])({}, props, {
78
78
  floorplanData: props.floorplanData
79
- })), /*#__PURE__*/React.createElement(_Compass["default"], {
79
+ })), !!props.compassEnable && /*#__PURE__*/React.createElement(_Compass["default"], {
80
80
  floorplanData: props.floorplanData
81
81
  }));
82
82
  }, function (prev, next) {
@@ -0,0 +1,2 @@
1
+ export declare type RecordKeys<T> = T extends Record<infer P, any> ? P : any;
2
+ export declare type RecordValue<T> = T extends Record<any, infer P> ? P : any;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
@@ -1,5 +1,5 @@
1
1
  export declare const enum FloorplanErrorType {
2
- UnknowError = "UnknowError",
2
+ UnknownError = "UnknowError",
3
3
  DataNotLoaded = "DataNotLoaded",
4
4
  BreakOffByHide = "BreakOffByHide",
5
5
  ModelNotLoaded = "ModelNotLoaded",
@@ -12,7 +12,7 @@ var FloorplanErrorType;
12
12
  exports.FloorplanErrorType = FloorplanErrorType;
13
13
 
14
14
  (function (FloorplanErrorType) {
15
- FloorplanErrorType["UnknowError"] = "UnknowError";
15
+ FloorplanErrorType["UnknownError"] = "UnknowError";
16
16
  FloorplanErrorType["DataNotLoaded"] = "DataNotLoaded";
17
17
  FloorplanErrorType["BreakOffByHide"] = "BreakOffByHide";
18
18
  FloorplanErrorType["ModelNotLoaded"] = "ModelNotLoaded";
@@ -2,8 +2,6 @@
2
2
 
3
3
  require("core-js/modules/es.array.iterator.js");
4
4
 
5
- require("core-js/modules/es.object.to-string.js");
6
-
7
5
  require("core-js/modules/es.string.iterator.js");
8
6
 
9
7
  require("core-js/modules/es.weak-map.js");
@@ -29,6 +27,8 @@ require("core-js/modules/es.object.assign.js");
29
27
 
30
28
  require("core-js/modules/es.array.every.js");
31
29
 
30
+ require("core-js/modules/es.object.to-string.js");
31
+
32
32
  require("core-js/modules/es.object.keys.js");
33
33
 
34
34
  var React = _interopRequireWildcard(require("react"));
@@ -47,6 +47,7 @@ var _default = /*#__PURE__*/React.memo(function Camera(props) {
47
47
  var getCameraPositionTransform = function getCameraPositionTransform(panoIndex) {
48
48
  var observers = props.floorplanData.observers;
49
49
  var observer = observers[panoIndex];
50
+ if (!observer) return '';
50
51
  var left = Math.floor(observer.positionInImage.x * props.width);
51
52
  var top = Math.floor(observer.positionInImage.y * props.height);
52
53
  return "translate(".concat(left, "px, ").concat(top, "px)");
@@ -26,10 +26,10 @@ var positionStyle = {
26
26
  exports.positionStyle = positionStyle;
27
27
  var rotateStyle = {
28
28
  position: 'absolute',
29
- left: "".concat((0, _px2rem["default"])(-15)),
30
- top: "".concat((0, _px2rem["default"])(-15)),
31
- width: "".concat((0, _px2rem["default"])(17)),
32
- height: "".concat((0, _px2rem["default"])(17)),
29
+ left: (0, _px2rem["default"])(-15),
30
+ top: (0, _px2rem["default"])(-15),
31
+ width: (0, _px2rem["default"])(17),
32
+ height: (0, _px2rem["default"])(17),
33
33
  backgroundSize: '100%',
34
34
  backgroundRepeat: 'no-repeat',
35
35
  transformOrigin: "".concat((0, _px2rem["default"])(15), " ").concat((0, _px2rem["default"])(15)),
@@ -56,8 +56,8 @@ function ExtraObjects(props) {
56
56
  }
57
57
  }, /*#__PURE__*/React.createElement("div", {
58
58
  style: {
59
- width: "".concat((0, _px2rem["default"])(extraObject.icon.width)),
60
- height: "".concat((0, _px2rem["default"])(extraObject.icon.height)),
59
+ width: (0, _px2rem["default"])(extraObject.icon.width),
60
+ height: (0, _px2rem["default"])(extraObject.icon.height),
61
61
  backgroundImage: "url(".concat(extraObject.icon.url, ")"),
62
62
  transform: 'translate(-50%, -50%)'
63
63
  }
@@ -2,8 +2,6 @@
2
2
 
3
3
  require("core-js/modules/es.array.iterator.js");
4
4
 
5
- require("core-js/modules/es.object.to-string.js");
6
-
7
5
  require("core-js/modules/es.string.iterator.js");
8
6
 
9
7
  require("core-js/modules/es.weak-map.js");
@@ -31,6 +29,8 @@ require("core-js/modules/es.array.sort.js");
31
29
 
32
30
  require("core-js/modules/es.array.filter.js");
33
31
 
32
+ require("core-js/modules/es.object.to-string.js");
33
+
34
34
  require("core-js/modules/es.array.map.js");
35
35
 
36
36
  var React = _interopRequireWildcard(require("react"));
@@ -2,8 +2,6 @@
2
2
 
3
3
  require("core-js/modules/es.array.iterator.js");
4
4
 
5
- require("core-js/modules/es.object.to-string.js");
6
-
7
5
  require("core-js/modules/es.string.iterator.js");
8
6
 
9
7
  require("core-js/modules/es.weak-map.js");
@@ -27,6 +25,8 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
27
25
 
28
26
  require("core-js/modules/es.array.filter.js");
29
27
 
28
+ require("core-js/modules/es.object.to-string.js");
29
+
30
30
  var React = _interopRequireWildcard(require("react"));
31
31
 
32
32
  var _RoomHighlight = _interopRequireDefault(require("./RoomHighlight"));
@@ -2,8 +2,6 @@
2
2
 
3
3
  require("core-js/modules/es.array.iterator.js");
4
4
 
5
- require("core-js/modules/es.object.to-string.js");
6
-
7
5
  require("core-js/modules/es.string.iterator.js");
8
6
 
9
7
  require("core-js/modules/es.weak-map.js");
@@ -27,6 +25,8 @@ require("core-js/modules/es.object.assign.js");
27
25
 
28
26
  require("core-js/modules/es.array.every.js");
29
27
 
28
+ require("core-js/modules/es.object.to-string.js");
29
+
30
30
  require("core-js/modules/es.object.keys.js");
31
31
 
32
32
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
@@ -7,6 +7,9 @@ export interface TopviewFloorplanPluginParameterType {
7
7
  scale?: number;
8
8
  hoverEnable?: boolean;
9
9
  autoShowEnable?: boolean;
10
+ compassEnable?: boolean;
11
+ ruleLabelsEnable?: boolean;
12
+ roomLabelsEnable?: boolean;
10
13
  cameraImage?: {
11
14
  style: React.CSSProperties;
12
15
  };
@@ -43,7 +43,7 @@ var _getPxmm = _interopRequireDefault(require("../../../shared-utils/getPxmm"));
43
43
 
44
44
  var _components = _interopRequireDefault(require("../ModelFloorplanPlugin/components"));
45
45
 
46
- var _changeModelCanvansOpacity = _interopRequireDefault(require("../../../shared-utils/changeModelCanvansOpacity"));
46
+ var _changeModelCanvasOpacity = _interopRequireDefault(require("../../../shared-utils/changeModelCanvasOpacity"));
47
47
 
48
48
  var _style = require("./style");
49
49
 
@@ -218,7 +218,7 @@ var TopviewFloorplanPluginController = /*#__PURE__*/function () {
218
218
  this.visible = true;
219
219
  this.updateSize();
220
220
  this.render(renderDuration);
221
- (0, _changeModelCanvansOpacity["default"])(this.five, modelOpacity, renderDuration);
221
+ (0, _changeModelCanvasOpacity["default"])(this.five, modelOpacity, renderDuration);
222
222
  this.five.on('wantsGesture', this.handleWantsGesture);
223
223
  }
224
224
  }, {
@@ -227,7 +227,7 @@ var TopviewFloorplanPluginController = /*#__PURE__*/function () {
227
227
  var modelOpacity = 1;
228
228
  var renderDuration = 0;
229
229
  this.visible = false;
230
- (0, _changeModelCanvansOpacity["default"])(this.five, modelOpacity, renderDuration);
230
+ (0, _changeModelCanvasOpacity["default"])(this.five, modelOpacity, renderDuration);
231
231
  this.render();
232
232
  this.five.off('wantsGesture', this.handleWantsGesture);
233
233
  }
@@ -238,6 +238,13 @@ var TopviewFloorplanPluginController = /*#__PURE__*/function () {
238
238
  value: function render(duration) {
239
239
  if (!this.container) return;
240
240
  if (this.size.width === 0) return;
241
+ var _this$configs = this.configs,
242
+ cameraImage = _this$configs.cameraImage,
243
+ hoverEnable = _this$configs.hoverEnable,
244
+ getLabelElement = _this$configs.getLabelElement,
245
+ roomLabelsEnable = _this$configs.roomLabelsEnable,
246
+ compassEnable = _this$configs.compassEnable,
247
+ ruleLabelsEnable = _this$configs.ruleLabelsEnable;
241
248
  var props = {
242
249
  five: this.five,
243
250
  pxmm: this.pxmm,
@@ -247,9 +254,12 @@ var TopviewFloorplanPluginController = /*#__PURE__*/function () {
247
254
  floorIndex: this.floorIndex,
248
255
  floorplanData: this.floorplanData,
249
256
  onRoomHeightClick: this.handleClick,
250
- cameraImage: this.configs.cameraImage,
251
- hoverEnable: this.configs.hoverEnable,
252
- getLabelElement: this.configs.getLabelElement,
257
+ cameraImage: cameraImage,
258
+ hoverEnable: hoverEnable !== null && hoverEnable !== void 0 ? hoverEnable : false,
259
+ roomLabelsEnable: roomLabelsEnable !== null && roomLabelsEnable !== void 0 ? roomLabelsEnable : true,
260
+ compassEnable: compassEnable !== null && compassEnable !== void 0 ? compassEnable : true,
261
+ ruleLabelsEnable: ruleLabelsEnable !== null && ruleLabelsEnable !== void 0 ? ruleLabelsEnable : true,
262
+ getLabelElement: getLabelElement,
253
263
  lastPanoramaLongitude: this.lastPanoramaLongitude
254
264
  };
255
265
 
@@ -0,0 +1,4 @@
1
+ export declare const FloorplanPluginServerParams: {
2
+ name: string;
3
+ version: number;
4
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.FloorplanPluginServerParams = void 0;
9
+ var FloorplanPluginServerParams = {
10
+ name: 'FloorplanPlugin',
11
+ version: 0
12
+ };
13
+ exports.FloorplanPluginServerParams = FloorplanPluginServerParams;
@@ -77,11 +77,13 @@ export interface FloorplanRoomItem {
77
77
  /** 当前房间里的 observer 索引 */
78
78
  observerIndexs: number[];
79
79
  }
80
+ export declare type FloorplanServerRuleLabels = Record<'top' | 'right' | 'bottom' | 'left', FloorplanPosition[][]>;
80
81
  /** 当前楼层的数据 */
81
82
  export interface FloorplanFloorData {
82
83
  floorName: string;
83
84
  floorIndex: number;
84
85
  rooms: FloorplanRoomItem[];
86
+ rules: FloorplanServerRuleLabels;
85
87
  }
86
88
  /** 对 observer 做一些样式上的计算
87
89
  * @description 每一个 floorplanObserver 对应一个 observer
@@ -1,5 +1,5 @@
1
1
  /** 房屋数据映射表 */
2
- export declare const ROOM_DETILE_TYPE_MAP: ({
2
+ export declare const ROOM_FETILE_TYPE_MAP: ({
3
3
  type: number;
4
4
  floorType: number;
5
5
  roomType: string;
@@ -96,11 +96,13 @@ export interface FloorplanServerRoomItem {
96
96
  /** 当前房间里的 observer 索引 */
97
97
  observer_indexs: number[];
98
98
  }
99
+ export declare type FloorplanServerRuleLabels = Record<'top' | 'right' | 'bottom' | 'left', FloorplanServerPosition[][]>;
99
100
  /** 当前楼层的数据 */
100
101
  export interface FloorplanServerFloorData {
101
102
  floor_name: string;
102
103
  floor_index: number;
103
104
  rooms: FloorplanServerRoomItem[];
105
+ rules: FloorplanServerRuleLabels;
104
106
  }
105
107
  /** 对 observer 做一些样式上的计算
106
108
  * @description 每一个 FloorplanServer_observer 对应一个 observer
@@ -5,10 +5,10 @@ require("core-js/modules/es.object.define-property.js");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.ROOM_TYPE_MAP = exports.ROOM_DETILE_TYPE_MAP = exports.FLOOR_TYPE_MAP = void 0;
8
+ exports.ROOM_TYPE_MAP = exports.ROOM_FETILE_TYPE_MAP = exports.FLOOR_TYPE_MAP = void 0;
9
9
 
10
10
  /** 房屋数据映射表 */
11
- var ROOM_DETILE_TYPE_MAP = [{
11
+ var ROOM_FETILE_TYPE_MAP = [{
12
12
  type: 0,
13
13
  floorType: 1,
14
14
  roomType: '100900000012',
@@ -308,7 +308,7 @@ var ROOM_DETILE_TYPE_MAP = [{
308
308
  }];
309
309
  /** 地板信息映射表 */
310
310
 
311
- exports.ROOM_DETILE_TYPE_MAP = ROOM_DETILE_TYPE_MAP;
311
+ exports.ROOM_FETILE_TYPE_MAP = ROOM_FETILE_TYPE_MAP;
312
312
  var FLOOR_TYPE_MAP = [{
313
313
  type: 0,
314
314
  description: '木质地板'
@@ -130,7 +130,8 @@ function formatFloorData(_data) {
130
130
  return {
131
131
  floorName: _data.floor_name,
132
132
  floorIndex: _data.floor_index,
133
- rooms: _data.rooms.map(formatRoom)
133
+ rooms: _data.rooms.map(formatRoom),
134
+ rules: _data.rules
134
135
  };
135
136
  }
136
137
 
@@ -198,7 +199,7 @@ function formatExtraObjects(data, five, floorplanData) {
198
199
  var extraObjects = data.map(function (object) {
199
200
  var position = object.position;
200
201
  var icon = object.icon ? object.icon : {
201
- url: _floorplanExtraObject.FLOORPLANE_EXTRA_OBJECT_IMAGE,
202
+ url: _floorplanExtraObject.FLOORPLAN_EXTRA_OBJECT_IMAGE,
202
203
  width: 45,
203
204
  height: 48
204
205
  };
@@ -19,6 +19,8 @@ require("core-js/modules/es.array.concat.js");
19
19
 
20
20
  require("core-js/modules/es.array.for-each.js");
21
21
 
22
+ require("core-js/modules/es.object.to-string.js");
23
+
22
24
  require("core-js/modules/web.dom-collections.for-each.js");
23
25
 
24
26
  require("core-js/modules/es.array.map.js");
@@ -2,14 +2,14 @@
2
2
 
3
3
  require("core-js/modules/es.array.slice.js");
4
4
 
5
- require("core-js/modules/es.object.to-string.js");
6
-
7
5
  require("core-js/modules/es.function.name.js");
8
6
 
9
7
  require("core-js/modules/es.array.from.js");
10
8
 
11
9
  require("core-js/modules/es.string.iterator.js");
12
10
 
11
+ require("core-js/modules/es.regexp.exec.js");
12
+
13
13
  require("core-js/modules/es.symbol.js");
14
14
 
15
15
  require("core-js/modules/es.symbol.description.js");
@@ -35,6 +35,8 @@ require("core-js/modules/es.array.concat.js");
35
35
 
36
36
  require("core-js/modules/es.array.filter.js");
37
37
 
38
+ require("core-js/modules/es.object.to-string.js");
39
+
38
40
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
39
41
 
40
42
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
@@ -16,8 +16,12 @@ require("core-js/modules/es.array.concat.js");
16
16
 
17
17
  require("core-js/modules/es.array.for-each.js");
18
18
 
19
+ require("core-js/modules/es.object.to-string.js");
20
+
19
21
  require("core-js/modules/web.dom-collections.for-each.js");
20
22
 
23
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
24
+
21
25
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
22
26
 
23
27
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
@@ -85,7 +89,7 @@ var BetterTween = /*#__PURE__*/function (_TWEEN$Tween) {
85
89
  return _this;
86
90
  }
87
91
 
88
- return BetterTween;
92
+ return (0, _createClass2["default"])(BetterTween);
89
93
  }(_tween["default"].Tween);
90
94
 
91
95
  exports.BetterTween = BetterTween;
@@ -0,0 +1,2 @@
1
+ import type { Five } from '@realsee/five';
2
+ export default function changeModelCanvasOpacity(five: Five, opacity: number, duration?: number): void;
@@ -5,7 +5,7 @@ require("core-js/modules/es.object.define-property.js");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports["default"] = changeModelCanvansOpacity;
8
+ exports["default"] = changeModelCanvasOpacity;
9
9
 
10
10
  require("core-js/modules/es.array.iterator.js");
11
11
 
@@ -19,7 +19,7 @@ require("core-js/modules/web.dom-collections.iterator.js");
19
19
 
20
20
  require("core-js/modules/web.timers.js");
21
21
 
22
- function changeModelCanvansOpacity(five, opacity) {
22
+ function changeModelCanvasOpacity(five, opacity) {
23
23
  var duration = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 300;
24
24
  var fiveEle = five.getElement();
25
25
  if (!fiveEle) return;