@anov/3d 0.0.4-alpha36 → 0.0.4-alpha37
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.
|
@@ -49,6 +49,7 @@ var CircleManage = /*#__PURE__*/function () {
|
|
|
49
49
|
mesh.removeFromParent();
|
|
50
50
|
});
|
|
51
51
|
this.circleMesh.clear();
|
|
52
|
+
this.peoplePoi && this.peoplePoi.removeFromParent();
|
|
52
53
|
}
|
|
53
54
|
}, {
|
|
54
55
|
key: "setVisible",
|
|
@@ -66,23 +67,25 @@ var CircleManage = /*#__PURE__*/function () {
|
|
|
66
67
|
this.interactionManager.add(mesh);
|
|
67
68
|
var skewing = new Vector3(0, 3.5, -2.5); // 偏移量
|
|
68
69
|
|
|
70
|
+
var showPeoplePoi = function showPeoplePoi(data) {
|
|
71
|
+
if (_this2.peoplePoi) {
|
|
72
|
+
if (_this2.peoplePoi.name !== data.id) _this2.peoplePoi.removeFromParent();else return;
|
|
73
|
+
}
|
|
74
|
+
var poi = new Poi(EPoiType.Base);
|
|
75
|
+
_this2.peoplePoi = poi.create(data.name);
|
|
76
|
+
_this2.peoplePoi.name = data.id;
|
|
77
|
+
_this2.peoplePoi.position.copy(mesh.position.clone().add(skewing));
|
|
78
|
+
_this2.scene.add(_this2.peoplePoi);
|
|
79
|
+
};
|
|
69
80
|
mesh.addEventListener('click', function () {
|
|
70
81
|
_this2.gobal.cameraUtil.set({
|
|
71
82
|
position: [data.position[0], data.position[1] + 10, data.position[2] + 30],
|
|
72
83
|
target: [data.position[0], data.position[1], data.position[2]]
|
|
73
84
|
}).then(function () {});
|
|
74
|
-
|
|
75
|
-
var poi = new Poi(EPoiType.Base);
|
|
76
|
-
_this2.peoplePoi = poi.create(data.name);
|
|
77
|
-
_this2.peoplePoi.position.copy(mesh.position.clone().add(skewing));
|
|
78
|
-
_this2.scene.add(_this2.peoplePoi);
|
|
85
|
+
showPeoplePoi(data);
|
|
79
86
|
});
|
|
80
87
|
mesh.addEventListener('mouseover', function () {
|
|
81
|
-
|
|
82
|
-
var poi = new Poi(EPoiType.Base);
|
|
83
|
-
_this2.peoplePoi = poi.create(data.name);
|
|
84
|
-
_this2.peoplePoi.position.copy(mesh.position.clone().add(skewing));
|
|
85
|
-
_this2.scene.add(_this2.peoplePoi);
|
|
88
|
+
showPeoplePoi(data);
|
|
86
89
|
emitter.emit('peoplemanagement-person-click', data);
|
|
87
90
|
});
|
|
88
91
|
mesh.addEventListener('mouseout', function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Mesh","MeshPhysicalMaterial","SphereGeometry","Vector3","utils","EPoiType","Poi","regionMap","emitter","CircleManage","gobal","Map","scene","interactionManager","storeManagement","get","belongTo","geometry","material","color","metalness","roughness","circle","data","getData","forEach","people","mesh","clone","name","id","position","fromArray","add","bindEvent","circleMesh","set","removeFromParent","clear","visible","poi","skewing","
|
|
1
|
+
{"version":3,"names":["Mesh","MeshPhysicalMaterial","SphereGeometry","Vector3","utils","EPoiType","Poi","regionMap","emitter","CircleManage","gobal","Map","scene","interactionManager","storeManagement","get","belongTo","geometry","material","color","metalness","roughness","circle","data","getData","forEach","people","mesh","clone","name","id","position","fromArray","add","bindEvent","circleMesh","set","removeFromParent","clear","peoplePoi","visible","poi","skewing","showPeoplePoi","Base","create","copy","addEventListener","cameraUtil","target","then","emit","regionKey","Object","keys","find","key"],"sources":["../../../src/factory/unit/circle.ts"],"sourcesContent":["import { DoubleSide, Mesh, MeshBasicMaterial, MeshPhongMaterial, MeshPhysicalMaterial, SphereGeometry, Vector3, utils } from '@anov/3d-core'\nimport type { InteractionManager, Object3D, Scene } from '@anov/3d-core'\nimport { EPoiType, Poi } from '@anov/3d-ability'\nimport type Factory3D from '../3d'\nimport { regionMap } from '../regionData'\nimport { MessageType, sendToMessage } from '../../utils/messageFn'\nimport { EMessageStatus } from '../../messageStatus'\n\nconst { emitter } = utils\n\nclass CircleManage {\n private gobal: Factory3D\n private scene: Scene\n readonly circleMesh: Map<string, Object3D> = new Map()\n private interactionManager\n private peoplePoi!: Object3D | null\n\n constructor(gobal: Factory3D) {\n this.gobal = gobal\n this.scene = gobal.scene.scene\n this.interactionManager = utils.storeManagement.get<InteractionManager>('interactionManager')\n }\n\n generateCircle(belongTo: string) {\n const geometry = new SphereGeometry(2, 32, 16)\n const material = new MeshPhysicalMaterial({ color: 0xFED602, metalness: 0.1, roughness: 0.5 })\n const circle = new Mesh(geometry, material)\n\n const data = this.getData(belongTo)\n data.forEach((people) => {\n const mesh = circle.clone()\n mesh.name = people.id\n mesh.position.fromArray(people.position)\n this.scene.add(mesh)\n this.bindEvent(mesh, people)\n this.circleMesh.set(people.id, mesh)\n })\n }\n\n remove() {\n this.circleMesh.forEach((mesh) => {\n mesh.removeFromParent()\n })\n this.circleMesh.clear()\n this.peoplePoi && this.peoplePoi.removeFromParent()\n }\n\n setVisible(visible = true) {\n // 控制CYCLE的隐藏、显示\n this.circleMesh.forEach((poi) => {\n poi.visible = visible\n })\n }\n\n private bindEvent(mesh: Mesh, data) {\n this.interactionManager.add(mesh)\n const skewing = new Vector3(0, 3.5, -2.5) // 偏移量\n\n const showPeoplePoi = (data: any) => {\n if (this.peoplePoi) {\n if (this.peoplePoi.name !== data.id)\n this.peoplePoi.removeFromParent()\n else\n return\n }\n const poi = new Poi(EPoiType.Base)\n this.peoplePoi = poi.create(data.name)\n this.peoplePoi.name = data.id\n\n this.peoplePoi.position.copy(mesh.position.clone().add(skewing))\n this.scene.add(this.peoplePoi)\n }\n\n mesh.addEventListener('click', () => {\n this.gobal.cameraUtil.set({\n position: [data.position[0], data.position[1] + 10, data.position[2] + 30],\n target: [data.position[0], data.position[1], data.position[2]],\n }).then(() => {\n })\n showPeoplePoi(data)\n })\n mesh.addEventListener('mouseover', () => {\n showPeoplePoi(data)\n emitter.emit('peoplemanagement-person-click', data)\n })\n mesh.addEventListener('mouseout', () => {\n if (this.peoplePoi) {\n this.peoplePoi.removeFromParent()\n this.peoplePoi = null\n }\n })\n }\n\n private getData(belongTo) {\n const regionKey = Object.keys(regionMap).find((key: any) => {\n return regionMap[key].id === belongTo\n })\n\n return regionMap[regionKey] && regionMap[regionKey].people\n }\n}\n\nexport default CircleManage"],"mappings":"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"}
|
|
@@ -5,7 +5,6 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
5
5
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
7
7
|
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
8
|
-
import { regionMap } from "../regionData";
|
|
9
8
|
var HandlerManage = /*#__PURE__*/function () {
|
|
10
9
|
function HandlerManage(app) {
|
|
11
10
|
_classCallCheck(this, HandlerManage);
|
|
@@ -13,28 +12,6 @@ var HandlerManage = /*#__PURE__*/function () {
|
|
|
13
12
|
this.app = app;
|
|
14
13
|
}
|
|
15
14
|
_createClass(HandlerManage, [{
|
|
16
|
-
key: "clickPerson1",
|
|
17
|
-
value: function clickPerson1(params) {
|
|
18
|
-
var person = null;
|
|
19
|
-
var key;
|
|
20
|
-
Object.keys(regionMap).find(function (k) {
|
|
21
|
-
var _regionMap$key$people;
|
|
22
|
-
key = k;
|
|
23
|
-
person = (_regionMap$key$people = regionMap[key].people) === null || _regionMap$key$people === void 0 ? void 0 : _regionMap$key$people.find(function (p) {
|
|
24
|
-
return p.id === "".concat(params.id);
|
|
25
|
-
});
|
|
26
|
-
return person;
|
|
27
|
-
});
|
|
28
|
-
if (person) {
|
|
29
|
-
var _regionMap$key$poi, _regionMap$key$people2;
|
|
30
|
-
var position = (_regionMap$key$poi = regionMap[key].poi) === null || _regionMap$key$poi === void 0 ? void 0 : _regionMap$key$poi.position;
|
|
31
|
-
this.app.sceneControl.camera.set({
|
|
32
|
-
position: [position[0], position[1] + ((_regionMap$key$people2 = regionMap[key].people) === null || _regionMap$key$people2 === void 0 ? void 0 : _regionMap$key$people2.length) * 10, position[2] + 100],
|
|
33
|
-
target: position
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}, {
|
|
38
15
|
key: "clickPerson",
|
|
39
16
|
value: function clickPerson(params) {
|
|
40
17
|
// 根据名称动态获取Mesh对象
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["HandlerManage","app","params","object","sceneControl","scene","getObjectByName","id","console","log","dispatchEvent","type","title"],"sources":["../../../src/factory/unit/handle.ts"],"sourcesContent":["import { regionMap } from '../regionData'\nimport type Anov3D from '../../sdkEntry'\n\nclass HandlerManage {\n app: Anov3D\n constructor(app: Anov3D) {\n this.app = app\n }\n\n clickPerson(params: any) {\n // 根据名称动态获取Mesh对象\n const object = this.app.sceneControl.scene!.getObjectByName(params.id)\n\n // 触发事件\n if (object) {\n console.log('Mesh对象已找到!')\n // 手动调用Mesh对象上的点击事件处理函数\n object.dispatchEvent({ type: 'click' })\n }\n else {\n console.log('未找到Mesh对象!')\n }\n }\n\n clickBar(params: any) {\n // 根据名称动态获取Mesh对象\n const object = this.app.sceneControl.scene!.getObjectByName(params.title)\n\n // 触发事件\n if (object) {\n console.log('Mesh对象已找到!')\n // 手动调用Mesh对象上的点击事件处理函数\n object.dispatchEvent({ type: 'click' })\n }\n else {\n console.log('未找到Mesh对象!')\n }\n }\n}\n\nexport default HandlerManage\n"],"mappings":";;;;;;;IAGMA,aAAa;EAEjB,uBAAYC,GAAW,EAAE;IAAA;IAAA;IACvB,IAAI,CAACA,GAAG,GAAGA,GAAG;EAChB;EAAC;IAAA;IAAA,OAED,qBAAYC,MAAW,EAAE;MACvB;MACA,IAAMC,MAAM,GAAG,IAAI,CAACF,GAAG,CAACG,YAAY,CAACC,KAAK,CAAEC,eAAe,CAACJ,MAAM,CAACK,EAAE,CAAC;;MAEtE;MACA,IAAIJ,MAAM,EAAE;QACVK,OAAO,CAACC,GAAG,CAAC,YAAY,CAAC;QACzB;QACAN,MAAM,CAACO,aAAa,CAAC;UAAEC,IAAI,EAAE;QAAQ,CAAC,CAAC;MACzC,CAAC,MACI;QACHH,OAAO,CAACC,GAAG,CAAC,YAAY,CAAC;MAC3B;IACF;EAAC;IAAA;IAAA,OAED,kBAASP,MAAW,EAAE;MACpB;MACA,IAAMC,MAAM,GAAG,IAAI,CAACF,GAAG,CAACG,YAAY,CAACC,KAAK,CAAEC,eAAe,CAACJ,MAAM,CAACU,KAAK,CAAC;;MAEzE;MACA,IAAIT,MAAM,EAAE;QACVK,OAAO,CAACC,GAAG,CAAC,YAAY,CAAC;QACzB;QACAN,MAAM,CAACO,aAAa,CAAC;UAAEC,IAAI,EAAE;QAAQ,CAAC,CAAC;MACzC,CAAC,MACI;QACHH,OAAO,CAACC,GAAG,CAAC,YAAY,CAAC;MAC3B;IACF;EAAC;EAAA;AAAA;AAGH,eAAeT,aAAa"}
|