@anov/3d 0.0.93 → 0.0.95

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.
@@ -6,6 +6,7 @@ import type LineManage from './unit/line';
6
6
  import type CylinderManage from './unit/cylinder';
7
7
  import type PoiManage from './unit/poi';
8
8
  import type CircleManage from './unit/circle';
9
+ import type DistrictLineManage from './unit/districtLine';
9
10
  import type AreaBoundingBoxManage from './unit/areaBoundingBox';
10
11
  import type Inspection from './unit/inspection';
11
12
  import { SceneStyle, SceneTag } from './utils/constant';
@@ -33,10 +34,12 @@ declare class Factory3D {
33
34
  circle: CircleManage;
34
35
  areaBoundingBox: AreaBoundingBoxManage;
35
36
  inspection: Inspection;
37
+ districtLine: DistrictLineManage;
36
38
  usePath: string;
37
39
  private pipeline;
38
40
  private realModl;
39
41
  private techModel;
42
+ private whiteModel;
40
43
  private realGroundModel;
41
44
  private realTreeModel;
42
45
  private thermaLimaging;
@@ -5,7 +5,7 @@ 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 { AdditiveBlending, Color, InteractionManager, LoadingManager, Mesh, ModelLoader, PlaneGeometry, RepeatWrapping, ShaderChunk, ShaderMaterial, TextureLoader, Vector2, Vector3, Vector4, lib, use, utils } from '@anov/3d-core';
8
+ import { AdditiveBlending, Color, InteractionManager, LoadingManager, Mesh, MeshBasicMaterial, MeshLambertMaterial, ModelLoader, PlaneGeometry, RepeatWrapping, ShaderMaterial, TextureLoader, Vector2, Vector3, lib, use, utils } from '@anov/3d-core';
9
9
  import { Camera } from '@anov/3d-ability';
10
10
  import { finirMaterialV1 } from "./utils/finirMaterial";
11
11
  import handleUnit, { toggleTag as _toggleTag } from "./unit";
@@ -14,12 +14,9 @@ import { SceneStyle, SceneTag } from "./utils/constant";
14
14
  import factoryGlobalObject from "./globalControl";
15
15
  import createRiseLayer from "./unit/layer/rise";
16
16
  import { targetProgresspoints } from "./unit/inspection/lineData";
17
+ import { material, uniforms } from "./utils/ground";
17
18
  import frag from "./unit/glsl/heat/frag";
18
19
  import vert from "./unit/glsl/heat/ver";
19
- var vertexShader = /* glsl */"\n".concat(ShaderChunk.logdepthbuf_pars_vertex, "\nbool isPerspectiveMatrix(mat4) {\n return true;\n }\n varying vec2 vUv;\n varying vec3 vPosition;\n\n void main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n vec4 worldPosition1 = modelMatrix * vec4(position, 1.0);\n vPosition = worldPosition1.xyz;\n ").concat(ShaderChunk.logdepthbuf_vertex, "\n }\n");
20
-
21
- // Fragment shader
22
- var fragmentShader = /* glsl */"\n ".concat(ShaderChunk.logdepthbuf_pars_fragment, " \n\n uniform sampler2D _Texture;\n uniform sampler2D _TexturePlane;\n //uniform vec4 _Texture_ST;\n uniform vec4 _Color;\n uniform float _ColorS;\n uniform sampler2D _TextureMask;\n uniform float _MaskUV;\n uniform vec4 _ColorMask;\n uniform float _ColorMaskS;\n //uniform vec4 _Speed;\n //uniform float _OP;\n uniform float _Time; \n varying vec2 vUv;\n varying vec3 vPosition;\n\n\n\n void main() {\n vec4 _ColorMask_ =vec4(0.,0.6,1.,1.);\n\n vec3 temp_cast_0 = vec3(0.2);\n vec4 o = vec4(temp_cast_0, 1.0);\n vec2 uv_Texture = vUv * 10.0;\n vec4 tex2DNode1 = texture2D(_Texture, uv_Texture);\n vec4 tex2DNode2 = texture2D(_TexturePlane, uv_Texture);\n vec2 temp_cast_1 = vec2(_MaskUV)* 3.0;\n vec2 uv_TexCoord7 = vUv * temp_cast_1;\n vec2 panner6 = (vec2(_Time,_Time)+ uv_TexCoord7);\n o.rgb = ((tex2DNode2*0.1)+(_Color * tex2DNode1.r * _ColorS) + (_ColorMask_ * (tex2DNode1.r * texture2D(_TextureMask, panner6).r) * _ColorMaskS*10.)).rgb;\n //o.a = _OP;\n gl_FragColor = o;\n gl_FragColor.a = 1.0;\n \n if(vPosition.x>-550.0 && vPosition.x<550.0 && vPosition.z>-300.0 && vPosition.z<270.0){\n gl_FragColor.a = 0.0;\n }else{\n gl_FragColor.a = .85;\n }\n\n ").concat(ShaderChunk.logdepthbuf_fragment, "\n }\n");
23
20
  export var loadingManager = new LoadingManager();
24
21
  var load = new ModelLoader(loadingManager);
25
22
  var rgbeLoader = new lib.RGBELoader(loadingManager);
@@ -27,63 +24,6 @@ var emitter = utils.emitter;
27
24
  var resourcePath = './';
28
25
  var resourcePath2 = 'http://172.16.223.163:9000/anov-prod/anov-3d/factory/example/';
29
26
  export var usePath = false ? resourcePath : resourcePath2;
30
- var _Texture = new TextureLoader().load("".concat(usePath, "demo03.jpg"));
31
- var _Texture2 = new TextureLoader().load("".concat(usePath, "demo04.jpg"));
32
- var _Texture3 = new TextureLoader().load("".concat(usePath, "test04.jpg"));
33
- _Texture.wrapS = RepeatWrapping;
34
- _Texture.wrapT = RepeatWrapping;
35
- _Texture2.wrapS = RepeatWrapping;
36
- _Texture2.wrapT = RepeatWrapping;
37
- _Texture3.wrapS = RepeatWrapping;
38
- _Texture3.wrapT = RepeatWrapping;
39
- _Texture.repeat.set(5000, 5000);
40
- _Texture2.repeat.set(10, 10);
41
- _Texture3.repeat.set(5000, 5000);
42
- var uniforms = {
43
- _Texture: {
44
- value: _Texture
45
- },
46
- _Texture_ST: {
47
- value: new Vector4()
48
- },
49
- _Color: {
50
- value: new Vector4(new Color('#096ddb').r, new Color('#096ddb').g, new Color('#096ddb').b, 0.5)
51
- },
52
- _ColorS: {
53
- value: 1
54
- },
55
- _TextureMask: {
56
- value: _Texture2
57
- },
58
- _TexturePlane: {
59
- value: _Texture3
60
- },
61
- _MaskUV: {
62
- value: 1
63
- },
64
- _ColorMask: {
65
- value: new Vector4(new Color('#fff').r, new Color('#fff').g, new Color('#fff').b, 1)
66
- },
67
- _ColorMaskS: {
68
- value: 1
69
- },
70
- _Speed: {
71
- value: new Vector4(0.0, 0.2, 0, 0)
72
- },
73
- _OP: {
74
- value: 1.0
75
- },
76
- _Time: {
77
- value: 1.0
78
- }
79
- };
80
- var material = new ShaderMaterial({
81
- uniforms: uniforms,
82
- vertexShader: vertexShader,
83
- fragmentShader: fragmentShader,
84
- transparent: true
85
- // depthTest: false,
86
- });
87
27
  var Factory3D = /*#__PURE__*/function () {
88
28
  function Factory3D(option) {
89
29
  _classCallCheck(this, Factory3D);
@@ -102,10 +42,12 @@ var Factory3D = /*#__PURE__*/function () {
102
42
  _defineProperty(this, "circle", void 0);
103
43
  _defineProperty(this, "areaBoundingBox", void 0);
104
44
  _defineProperty(this, "inspection", void 0);
45
+ _defineProperty(this, "districtLine", void 0);
105
46
  _defineProperty(this, "usePath", usePath);
106
47
  _defineProperty(this, "pipeline", void 0);
107
48
  _defineProperty(this, "realModl", void 0);
108
49
  _defineProperty(this, "techModel", void 0);
50
+ _defineProperty(this, "whiteModel", void 0);
109
51
  _defineProperty(this, "realGroundModel", void 0);
110
52
  _defineProperty(this, "realTreeModel", void 0);
111
53
  _defineProperty(this, "thermaLimaging", void 0);
@@ -254,6 +196,25 @@ var Factory3D = /*#__PURE__*/function () {
254
196
  _this2.techModel = group;
255
197
  return gltf;
256
198
  });
199
+
200
+ // white model
201
+ load.loadGLTF("".concat(this.usePath, "2222.glb"), false, true, './draco/', function (gltf) {
202
+ gltf.scene.traverse(function (child) {
203
+ if (child.name === '柱体') {
204
+ child.material = new MeshBasicMaterial({
205
+ color: new Color('#fff')
206
+ });
207
+ } else if (child.type === 'Mesh') {
208
+ child.material = new MeshLambertMaterial({
209
+ color: new Color('#aaa')
210
+ });
211
+ }
212
+ });
213
+ _this2.scene.add(gltf.scene);
214
+ gltf.scene.visible = SceneStyle.white === _this2.style;
215
+ _this2.whiteModel = gltf.scene;
216
+ return gltf;
217
+ });
257
218
  var targerMeshName = Object.values(targetProgresspoints).map(function (v) {
258
219
  return v.lookAt;
259
220
  });
@@ -324,6 +285,7 @@ var Factory3D = /*#__PURE__*/function () {
324
285
  this.pipeline.visible = false;
325
286
  this.techModel.visible = true;
326
287
  this.realModl.visible = false;
288
+ this.whiteModel.visible = false;
327
289
  this.realTreeModel.visible = false;
328
290
  this.scene.scene.background = null;
329
291
  this.realGroundModel && (this.realGroundModel.visible = false);
@@ -332,12 +294,23 @@ var Factory3D = /*#__PURE__*/function () {
332
294
  if (params === SceneStyle.real) {
333
295
  this.pipeline.visible = true;
334
296
  this.techModel.visible = false;
297
+ this.whiteModel.visible = false;
335
298
  this.realModl.visible = true;
336
299
  this.realGroundModel && (this.realGroundModel.visible = true);
337
300
  this.realTreeModel && (this.realTreeModel.visible = true);
338
301
  this.scene.scene.background = new Color('#ccc');
339
302
  this.scene.renderer.toneMappingExposure = 0.4;
340
303
  }
304
+ if (params === SceneStyle.white) {
305
+ this.pipeline.visible = false;
306
+ this.techModel.visible = false;
307
+ this.realModl.visible = false;
308
+ this.whiteModel.visible = true;
309
+ this.realTreeModel.visible = false;
310
+ this.scene.scene.background = null;
311
+ this.realGroundModel && (this.realGroundModel.visible = false);
312
+ this.scene.renderer.toneMappingExposure = 0.4;
313
+ }
341
314
  }
342
315
  }, {
343
316
  key: "toggleTag",
@@ -1 +1 @@
1
- {"version":3,"names":["AdditiveBlending","Color","InteractionManager","LoadingManager","Mesh","ModelLoader","PlaneGeometry","RepeatWrapping","ShaderChunk","ShaderMaterial","TextureLoader","Vector2","Vector3","Vector4","lib","use","utils","Camera","finirMaterialV1","handleUnit","toggleTag","globalEvents","SceneStyle","SceneTag","factoryGlobalObject","createRiseLayer","targetProgresspoints","frag","vert","vertexShader","logdepthbuf_pars_vertex","logdepthbuf_vertex","fragmentShader","logdepthbuf_pars_fragment","logdepthbuf_fragment","loadingManager","load","rgbeLoader","RGBELoader","emitter","resourcePath","resourcePath2","usePath","_Texture","_Texture2","_Texture3","wrapS","wrapT","repeat","set","uniforms","value","_Texture_ST","_Color","r","g","b","_ColorS","_TextureMask","_TexturePlane","_MaskUV","_ColorMask","_ColorMaskS","_Speed","_OP","_Time","material","transparent","Factory3D","option","overview","real","Map","globalEventsAgent","setFactory","scene","Promise","resolve","cameraUtil","camera","controls","control","layers","loadGLTF","gltf","realTreeModel","traverse","child","enable","type","castShadow","receiveShadow","add","interactionManager","renderer","domElement","storeManagement","useframe","update","loadModel","onLoad","toneMappingExposure","visible","style","realModl","call","group","name","geometry","plane","rotation","x","Math","PI","position","renderOrder","scale","text","blending","opacity","depthTest","map","offset","tech","techModel","targerMeshName","Object","values","v","lookAt","texture1","texture2","uvScale","includes","thermaLimaging","pipeline","realGroundModel","params","background","tag","apply","forEach","eventKey","on","args","eventHandleFn","get","fn","viewType","cutoutCamera","inspection","minCamera","mapCamera","mainCamera","emit","eventName","handleFn","push"],"sources":["../../src/factory/3d.ts"],"sourcesContent":["import type { DataTexture, Group, OrbitControls, SceneControl } from '@anov/3d-core'\nimport { AdditiveBlending, BoxGeometry, Color, EquirectangularReflectionMapping, InteractionManager, LoadingManager, Mesh, MeshBasicMaterial, ModelLoader, PlaneGeometry, RepeatWrapping, SRGBColorSpace, ShaderChunk, ShaderMaterial, TextureLoader, Vector2, Vector3, Vector4, lib, sRGBEncoding, use, utils } from '@anov/3d-core'\nimport { Camera, createBloomSelectedTool, initPostEffects } from '@anov/3d-ability'\nimport { finirMaterialV1 } from './utils/finirMaterial'\nimport handleUnit, { toggleTag } from './unit'\nimport type WallManage from './unit/wall'\nimport type LineManage from './unit/line'\nimport type CylinderManage from './unit/cylinder'\nimport type PoiManage from './unit/poi'\nimport type CircleManage from './unit/circle'\nimport type AreaBoundingBoxManage from './unit/areaBoundingBox'\nimport type Inspection from './unit/inspection'\nimport { globalEvents } from './globalData'\nimport { SceneStyle, SceneTag } from './utils/constant'\nimport switchMaterial from './utils/switchMaterial'\nimport factoryGlobalObject from './globalControl'\nimport { debounce } from './utils'\nimport createRiseLayer from './unit/layer/rise'\nimport { targetProgresspoints } from './unit/inspection/lineData'\n\nimport frag from './unit/glsl/heat/frag'\nimport vert from './unit/glsl/heat/ver'\n\ntype factory3dOption = {\n model: string\n environment: string\n decoderPath?: string\n controls?: any\n}\n\nconst vertexShader = /* glsl */`\n${ShaderChunk.logdepthbuf_pars_vertex}\nbool isPerspectiveMatrix(mat4) {\n return true;\n }\n varying vec2 vUv;\n varying vec3 vPosition;\n\n void main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n vec4 worldPosition1 = modelMatrix * vec4(position, 1.0);\n vPosition = worldPosition1.xyz;\n ${ShaderChunk.logdepthbuf_vertex}\n }\n`\n\n// Fragment shader\nconst fragmentShader = /* glsl */`\n ${ShaderChunk.logdepthbuf_pars_fragment} \n\n uniform sampler2D _Texture;\n uniform sampler2D _TexturePlane;\n //uniform vec4 _Texture_ST;\n uniform vec4 _Color;\n uniform float _ColorS;\n uniform sampler2D _TextureMask;\n uniform float _MaskUV;\n uniform vec4 _ColorMask;\n uniform float _ColorMaskS;\n //uniform vec4 _Speed;\n //uniform float _OP;\n uniform float _Time; \n varying vec2 vUv;\n varying vec3 vPosition;\n\n\n\n void main() {\n vec4 _ColorMask_ =vec4(0.,0.6,1.,1.);\n\n vec3 temp_cast_0 = vec3(0.2);\n vec4 o = vec4(temp_cast_0, 1.0);\n vec2 uv_Texture = vUv * 10.0;\n vec4 tex2DNode1 = texture2D(_Texture, uv_Texture);\n vec4 tex2DNode2 = texture2D(_TexturePlane, uv_Texture);\n vec2 temp_cast_1 = vec2(_MaskUV)* 3.0;\n vec2 uv_TexCoord7 = vUv * temp_cast_1;\n vec2 panner6 = (vec2(_Time,_Time)+ uv_TexCoord7);\n o.rgb = ((tex2DNode2*0.1)+(_Color * tex2DNode1.r * _ColorS) + (_ColorMask_ * (tex2DNode1.r * texture2D(_TextureMask, panner6).r) * _ColorMaskS*10.)).rgb;\n //o.a = _OP;\n gl_FragColor = o;\n gl_FragColor.a = 1.0;\n \n if(vPosition.x>-550.0 && vPosition.x<550.0 && vPosition.z>-300.0 && vPosition.z<270.0){\n gl_FragColor.a = 0.0;\n }else{\n gl_FragColor.a = .85;\n }\n\n ${ShaderChunk.logdepthbuf_fragment}\n }\n`\n\nexport const loadingManager = new LoadingManager()\nconst load = new ModelLoader(loadingManager)\nconst rgbeLoader = new lib.RGBELoader(loadingManager)\nconst { emitter } = utils\n\nconst resourcePath = './'\nconst resourcePath2 = 'http://172.16.223.163:9000/anov-prod/anov-3d/factory/example/'\n\nexport const usePath = process.env.ENV === 'dev' ? resourcePath : resourcePath2\n\nconst _Texture = new TextureLoader().load(`${usePath}demo03.jpg`)\nconst _Texture2 = new TextureLoader().load(`${usePath}demo04.jpg`)\nconst _Texture3 = new TextureLoader().load(`${usePath}test04.jpg`)\n\n_Texture.wrapS = RepeatWrapping\n_Texture.wrapT = RepeatWrapping\n\n_Texture2.wrapS = RepeatWrapping\n_Texture2.wrapT = RepeatWrapping\n\n_Texture3.wrapS = RepeatWrapping\n_Texture3.wrapT = RepeatWrapping\n\n_Texture.repeat.set(5000, 5000)\n_Texture2.repeat.set(10, 10)\n_Texture3.repeat.set(5000, 5000)\n\nconst uniforms = {\n _Texture: { value: _Texture },\n _Texture_ST: { value: new Vector4() },\n _Color: { value: new Vector4(new Color('#096ddb').r, new Color('#096ddb').g, new Color('#096ddb').b, 0.5) },\n _ColorS: { value: 1 },\n _TextureMask: { value: _Texture2 },\n _TexturePlane: { value: _Texture3 },\n _MaskUV: { value: 1 },\n _ColorMask: { value: new Vector4(new Color('#fff').r, new Color('#fff').g, new Color('#fff').b, 1) },\n _ColorMaskS: { value: 1 },\n _Speed: { value: new Vector4(0.0, 0.2, 0, 0) },\n _OP: { value: 1.0 },\n _Time: { value: 1.0 },\n}\n\nconst material = new ShaderMaterial({\n uniforms,\n vertexShader,\n fragmentShader,\n transparent: true,\n // depthTest: false,\n})\n\nclass Factory3D {\n position: Vector3 = new Vector3(0, 0, 0)\n scene: SceneControl\n control: OrbitControls\n cameraUtil: Camera\n\n public loadingManager = loadingManager\n public tag = SceneTag.overview\n public style: SceneStyle = SceneStyle.real\n private option: factory3dOption\n wall: WallManage\n line: LineManage\n cylinder: CylinderManage\n poi: PoiManage\n circle: CircleManage\n areaBoundingBox: AreaBoundingBoxManage\n inspection: Inspection\n\n usePath = usePath\n\n private pipeline: Group\n private realModl: Group\n private techModel: Group\n private realGroundModel: Group\n private realTreeModel: Group\n private thermaLimaging: Group\n private eventHandleFn: Map<string, ((args?: any) => void)[]> = new Map()\n private boxSkeyTexture: DataTexture\n\n mainCamera: any\n\n interactionManager: InteractionManager\n\n constructor(option: factory3dOption) {\n this.option = option\n this.globalEventsAgent()\n factoryGlobalObject.setFactory(this)\n }\n\n /**\n * render factory 3d scene\n */\n renderScene(scene: SceneControl) {\n return new Promise((resolve) => {\n this.scene = scene\n\n this.cameraUtil = new Camera(scene.camera!, scene.controls!, scene)\n this.control = scene.controls!\n scene.camera.layers.set(0)\n\n load.loadGLTF(`${this.usePath}landScap3.glb`, false, true, './draco/', (gltf) => {\n this.realTreeModel = (gltf.scene) as Group\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n\n gltf.scene.traverse((child) => {\n child.layers.enable(5)\n\n if (child.type === 'Mesh') {\n child.castShadow = true\n child.receiveShadow = true\n }\n })\n\n scene.add(this.realTreeModel)\n\n return gltf\n })\n\n const interactionManager = new InteractionManager(\n this.scene.renderer,\n this.scene.camera,\n this.scene.renderer.domElement, // Modified By LM this.scene.cssRenderer.cssRenderer.domElement,\n )\n\n this.interactionManager = interactionManager\n\n utils.storeManagement.set('interactionManager', interactionManager)\n\n use.useframe(() => {\n interactionManager.update()\n })\n\n this.loadModel()\n\n loadingManager.onLoad = () => {\n resolve('success')\n }\n\n // initPostEffects(scene.scene, scene.renderer, scene.camera, { type: 'main' })\n\n scene.renderer.toneMappingExposure = 0.4\n })\n }\n\n private loadModel() {\n // real model\n load.loadGLTF(`${this.usePath}222.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n gltf.scene.visible = SceneStyle.real === this.style\n\n this.realModl = gltf.scene as Group\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n\n gltf.scene.traverse((child) => {\n child.layers.enable(5)\n\n if (child.type === 'Mesh') {\n child.castShadow = true\n child.receiveShadow = true\n }\n })\n\n handleUnit.call(this)\n\n return gltf\n })\n\n // tech model\n load.loadGLTF(`${this.usePath}2222.glb`, false, true, './draco/', (gltf) => {\n const group = gltf.scene\n\n use.useframe(() => {\n if (uniforms._Time.value > 0.5)\n uniforms._Time.value = 0\n\n uniforms._Time.value += 0.0008\n })\n\n group.traverse((child) => {\n // @ts-ignore\n if (child.type === 'Mesh') {\n if (child.name === '柱体') {\n // @ts-ignore\n child.visible = false\n const geometry = new PlaneGeometry(3000, 2000)\n const plane = new Mesh(geometry, material)\n plane.rotation.x = -Math.PI / 2\n\n plane.position.set(0, -1.5, 0)\n plane.renderOrder = -1\n\n group.add(plane)\n }\n\n else {\n // @ts-ignore\n child.material = finirMaterialV1\n }\n }\n })\n\n load.loadGLTF(`${this.usePath}plane.glb`, false, true, './draco/', (gltf) => {\n gltf.scene.scale.set(0.5, 0.5, 0.5)\n\n const text = new TextureLoader().load(`${this.usePath}roll.png`)\n\n text.wrapS = RepeatWrapping\n text.wrapT = RepeatWrapping\n\n text.repeat.set(1, 1)\n\n gltf.scene.traverse((child) => {\n if (child.type === 'Mesh') {\n // @ts-ignore\n child.material.blending = AdditiveBlending\n // @ts-ignore\n child.material.transparent = true\n // @ts-ignore\n child.material.opacity = 1\n // @ts-ignore\n child.material.depthTest = true\n\n // @ts-ignore\n child.material.map = text\n }\n })\n\n use.useframe(() => {\n text.offset.x += 0.01\n })\n\n group.add(gltf.scene)\n\n return gltf\n })\n\n createRiseLayer()\n\n this.scene.add(group)\n\n group.visible = SceneStyle.tech === this.style\n this.techModel = group as Group\n\n return gltf\n })\n\n const targerMeshName = Object.values(targetProgresspoints).map(v => v.lookAt)\n\n // thermaLimaging model\n load.loadGLTF(`${this.usePath}2222.glb`, false, true, './draco/', (gltf) => {\n const group = gltf.scene\n group.traverse((child) => {\n if (child.type === 'Mesh') {\n // @ts-ignore\n child.material = new ShaderMaterial({\n vertexShader: vert,\n fragmentShader: frag,\n uniforms: {\n texture1: { value: new TextureLoader(this.loadingManager).load(`${this.usePath}test01.jpg`) },\n texture2: { value: new TextureLoader(this.loadingManager).load(`${this.usePath}test02.jpg`) },\n uvScale: { value: new Vector2(1, 1) },\n },\n })\n\n child.layers.set(2)\n\n if (targerMeshName.includes(child.name))\n // @ts-ignore\n child.material.depthTest = false\n }\n })\n\n this.scene.add(group)\n\n this.thermaLimaging = group as Group\n\n return gltf\n })\n\n load.loadGLTF(`${this.usePath}guandao.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n this.pipeline = gltf.scene as Group\n return gltf\n })\n\n // ground\n load.loadGLTF(`${this.usePath}landScap.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n\n this.realGroundModel = gltf.scene as Group\n return gltf\n })\n }\n\n /**\n * toggle SceneStyle\n * @param params\n */\n toggleSceneStyle(params: SceneStyle) {\n if (this.style === params)\n return\n\n this.style = params\n\n if (this.style === SceneStyle.tech) {\n this.pipeline.visible = false\n this.techModel.visible = true\n this.realModl.visible = false\n this.realTreeModel.visible = false\n this.scene.scene.background = null\n this.realGroundModel && (this.realGroundModel.visible = false)\n\n this.scene.renderer.toneMappingExposure = 0.6\n }\n\n if (params === SceneStyle.real) {\n this.pipeline.visible = true\n this.techModel.visible = false\n this.realModl.visible = true\n this.realGroundModel && (this.realGroundModel.visible = true)\n this.realTreeModel && (this.realTreeModel.visible = true)\n this.scene.scene.background = new Color('#ccc')\n this.scene.renderer.toneMappingExposure = 0.4\n }\n }\n\n public toggleTag(tag: SceneTag) {\n if (this.tag === tag)\n return\n toggleTag[tag].apply(this, [this])\n }\n\n private globalEventsAgent() {\n globalEvents.forEach((eventKey) => {\n emitter.on(eventKey, (args) => {\n this.eventHandleFn.get(eventKey)?.forEach((fn) => {\n fn(args)\n })\n })\n })\n }\n\n /**\n * toggle view\n */\n toggleView(viewType?: string) {\n if (this.tag !== SceneTag['smart-inspection'])\n return\n\n if (viewType) {\n if (viewType === 'Drone') {\n if (this.scene.cutoutCamera === this.inspection.minCamera) {\n const cutoutCamera = this.inspection.minCamera\n\n this.scene.cutoutCamera = this.inspection.mapCamera\n this.mainCamera = this.scene.camera\n this.scene.camera = cutoutCamera\n\n utils.emitter.emit('play')\n utils.emitter.emit('toggleView', 'Drone')\n }\n }\n\n if (viewType === 'Global') {\n if (this.scene.cutoutCamera !== this.inspection.minCamera) {\n const mainCamera = this.mainCamera\n const cutoutCamera = this.inspection.minCamera\n\n this.scene.camera = mainCamera\n this.scene.cutoutCamera = cutoutCamera\n\n utils.emitter.emit('stop')\n utils.emitter.emit('toggleView', 'Global')\n }\n }\n }\n else {\n // toggle to min camera\n if (this.scene.cutoutCamera === this.inspection.minCamera) {\n const cutoutCamera = this.inspection.minCamera\n\n this.scene.cutoutCamera = this.inspection.mapCamera\n\n this.mainCamera = this.scene.camera\n this.scene.camera = cutoutCamera\n\n utils.emitter.emit('play')\n utils.emitter.emit('toggleView', 'Drone')\n }\n else {\n // toggle to main camera\n const mainCamera = this.mainCamera\n const cutoutCamera = this.inspection.minCamera\n\n this.scene.camera = mainCamera\n this.scene.cutoutCamera = cutoutCamera\n\n utils.emitter.emit('stop')\n utils.emitter.emit('toggleView', 'Global')\n }\n }\n }\n\n addEventListener(eventName: string, handleFn: (args?: any) => void) {\n if (this.eventHandleFn.get(eventName))\n this.eventHandleFn.get(eventName).push(handleFn)\n\n else\n this.eventHandleFn.set(eventName, [handleFn])\n }\n}\n\nexport default Factory3D"],"mappings":"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"}
1
+ {"version":3,"names":["AdditiveBlending","Color","InteractionManager","LoadingManager","Mesh","MeshBasicMaterial","MeshLambertMaterial","ModelLoader","PlaneGeometry","RepeatWrapping","ShaderMaterial","TextureLoader","Vector2","Vector3","lib","use","utils","Camera","finirMaterialV1","handleUnit","toggleTag","globalEvents","SceneStyle","SceneTag","factoryGlobalObject","createRiseLayer","targetProgresspoints","material","uniforms","frag","vert","loadingManager","load","rgbeLoader","RGBELoader","emitter","resourcePath","resourcePath2","usePath","Factory3D","option","overview","real","Map","globalEventsAgent","setFactory","scene","Promise","resolve","cameraUtil","camera","controls","control","layers","set","loadGLTF","gltf","realTreeModel","traverse","child","enable","type","castShadow","receiveShadow","add","interactionManager","renderer","domElement","storeManagement","useframe","update","loadModel","onLoad","toneMappingExposure","visible","style","realModl","call","group","_Time","value","name","geometry","plane","rotation","x","Math","PI","position","renderOrder","scale","text","wrapS","wrapT","repeat","blending","transparent","opacity","depthTest","map","offset","tech","techModel","color","white","whiteModel","targerMeshName","Object","values","v","lookAt","vertexShader","fragmentShader","texture1","texture2","uvScale","includes","thermaLimaging","pipeline","realGroundModel","params","background","tag","apply","forEach","eventKey","on","args","eventHandleFn","get","fn","viewType","cutoutCamera","inspection","minCamera","mapCamera","mainCamera","emit","eventName","handleFn","push"],"sources":["../../src/factory/3d.ts"],"sourcesContent":["import type { DataTexture, Group, OrbitControls, SceneControl } from '@anov/3d-core'\nimport { AdditiveBlending, BoxGeometry, Color, EquirectangularReflectionMapping, InteractionManager, LoadingManager, Mesh, MeshBasicMaterial, MeshLambertMaterial, ModelLoader, PlaneGeometry, RepeatWrapping, SRGBColorSpace, ShaderChunk, ShaderMaterial, TextureLoader, Vector2, Vector3, Vector4, lib, sRGBEncoding, use, utils } from '@anov/3d-core'\nimport { Camera, createBloomSelectedTool, initPostEffects } from '@anov/3d-ability'\nimport { finirMaterialV1 } from './utils/finirMaterial'\nimport handleUnit, { toggleTag } from './unit'\nimport type WallManage from './unit/wall'\nimport type LineManage from './unit/line'\nimport type CylinderManage from './unit/cylinder'\nimport type PoiManage from './unit/poi'\nimport type CircleManage from './unit/circle'\nimport type DistrictLineManage from './unit/districtLine'\nimport type AreaBoundingBoxManage from './unit/areaBoundingBox'\nimport type Inspection from './unit/inspection'\nimport { globalEvents } from './globalData'\nimport { SceneStyle, SceneTag } from './utils/constant'\nimport switchMaterial from './utils/switchMaterial'\nimport factoryGlobalObject from './globalControl'\nimport { debounce } from './utils'\nimport createRiseLayer from './unit/layer/rise'\nimport { targetProgresspoints } from './unit/inspection/lineData'\nimport { material, uniforms } from './utils/ground'\n\nimport frag from './unit/glsl/heat/frag'\nimport vert from './unit/glsl/heat/ver'\n\ntype factory3dOption = {\n model: string\n environment: string\n decoderPath?: string\n controls?: any\n}\n\nexport const loadingManager = new LoadingManager()\nconst load = new ModelLoader(loadingManager)\nconst rgbeLoader = new lib.RGBELoader(loadingManager)\nconst { emitter } = utils\n\nconst resourcePath = './'\nconst resourcePath2 = 'http://172.16.223.163:9000/anov-prod/anov-3d/factory/example/'\n\nexport const usePath = process.env.ENV === 'dev' ? resourcePath : resourcePath2\n\nclass Factory3D {\n position: Vector3 = new Vector3(0, 0, 0)\n scene: SceneControl\n control: OrbitControls\n cameraUtil: Camera\n\n public loadingManager = loadingManager\n public tag = SceneTag.overview\n public style: SceneStyle = SceneStyle.real\n private option: factory3dOption\n wall: WallManage\n line: LineManage\n cylinder: CylinderManage\n poi: PoiManage\n circle: CircleManage\n areaBoundingBox: AreaBoundingBoxManage\n inspection: Inspection\n districtLine: DistrictLineManage\n\n usePath = usePath\n\n private pipeline: Group\n private realModl: Group\n private techModel: Group\n private whiteModel: Group\n private realGroundModel: Group\n private realTreeModel: Group\n private thermaLimaging: Group\n private eventHandleFn: Map<string, ((args?: any) => void)[]> = new Map()\n private boxSkeyTexture: DataTexture\n\n mainCamera: any\n\n interactionManager: InteractionManager\n\n constructor(option: factory3dOption) {\n this.option = option\n this.globalEventsAgent()\n factoryGlobalObject.setFactory(this)\n }\n\n /**\n * render factory 3d scene\n */\n renderScene(scene: SceneControl) {\n return new Promise((resolve) => {\n this.scene = scene\n\n this.cameraUtil = new Camera(scene.camera!, scene.controls!, scene)\n this.control = scene.controls!\n scene.camera.layers.set(0)\n\n load.loadGLTF(`${this.usePath}landScap3.glb`, false, true, './draco/', (gltf) => {\n this.realTreeModel = (gltf.scene) as Group\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n\n gltf.scene.traverse((child) => {\n child.layers.enable(5)\n\n if (child.type === 'Mesh') {\n child.castShadow = true\n child.receiveShadow = true\n }\n })\n\n scene.add(this.realTreeModel)\n\n return gltf\n })\n\n const interactionManager = new InteractionManager(\n this.scene.renderer,\n this.scene.camera,\n this.scene.renderer.domElement, // Modified By LM this.scene.cssRenderer.cssRenderer.domElement,\n )\n\n this.interactionManager = interactionManager\n\n utils.storeManagement.set('interactionManager', interactionManager)\n\n use.useframe(() => {\n interactionManager.update()\n })\n\n this.loadModel()\n\n loadingManager.onLoad = () => {\n resolve('success')\n }\n\n // initPostEffects(scene.scene, scene.renderer, scene.camera, { type: 'main' })\n\n scene.renderer.toneMappingExposure = 0.4\n })\n }\n\n private loadModel() {\n // real model\n load.loadGLTF(`${this.usePath}222.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n gltf.scene.visible = SceneStyle.real === this.style\n\n this.realModl = gltf.scene as Group\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n\n gltf.scene.traverse((child) => {\n child.layers.enable(5)\n\n if (child.type === 'Mesh') {\n child.castShadow = true\n child.receiveShadow = true\n }\n })\n\n handleUnit.call(this)\n\n return gltf\n })\n\n // tech model\n load.loadGLTF(`${this.usePath}2222.glb`, false, true, './draco/', (gltf) => {\n const group = gltf.scene\n\n use.useframe(() => {\n if (uniforms._Time.value > 0.5)\n uniforms._Time.value = 0\n\n uniforms._Time.value += 0.0008\n })\n\n group.traverse((child) => {\n // @ts-ignore\n if (child.type === 'Mesh') {\n if (child.name === '柱体') {\n // @ts-ignore\n child.visible = false\n const geometry = new PlaneGeometry(3000, 2000)\n const plane = new Mesh(geometry, material)\n plane.rotation.x = -Math.PI / 2\n\n plane.position.set(0, -1.5, 0)\n plane.renderOrder = -1\n\n group.add(plane)\n }\n\n else {\n // @ts-ignore\n child.material = finirMaterialV1\n }\n }\n })\n\n load.loadGLTF(`${this.usePath}plane.glb`, false, true, './draco/', (gltf) => {\n gltf.scene.scale.set(0.5, 0.5, 0.5)\n\n const text = new TextureLoader().load(`${this.usePath}roll.png`)\n\n text.wrapS = RepeatWrapping\n text.wrapT = RepeatWrapping\n\n text.repeat.set(1, 1)\n\n gltf.scene.traverse((child) => {\n if (child.type === 'Mesh') {\n // @ts-ignore\n child.material.blending = AdditiveBlending\n // @ts-ignore\n child.material.transparent = true\n // @ts-ignore\n child.material.opacity = 1\n // @ts-ignore\n child.material.depthTest = true\n\n // @ts-ignore\n child.material.map = text\n }\n })\n\n use.useframe(() => {\n text.offset.x += 0.01\n })\n\n group.add(gltf.scene)\n\n return gltf\n })\n\n createRiseLayer()\n\n this.scene.add(group)\n\n group.visible = SceneStyle.tech === this.style\n this.techModel = group as Group\n\n return gltf\n })\n\n // white model\n load.loadGLTF(`${this.usePath}2222.glb`, false, true, './draco/', (gltf) => {\n\n gltf.scene.traverse((child) => {\n if (child.name === '柱体') {\n (child as Mesh).material = new MeshBasicMaterial({ color: new Color('#fff') })\n } else if (child.type === 'Mesh') {\n (child as Mesh).material = new MeshLambertMaterial({ color: new Color('#aaa') })\n }\n })\n\n this.scene.add(gltf.scene)\n\n gltf.scene.visible = SceneStyle.white === this.style\n this.whiteModel = gltf.scene as Group\n return gltf\n })\n\n const targerMeshName = Object.values(targetProgresspoints).map(v => v.lookAt)\n\n // thermaLimaging model\n load.loadGLTF(`${this.usePath}2222.glb`, false, true, './draco/', (gltf) => {\n const group = gltf.scene\n group.traverse((child) => {\n if (child.type === 'Mesh') {\n // @ts-ignore\n child.material = new ShaderMaterial({\n vertexShader: vert,\n fragmentShader: frag,\n uniforms: {\n texture1: { value: new TextureLoader(this.loadingManager).load(`${this.usePath}test01.jpg`) },\n texture2: { value: new TextureLoader(this.loadingManager).load(`${this.usePath}test02.jpg`) },\n uvScale: { value: new Vector2(1, 1) },\n },\n })\n\n child.layers.set(2)\n\n if (targerMeshName.includes(child.name))\n // @ts-ignore\n child.material.depthTest = false\n }\n })\n\n this.scene.add(group)\n\n this.thermaLimaging = group as Group\n\n return gltf\n })\n\n load.loadGLTF(`${this.usePath}guandao.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n this.pipeline = gltf.scene as Group\n return gltf\n })\n\n // ground\n load.loadGLTF(`${this.usePath}landScap.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n\n this.realGroundModel = gltf.scene as Group\n return gltf\n })\n }\n\n /**\n * toggle SceneStyle\n * @param params\n */\n toggleSceneStyle(params: SceneStyle) {\n if (this.style === params)\n return\n this.style = params\n\n if (this.style === SceneStyle.tech) {\n this.pipeline.visible = false\n this.techModel.visible = true\n this.realModl.visible = false\n this.whiteModel.visible = false\n this.realTreeModel.visible = false\n this.scene.scene.background = null\n this.realGroundModel && (this.realGroundModel.visible = false)\n\n this.scene.renderer.toneMappingExposure = 0.6\n }\n\n if (params === SceneStyle.real) {\n this.pipeline.visible = true\n this.techModel.visible = false\n this.whiteModel.visible = false\n this.realModl.visible = true\n this.realGroundModel && (this.realGroundModel.visible = true)\n this.realTreeModel && (this.realTreeModel.visible = true)\n this.scene.scene.background = new Color('#ccc')\n this.scene.renderer.toneMappingExposure = 0.4\n }\n\n if (params === SceneStyle.white) {\n this.pipeline.visible = false\n this.techModel.visible = false\n this.realModl.visible = false\n this.whiteModel.visible = true\n this.realTreeModel.visible = false\n this.scene.scene.background = null\n this.realGroundModel && (this.realGroundModel.visible = false)\n\n this.scene.renderer.toneMappingExposure = 0.4\n }\n }\n\n public toggleTag(tag: SceneTag) {\n if (this.tag === tag)\n return\n toggleTag[tag].apply(this, [this])\n }\n\n private globalEventsAgent() {\n globalEvents.forEach((eventKey) => {\n emitter.on(eventKey, (args) => {\n this.eventHandleFn.get(eventKey)?.forEach((fn) => {\n fn(args)\n })\n })\n })\n }\n\n /**\n * toggle view\n */\n toggleView(viewType?: string) {\n if (this.tag !== SceneTag['smart-inspection'])\n return\n\n if (viewType) {\n if (viewType === 'Drone') {\n if (this.scene.cutoutCamera === this.inspection.minCamera) {\n const cutoutCamera = this.inspection.minCamera\n\n this.scene.cutoutCamera = this.inspection.mapCamera\n this.mainCamera = this.scene.camera\n this.scene.camera = cutoutCamera\n\n utils.emitter.emit('play')\n utils.emitter.emit('toggleView', 'Drone')\n }\n }\n\n if (viewType === 'Global') {\n if (this.scene.cutoutCamera !== this.inspection.minCamera) {\n const mainCamera = this.mainCamera\n const cutoutCamera = this.inspection.minCamera\n\n this.scene.camera = mainCamera\n this.scene.cutoutCamera = cutoutCamera\n\n utils.emitter.emit('stop')\n utils.emitter.emit('toggleView', 'Global')\n }\n }\n }\n else {\n // toggle to min camera\n if (this.scene.cutoutCamera === this.inspection.minCamera) {\n const cutoutCamera = this.inspection.minCamera\n\n this.scene.cutoutCamera = this.inspection.mapCamera\n\n this.mainCamera = this.scene.camera\n this.scene.camera = cutoutCamera\n\n utils.emitter.emit('play')\n utils.emitter.emit('toggleView', 'Drone')\n }\n else {\n // toggle to main camera\n const mainCamera = this.mainCamera\n const cutoutCamera = this.inspection.minCamera\n\n this.scene.camera = mainCamera\n this.scene.cutoutCamera = cutoutCamera\n\n utils.emitter.emit('stop')\n utils.emitter.emit('toggleView', 'Global')\n }\n }\n }\n\n addEventListener(eventName: string, handleFn: (args?: any) => void) {\n if (this.eventHandleFn.get(eventName))\n this.eventHandleFn.get(eventName).push(handleFn)\n\n else\n this.eventHandleFn.set(eventName, [handleFn])\n }\n}\n\nexport default Factory3D"],"mappings":"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"}
@@ -935,8 +935,10 @@ var HeadMap = /*#__PURE__*/function () {
935
935
  // this.eventList.has('close') && this.eventList.get('close')()
936
936
  this.canvasList.length = 0;
937
937
  this.backEle && this.backEle.remove();
938
- this.heatMapPlane.removeFromParent();
939
- this.heatMapPlane.remove();
938
+ if (this.heatMapPlane) {
939
+ this.heatMapPlane.removeFromParent();
940
+ this.heatMapPlane.remove();
941
+ }
940
942
  this.isShow = false;
941
943
  }
942
944
  }]);