@realsee/dnalogel 0.1.4 → 0.1.5
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.
- package/components/ARVideoFigure/ARVideoFigureMesh.js +56 -32
- package/components/ARVideoFigure/ARVideoFigureScene.js +30 -19
- package/components/ARVideoFigure/ImgBgTransparent.js +22 -6
- package/components/ARVideoFigure/ImgBgTransparentMesh.js +40 -30
- package/components/ARVideoFigure/fragmentShader.js +2 -0
- package/components/ARVideoFigure/index.js +22 -6
- package/components/ARVideoFigure/vertexShader.js +2 -0
- package/components/GlassFilters/index.js +25 -1
- package/components/ModelView/ModelViewController.js +39 -29
- package/components/ModelView/index.js +4 -2
- package/components/PBRView/index.js +15 -1
- package/components/PaintBrush/index.js +15 -1
- package/components/PanoTag/index.js +2 -0
- package/data/1aGKl9JmrlXMXx8d.js +2 -0
- package/data/54djM0oR6ky3Ey8e.d.ts +55 -0
- package/data/54djM0oR6ky3Ey8e.js +350 -0
- package/data/6gyq3v1verxD7JO1.js +2 -0
- package/data/8054djM0oR6ky3Ey8e.js +2 -0
- package/data/KpokNd82rwjhackhQTBEoYKHg8zGbPXe.js +2 -0
- package/data/PrXel3aqGbp34JQn.js +2 -0
- package/data/XJ6NMLWnkAY3Rdx8.js +2 -0
- package/data/YdoNP9K4rwQDwjJr.js +2 -0
- package/data/ZLvK29zj4L29Jowd.d.ts +55 -0
- package/data/ZLvK29zj4L29Jowd.js +372 -0
- package/data/auto3d-njL5J99VwCmnjtQElOmXQr.js +2 -0
- package/data/extrude-walls/ZLvK29zj4L29Jowd.d.ts +5 -0
- package/data/extrude-walls/ZLvK29zj4L29Jowd.js +14 -0
- package/data/extrude-walls/lo024DEgzanMj5BE.d.ts +5 -0
- package/data/extrude-walls/lo024DEgzanMj5BE.js +14 -0
- package/data/jd6oMOzPxnQ3BvxY_B7yw51J9rXlhYhjhGTOgRVqu6WeEqjNX.js +2 -0
- package/data/lo024DEgzanMj5BE.d.ts +55 -0
- package/data/lo024DEgzanMj5BE.js +966 -0
- package/data/oPzy3ApbjjpD8YdR.js +2 -0
- package/data/qjAxMG4XbPn96wKG.js +2 -0
- package/data/rXel3aPQRRBD4JQn.js +2 -0
- package/data/vLykj3NWrllMrG06.js +2 -0
- package/data/wz0QV9KA4ugyo9ME.js +2 -0
- package/data/zxMawr9raSg8LYjG.js +2 -0
- package/examples/FiveStateController/index.js +9 -15
- package/examples/VRHouse/Mobile.js +15 -1
- package/examples/VRHouse/PC.js +15 -1
- package/examples/VRHouse/index.js +15 -1
- package/index.js +4 -2
- package/package.json +6 -3
- package/plugins/AutoPreloadPlugin/index.js +26 -0
- package/plugins/CSS3DRenderPlugin/components/Marker/index.js +24 -16
- package/plugins/CSS3DRenderPlugin/index.js +31 -3
- package/plugins/CameraMovementPlugin/index.js +33 -9
- package/plugins/CameraMovementPlugin/typing.js +2 -0
- package/plugins/ModelChassisCompassPlugin/index.js +23 -9
- package/plugins/ModelEntryDoorGuidePlugin/index.js +27 -9
- package/plugins/ModelExtrudeWallsPlugin/index.d.ts +16 -0
- package/plugins/ModelExtrudeWallsPlugin/index.js +252 -0
- package/plugins/ModelRoomLabelPlugin/Controller.js +29 -23
- package/plugins/ModelRoomLabelPlugin/RoomLabelItem.js +21 -3
- package/plugins/ModelRoomLabelPlugin/RoomLabelItems.js +35 -25
- package/plugins/ModelRoomLabelPlugin/index.js +2 -0
- package/plugins/ModelRoomLabelPlugin/typings.js +2 -0
- package/plugins/ModelRoomLabelPlugin/utils/parseData.js +6 -0
- package/plugins/ModelTVVideoPlugin/index.js +100 -16
- package/plugins/ModelViewPlugin/index.js +25 -1
- package/plugins/PanoCursorRaycasterPlugin/components/MovePointTowardsCamera.js +29 -25
- package/plugins/PanoCursorRaycasterPlugin/components/PointAxesHelper.js +15 -1
- package/plugins/PanoCursorRaycasterPlugin/index.js +13 -6
- package/plugins/PanoCursorRaycasterPlugin/utils/addLineToFive.js +4 -2
- package/plugins/PanoCursorRaycasterPlugin/utils/createLine.js +15 -1
- package/plugins/PanoDoorLabelPlugin/index.js +2 -0
- package/plugins/PanoIRobotPlugin/index.js +2 -0
- package/plugins/PanoMaskSelectorPlugin/compare.js +2 -0
- package/plugins/PanoMaskSelectorPlugin/createBox.js +19 -1
- package/plugins/PanoMaskSelectorPlugin/createTextures.js +17 -1
- package/plugins/PanoMaskSelectorPlugin/fragmentShader.js +2 -0
- package/plugins/PanoMaskSelectorPlugin/index.js +85 -9
- package/plugins/PanoMaskSelectorPlugin/vertexShader.js +2 -0
- package/plugins/PanoRulerPlugin/data/roomInfo.js +2 -0
- package/plugins/PanoRulerPlugin/data/roomRules.js +2 -0
- package/plugins/PanoRulerPlugin/index.js +68 -20
- package/plugins/PanoRulerPlugin/typings.js +2 -0
- package/plugins/PanoTVVideoPlugin/index.js +88 -12
- package/plugins/TreasurePlugin/Controller.js +58 -52
- package/plugins/TreasurePlugin/TreasureFaceAnime.js +36 -21
- package/plugins/TreasurePlugin/TreasureObject.js +60 -56
- package/plugins/TreasurePlugin/TreasureOpenAnime.js +38 -19
- package/plugins/TreasurePlugin/constants.js +2 -0
- package/plugins/TreasurePlugin/index.js +2 -0
- package/plugins/TreasurePlugin/typings.js +2 -0
- package/plugins/floorplan/Assets/floorplanExtraObject.js +2 -0
- package/plugins/floorplan/ModelFloorplanPlugin/Controller.js +71 -88
- package/plugins/floorplan/ModelFloorplanPlugin/components/Camera.js +21 -3
- package/plugins/floorplan/ModelFloorplanPlugin/components/Compass.js +17 -3
- package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomHighlight.js +28 -4
- package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomLabels.js +23 -3
- package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/index.js +20 -6
- package/plugins/floorplan/ModelFloorplanPlugin/components/index.js +29 -7
- package/plugins/floorplan/ModelFloorplanPlugin/controller.style.js +2 -0
- package/plugins/floorplan/ModelFloorplanPlugin/index.js +4 -2
- package/plugins/floorplan/ModelFloorplanPlugin/typings/events.type.js +2 -0
- package/plugins/floorplan/ModelFloorplanPlugin/utils/constant.js +2 -0
- package/plugins/floorplan/ModelFloorplanPlugin/utils/correctFiveState.js +14 -22
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/Camera.js +25 -3
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/Camera.style.js +6 -2
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/NowFloor/ExtraObjects.js +19 -3
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/NowFloor/RoomHighlight.js +28 -4
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/NowFloor/index.js +22 -6
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/index.js +29 -19
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/index.style.js +2 -0
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Controller.js +44 -47
- package/plugins/floorplan/PanoFloorplanRadarPlugin/index.js +4 -2
- package/plugins/floorplan/TopviewFloorplanPlugin/Controller.js +50 -55
- package/plugins/floorplan/TopviewFloorplanPlugin/index.js +2 -0
- package/plugins/floorplan/TopviewFloorplanPlugin/style.js +2 -0
- package/plugins/floorplan/components/FloorplanImage.js +15 -1
- package/plugins/floorplan/typings/floorplanData.js +2 -0
- package/plugins/floorplan/typings/floorplanServerData.js +2 -0
- package/plugins/floorplan/utils/formatData.js +28 -10
- package/plugins/floorplan/utils/formatPosition.js +10 -8
- package/shared-utils/Preloader.js +6 -0
- package/shared-utils/Subscribe.js +36 -16
- package/shared-utils/animationFrame/BetterTween.js +28 -27
- package/shared-utils/animationFrame/calculateProgress.js +2 -0
- package/shared-utils/animationFrame/formatRad.js +2 -0
- package/shared-utils/animationFrame/index.js +12 -0
- package/shared-utils/animationFrame/tween.js +17 -1
- package/shared-utils/changeModelCanvansOpacity.js +14 -0
- package/shared-utils/createCanvasTextTexture.js +2 -0
- package/shared-utils/createFiveContainer.js +23 -17
- package/shared-utils/createLine/index.js +15 -1
- package/shared-utils/debounce.js +4 -0
- package/shared-utils/equal.js +15 -4
- package/shared-utils/filter.js +36 -2
- package/shared-utils/five/changeMode.js +13 -17
- package/shared-utils/five/useFivePlugin.js +2 -0
- package/shared-utils/formatRad.js +2 -0
- package/shared-utils/getPxmm.js +15 -1
- package/shared-utils/getRandomColor.js +10 -0
- package/shared-utils/isNil.js +2 -0
- package/shared-utils/isTruelyObject.js +4 -0
- package/shared-utils/math/evenNumber.js +2 -0
- package/shared-utils/math/planimetry.js +10 -0
- package/shared-utils/math/rad2Deg.js +2 -0
- package/shared-utils/nearlyEqual.js +2 -0
- package/shared-utils/nextFrame.js +2 -0
- package/shared-utils/noop.js +2 -0
- package/shared-utils/object3d2LocalMatrix.js +20 -14
- package/shared-utils/px2rem.js +10 -0
- package/shared-utils/tap.js +2 -0
- package/shared-utils/three/centerPoint.js +2 -0
- package/shared-utils/three/getExtraModelLoader.js +14 -0
- package/shared-utils/three/getNormal.js +4 -0
- package/shared-utils/three/getTextureLoader.js +16 -0
- package/shared-utils/three/loadFbxObj.js +13 -5
- package/shared-utils/three/loadTexture.js +13 -5
- package/shared-utils/three/transformPositionToVector3.js +2 -0
- package/shared-utils/three/transfromToMeshBasicMaterial.js +6 -0
- package/shared-utils/throttle.js +4 -0
- package/shared-utils/to.js +8 -4
- package/shared-utils/useDebounce.js +6 -0
- package/shared-utils/useThrottle.js +6 -0
- package/shared-utils/uuid.js +8 -0
- package/shared-utils/vectorTocoordinates.js +2 -0
- package/typedoc/components.js +2 -0
- package/typedoc/plugins.js +2 -0
- package/typedoc/shared-utils.js +2 -0
- package/typedoc/typings.js +2 -0
- package/typings/math.type.js +2 -0
- package/typings/utils.type.js +2 -0
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.array.iterator.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/es.object.to-string.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/es.string.iterator.js");
|
|
8
|
+
|
|
9
|
+
require("core-js/modules/es.weak-map.js");
|
|
10
|
+
|
|
11
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
12
|
+
|
|
13
|
+
require("core-js/modules/es.object.define-property.js");
|
|
14
|
+
|
|
15
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
16
|
+
|
|
17
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
18
|
+
|
|
19
|
+
Object.defineProperty(exports, "__esModule", {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
exports.ModelExtrudeWallsPlugin = void 0;
|
|
23
|
+
|
|
24
|
+
require("core-js/modules/es.array.for-each.js");
|
|
25
|
+
|
|
26
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
27
|
+
|
|
28
|
+
require("core-js/modules/es.function.name.js");
|
|
29
|
+
|
|
30
|
+
var _five = require("@realsee/five");
|
|
31
|
+
|
|
32
|
+
var THREE = _interopRequireWildcard(require("three"));
|
|
33
|
+
|
|
34
|
+
var _nextFrame = require("../../shared-utils/nextFrame");
|
|
35
|
+
|
|
36
|
+
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
|
+
|
|
38
|
+
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; }
|
|
39
|
+
|
|
40
|
+
var lineTo = function lineTo(d, s) {
|
|
41
|
+
return d.forEach(function (p, i) {
|
|
42
|
+
return s[!i ? 'moveTo' : 'lineTo'](p[0], p[1]);
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
var generateSideWallUV = function generateSideWallUV() {
|
|
47
|
+
return [new THREE.Vector2(1, 1), new THREE.Vector2(0, 1), new THREE.Vector2(0, 0), new THREE.Vector2(1, 0)];
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
var bezierArcTransition = function bezierArcTransition(t) {
|
|
51
|
+
return -0.7 * (2.4 * t * t * t - 3.6 * t * t + 0.2 * t);
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
var ModelExtrudeWallsPlugin = function ModelExtrudeWallsPlugin(five) {
|
|
55
|
+
var parameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
56
|
+
var state = {
|
|
57
|
+
data: parameters.data,
|
|
58
|
+
walls: {},
|
|
59
|
+
visible: true
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
var wrapper = function wrapper() {
|
|
63
|
+
if (!state.data) return;
|
|
64
|
+
var wallShape = new THREE.Shape();
|
|
65
|
+
var floorplanShape = new THREE.Shape();
|
|
66
|
+
lineTo(state.data.exterior, wallShape);
|
|
67
|
+
lineTo(state.data.exterior, floorplanShape);
|
|
68
|
+
lineTo(state.data.interior, floorplanShape);
|
|
69
|
+
var bb = new THREE.Box2();
|
|
70
|
+
bb.setFromPoints(wallShape.extractPoints(1).shape);
|
|
71
|
+
|
|
72
|
+
var generateTopUV = function generateTopUV(geometry, vertices, indexA, indexB, indexC) {
|
|
73
|
+
var ax = vertices[indexA * 3];
|
|
74
|
+
var ay = vertices[indexA * 3 + 1];
|
|
75
|
+
var bx = vertices[indexB * 3];
|
|
76
|
+
var by = vertices[indexB * 3 + 1];
|
|
77
|
+
var cx = vertices[indexC * 3];
|
|
78
|
+
var cy = vertices[indexC * 3 + 1];
|
|
79
|
+
var bbx = bb.max.x - bb.min.x;
|
|
80
|
+
var bby = bb.max.y - bb.min.y;
|
|
81
|
+
return [new THREE.Vector2((ax - bb.min.x) / bbx, 1.0 - (ay - bb.min.y) / bby), new THREE.Vector2((bx - bb.min.x) / bbx, 1.0 - (by - bb.min.y) / bby), new THREE.Vector2((cx - bb.min.x) / bbx, 1.0 - (cy - bb.min.y) / bby)];
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
var extrudeSettings = {
|
|
85
|
+
steps: 1,
|
|
86
|
+
depth: Math.abs(state.data.height),
|
|
87
|
+
bevelEnabled: false,
|
|
88
|
+
UVGenerator: {
|
|
89
|
+
generateTopUV: generateTopUV,
|
|
90
|
+
generateSideWallUV: generateSideWallUV
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
var geometry1 = new THREE.ExtrudeGeometry(wallShape, extrudeSettings);
|
|
94
|
+
var geometry2 = new THREE.ExtrudeGeometry(wallShape, extrudeSettings);
|
|
95
|
+
var geometry3 = new THREE.ExtrudeGeometry(floorplanShape, extrudeSettings);
|
|
96
|
+
geometry1.faces.forEach(function (face) {
|
|
97
|
+
var temp = face.a;
|
|
98
|
+
face.a = face.c;
|
|
99
|
+
face.c = temp;
|
|
100
|
+
});
|
|
101
|
+
geometry1.faceVertexUvs.forEach(function (faceVertexUvs) {
|
|
102
|
+
faceVertexUvs.forEach(function (uv) {
|
|
103
|
+
var temp = uv[0];
|
|
104
|
+
uv[0] = uv[2];
|
|
105
|
+
uv[2] = temp;
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
geometry1.computeFaceNormals();
|
|
109
|
+
var material0 = new THREE.MeshBasicMaterial({
|
|
110
|
+
color: 0xc8c8c8,
|
|
111
|
+
// color: 0x2bb8aa,
|
|
112
|
+
wireframe: false,
|
|
113
|
+
transparent: true,
|
|
114
|
+
opacity: 0.9
|
|
115
|
+
});
|
|
116
|
+
var material1 = new THREE.MeshBasicMaterial({
|
|
117
|
+
color: 0xffeedf,
|
|
118
|
+
wireframe: false,
|
|
119
|
+
transparent: true,
|
|
120
|
+
opacity: 0.7
|
|
121
|
+
});
|
|
122
|
+
var material2 = new THREE.MeshBasicMaterial({
|
|
123
|
+
color: 0xffffff,
|
|
124
|
+
wireframe: false,
|
|
125
|
+
transparent: true,
|
|
126
|
+
opacity: 0,
|
|
127
|
+
depthTest: false
|
|
128
|
+
});
|
|
129
|
+
var material3 = new THREE.MeshBasicMaterial({
|
|
130
|
+
color: 0xc8c8c8,
|
|
131
|
+
// color: 0x2bb8aa,
|
|
132
|
+
wireframe: false,
|
|
133
|
+
transparent: true,
|
|
134
|
+
opacity: 0.2,
|
|
135
|
+
depthTest: false
|
|
136
|
+
});
|
|
137
|
+
var renderOrder = 99;
|
|
138
|
+
|
|
139
|
+
var initMesh = function initMesh(m) {
|
|
140
|
+
m.rotation.x = -Math.PI / 2;
|
|
141
|
+
m.rotation.y = 0;
|
|
142
|
+
m.rotation.z = 0; // Math.PI / 2
|
|
143
|
+
|
|
144
|
+
m.position.y = five.model.bounding.min.y;
|
|
145
|
+
m.name = 'extrude-walls' + renderOrder;
|
|
146
|
+
m.renderOrder = renderOrder++;
|
|
147
|
+
five.needsRender = true;
|
|
148
|
+
}; // 内墙
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
var insideWall = new THREE.Mesh(geometry1, [material2, material0]); // 外墙
|
|
152
|
+
|
|
153
|
+
var outsideWall = new THREE.Mesh(geometry2, [material2, material3]); // 内墙
|
|
154
|
+
|
|
155
|
+
var lookDownWall = new THREE.Mesh(geometry3, [material1, material2]);
|
|
156
|
+
|
|
157
|
+
var append = function append() {
|
|
158
|
+
initMesh(insideWall);
|
|
159
|
+
initMesh(lookDownWall);
|
|
160
|
+
initMesh(outsideWall);
|
|
161
|
+
five.scene.add(insideWall);
|
|
162
|
+
five.scene.add(outsideWall);
|
|
163
|
+
five.scene.add(lookDownWall);
|
|
164
|
+
state.walls.inside = insideWall;
|
|
165
|
+
state.walls.outside = outsideWall;
|
|
166
|
+
state.walls.lookDown = lookDownWall;
|
|
167
|
+
state.visible = true;
|
|
168
|
+
visible(five.currentMode === _five.Five.Mode.Floorplan);
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
if (five.model.loaded) {
|
|
172
|
+
append();
|
|
173
|
+
} else {
|
|
174
|
+
five.once('modelLoaded', function () {
|
|
175
|
+
return append();
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
};
|
|
179
|
+
|
|
180
|
+
var enable = function enable() {
|
|
181
|
+
state.visible = true;
|
|
182
|
+
visible(true);
|
|
183
|
+
};
|
|
184
|
+
|
|
185
|
+
var disable = function disable() {
|
|
186
|
+
state.visible = false;
|
|
187
|
+
visible(false);
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
var visible = function visible() {
|
|
191
|
+
var flag = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
192
|
+
if (state.walls.inside) state.walls.inside.visible = flag;
|
|
193
|
+
if (state.walls.outside) state.walls.outside.visible = flag;
|
|
194
|
+
if (state.walls.lookDown) state.walls.lookDown.visible = flag;
|
|
195
|
+
five.needsRender = true;
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
var modeChangeListener = function modeChangeListener(mode, prevMode) {
|
|
199
|
+
if (!state.visible) return;
|
|
200
|
+
|
|
201
|
+
if (prevMode === _five.Five.Mode.Floorplan) {
|
|
202
|
+
five.once('initAnimationEnded', function () {
|
|
203
|
+
return (0, _nextFrame.nextFrame)(function () {
|
|
204
|
+
return visible(false);
|
|
205
|
+
});
|
|
206
|
+
});
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
return visible(mode === _five.Five.Mode.Floorplan);
|
|
211
|
+
};
|
|
212
|
+
|
|
213
|
+
var cameraDirectionUpdateListener = function cameraDirectionUpdateListener(_ref) {
|
|
214
|
+
var latitude = _ref.latitude;
|
|
215
|
+
if (state.walls.inside) state.walls.inside.material[1].opacity = bezierArcTransition(latitude / (Math.PI / 2));
|
|
216
|
+
if (state.walls.outside) state.walls.outside.material[1].opacity = bezierArcTransition(latitude / (Math.PI / 2));
|
|
217
|
+
if (state.walls.lookDown) state.walls.lookDown.material[0].opacity = bezierArcTransition(latitude / (Math.PI / 2));
|
|
218
|
+
};
|
|
219
|
+
|
|
220
|
+
five.on('modeChange', modeChangeListener);
|
|
221
|
+
five.on('cameraDirectionUpdate', cameraDirectionUpdateListener);
|
|
222
|
+
|
|
223
|
+
var dispose = function dispose() {
|
|
224
|
+
five.off('modeChange', modeChangeListener);
|
|
225
|
+
five.off('cameraDirectionUpdate', cameraDirectionUpdateListener);
|
|
226
|
+
if (state.walls.inside) five.scene.remove(state.walls.inside);
|
|
227
|
+
if (state.walls.outside) five.scene.remove(state.walls.outside);
|
|
228
|
+
if (state.walls.lookDown) five.scene.remove(state.walls.lookDown);
|
|
229
|
+
state.data = undefined;
|
|
230
|
+
state.walls = {};
|
|
231
|
+
state.visible = true;
|
|
232
|
+
};
|
|
233
|
+
|
|
234
|
+
wrapper();
|
|
235
|
+
|
|
236
|
+
var load = function load(data) {
|
|
237
|
+
state.data = data;
|
|
238
|
+
if (state.walls.inside) five.scene.remove(state.walls.inside);
|
|
239
|
+
if (state.walls.outside) five.scene.remove(state.walls.outside);
|
|
240
|
+
if (state.walls.lookDown) five.scene.remove(state.walls.lookDown);
|
|
241
|
+
wrapper();
|
|
242
|
+
};
|
|
243
|
+
|
|
244
|
+
return {
|
|
245
|
+
enable: enable,
|
|
246
|
+
disable: disable,
|
|
247
|
+
dispose: dispose,
|
|
248
|
+
load: load
|
|
249
|
+
};
|
|
250
|
+
};
|
|
251
|
+
|
|
252
|
+
exports.ModelExtrudeWallsPlugin = ModelExtrudeWallsPlugin;
|
|
@@ -1,12 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
require("core-js/modules/es.array.iterator.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/es.object.to-string.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/es.string.iterator.js");
|
|
8
|
+
|
|
9
|
+
require("core-js/modules/es.weak-map.js");
|
|
10
|
+
|
|
11
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
12
|
+
|
|
13
|
+
require("core-js/modules/es.object.define-property.js");
|
|
14
|
+
|
|
15
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
16
|
+
|
|
17
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
18
|
+
|
|
19
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
20
|
|
|
5
21
|
Object.defineProperty(exports, "__esModule", {
|
|
6
22
|
value: true
|
|
7
23
|
});
|
|
8
24
|
exports.ModelRoomLabelController = void 0;
|
|
9
25
|
|
|
26
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
27
|
+
|
|
28
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
29
|
+
|
|
30
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
31
|
+
|
|
10
32
|
var React = _interopRequireWildcard(require("react"));
|
|
11
33
|
|
|
12
34
|
var ReactDOM = _interopRequireWildcard(require("react-dom"));
|
|
@@ -15,33 +37,19 @@ var _RoomLabelItems = _interopRequireDefault(require("./RoomLabelItems"));
|
|
|
15
37
|
|
|
16
38
|
var _parseData = require("./utils/parseData");
|
|
17
39
|
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
19
|
-
|
|
20
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); }
|
|
21
41
|
|
|
22
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; }
|
|
23
43
|
|
|
24
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
25
|
-
|
|
26
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
27
|
-
|
|
28
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
29
|
-
|
|
30
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
31
|
-
|
|
32
44
|
var ModelRoomLabelController = /*#__PURE__*/function () {
|
|
33
45
|
function ModelRoomLabelController(five) {
|
|
34
46
|
var _this = this;
|
|
35
47
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
_defineProperty(this, "container", document.createElement('div'));
|
|
43
|
-
|
|
44
|
-
_defineProperty(this, "onFiveModeChange", function (mode) {
|
|
48
|
+
(0, _classCallCheck2["default"])(this, ModelRoomLabelController);
|
|
49
|
+
(0, _defineProperty2["default"])(this, "enabled", true);
|
|
50
|
+
(0, _defineProperty2["default"])(this, "roomLabels", []);
|
|
51
|
+
(0, _defineProperty2["default"])(this, "container", document.createElement('div'));
|
|
52
|
+
(0, _defineProperty2["default"])(this, "onFiveModeChange", function (mode) {
|
|
45
53
|
if (mode !== 'Floorplan') {
|
|
46
54
|
_this.fiveModeEnabled = false;
|
|
47
55
|
|
|
@@ -56,7 +64,6 @@ var ModelRoomLabelController = /*#__PURE__*/function () {
|
|
|
56
64
|
_this.render();
|
|
57
65
|
});
|
|
58
66
|
});
|
|
59
|
-
|
|
60
67
|
this.five = five;
|
|
61
68
|
this.fiveModeEnabled = this.five.currentMode === 'Floorplan'; // init container style
|
|
62
69
|
|
|
@@ -74,7 +81,7 @@ var ModelRoomLabelController = /*#__PURE__*/function () {
|
|
|
74
81
|
this.render();
|
|
75
82
|
}
|
|
76
83
|
|
|
77
|
-
|
|
84
|
+
(0, _createClass2["default"])(ModelRoomLabelController, [{
|
|
78
85
|
key: "dispose",
|
|
79
86
|
value: function dispose() {
|
|
80
87
|
this.five.off('modeChange', this.onFiveModeChange);
|
|
@@ -140,7 +147,6 @@ var ModelRoomLabelController = /*#__PURE__*/function () {
|
|
|
140
147
|
}) : /*#__PURE__*/React.createElement(React.Fragment, null), this.container);
|
|
141
148
|
}
|
|
142
149
|
}]);
|
|
143
|
-
|
|
144
150
|
return ModelRoomLabelController;
|
|
145
151
|
}();
|
|
146
152
|
|
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
require("core-js/modules/es.array.iterator.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/es.object.to-string.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/es.string.iterator.js");
|
|
8
|
+
|
|
9
|
+
require("core-js/modules/es.weak-map.js");
|
|
10
|
+
|
|
11
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
12
|
+
|
|
13
|
+
require("core-js/modules/es.object.define-property.js");
|
|
14
|
+
|
|
15
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
16
|
+
|
|
17
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
18
|
+
|
|
19
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
20
|
|
|
5
21
|
Object.defineProperty(exports, "__esModule", {
|
|
6
22
|
value: true
|
|
@@ -9,6 +25,10 @@ exports["default"] = void 0;
|
|
|
9
25
|
|
|
10
26
|
var _style = _interopRequireDefault(require("styled-jsx/style"));
|
|
11
27
|
|
|
28
|
+
require("core-js/modules/es.function.name.js");
|
|
29
|
+
|
|
30
|
+
require("core-js/modules/es.array.concat.js");
|
|
31
|
+
|
|
12
32
|
var React = _interopRequireWildcard(require("react"));
|
|
13
33
|
|
|
14
34
|
var _px2rem = _interopRequireDefault(require("../../shared-utils/px2rem"));
|
|
@@ -17,8 +37,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
17
37
|
|
|
18
38
|
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; }
|
|
19
39
|
|
|
20
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
21
|
-
|
|
22
40
|
function RoomLabelItem(props, ref) {
|
|
23
41
|
var five = props.five;
|
|
24
42
|
var roomName = props.item.name;
|
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
require("core-js/modules/es.array.iterator.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/es.object.to-string.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/es.string.iterator.js");
|
|
8
|
+
|
|
9
|
+
require("core-js/modules/es.weak-map.js");
|
|
10
|
+
|
|
11
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
12
|
+
|
|
13
|
+
require("core-js/modules/es.object.define-property.js");
|
|
14
|
+
|
|
15
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
16
|
+
|
|
17
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
18
|
+
|
|
19
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
20
|
|
|
5
21
|
Object.defineProperty(exports, "__esModule", {
|
|
6
22
|
value: true
|
|
@@ -9,43 +25,37 @@ exports["default"] = RoomLabelItems;
|
|
|
9
25
|
|
|
10
26
|
var _style = _interopRequireDefault(require("styled-jsx/style"));
|
|
11
27
|
|
|
12
|
-
var
|
|
28
|
+
var _construct2 = _interopRequireDefault(require("@babel/runtime/helpers/construct"));
|
|
13
29
|
|
|
14
|
-
var
|
|
30
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
15
31
|
|
|
16
|
-
var
|
|
32
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
33
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
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; }
|
|
21
|
-
|
|
22
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
23
|
-
|
|
24
|
-
function _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }
|
|
34
|
+
require("core-js/modules/es.string.sub.js");
|
|
25
35
|
|
|
26
|
-
|
|
36
|
+
require("core-js/modules/es.array.concat.js");
|
|
27
37
|
|
|
28
|
-
|
|
38
|
+
require("core-js/modules/es.array.for-each.js");
|
|
29
39
|
|
|
30
|
-
|
|
40
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
31
41
|
|
|
32
|
-
|
|
42
|
+
require("core-js/modules/es.array.sort.js");
|
|
33
43
|
|
|
34
|
-
|
|
44
|
+
require("core-js/modules/es.array.map.js");
|
|
35
45
|
|
|
36
|
-
|
|
46
|
+
require("core-js/modules/es.array.filter.js");
|
|
37
47
|
|
|
38
|
-
|
|
48
|
+
require("core-js/modules/es.object.values.js");
|
|
39
49
|
|
|
40
|
-
|
|
50
|
+
var React = _interopRequireWildcard(require("react"));
|
|
41
51
|
|
|
42
|
-
|
|
52
|
+
var _three = require("three");
|
|
43
53
|
|
|
44
|
-
|
|
54
|
+
var _RoomLabelItem = _interopRequireDefault(require("./RoomLabelItem"));
|
|
45
55
|
|
|
46
|
-
function
|
|
56
|
+
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); }
|
|
47
57
|
|
|
48
|
-
function
|
|
58
|
+
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
59
|
|
|
50
60
|
function getLabelVisible(five, roomLabelItem) {
|
|
51
61
|
// 先看是不是在当前展示的楼层上
|
|
@@ -59,7 +69,7 @@ function getLabelVisible(five, roomLabelItem) {
|
|
|
59
69
|
raycaster.set(cameraPosition.clone(), position.clone().sub(cameraPosition).normalize());
|
|
60
70
|
|
|
61
71
|
var _five$model$intersect = five.model.intersectRaycaster(raycaster),
|
|
62
|
-
_five$model$intersect2 =
|
|
72
|
+
_five$model$intersect2 = (0, _slicedToArray2["default"])(_five$model$intersect, 1),
|
|
63
73
|
intersection = _five$model$intersect2[0];
|
|
64
74
|
|
|
65
75
|
if (intersection && intersection.distance + 1 < vectorDistance) return false;
|
|
@@ -89,7 +99,7 @@ function updateFormatData(five, labels, containerWidth, containerHeight) {
|
|
|
89
99
|
}).map(function (roomLabelItem) {
|
|
90
100
|
return {
|
|
91
101
|
roomLabelItem: roomLabelItem,
|
|
92
|
-
distance:
|
|
102
|
+
distance: (0, _construct2["default"])(_three.Vector3, (0, _toConsumableArray2["default"])(Object.values(roomLabelItem.position))).clone().distanceTo(five.camera.position)
|
|
93
103
|
};
|
|
94
104
|
}).sort(function (a, b) {
|
|
95
105
|
return a.distance - b.distance;
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
8
|
exports.parseModelRoomLabelPluginData = parseModelRoomLabelPluginData;
|
|
7
9
|
|
|
10
|
+
require("core-js/modules/es.array.map.js");
|
|
11
|
+
|
|
12
|
+
require("core-js/modules/es.function.name.js");
|
|
13
|
+
|
|
8
14
|
/** @description 下划线转驼峰 */
|
|
9
15
|
function parseModelRoomLabelPluginData(data) {
|
|
10
16
|
return data.model_room_labels.map(function (_ref) {
|