@anov/3d 0.0.176 → 0.0.184

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 (135) hide show
  1. package/dist/anov3d.js +0 -2
  2. package/dist/anov3d.js.map +1 -1
  3. package/dist/applicationApi.js +38 -39
  4. package/dist/applicationApi.js.map +1 -1
  5. package/dist/module/camera/index.js +20 -17
  6. package/dist/module/camera/index.js.map +1 -1
  7. package/dist/module/entity/area/index.js +29 -0
  8. package/dist/module/entity/area/index.js.map +1 -0
  9. package/dist/module/{model/index.js → entity/area/style/area_01.js} +40 -79
  10. package/dist/module/entity/area/style/area_01.js.map +1 -0
  11. package/dist/module/entity/area/style/index.js +27 -0
  12. package/dist/module/entity/area/style/index.js.map +1 -0
  13. package/dist/module/entity/area/type.js.map +1 -0
  14. package/dist/module/entity/bar/index.js +29 -0
  15. package/dist/module/entity/bar/index.js.map +1 -0
  16. package/dist/{factory/unit/poi.js → module/entity/bar/style/bar_01.js} +36 -249
  17. package/dist/module/entity/bar/style/bar_01.js.map +1 -0
  18. package/dist/module/entity/bar/style/index.js +27 -0
  19. package/dist/module/entity/bar/style/index.js.map +1 -0
  20. package/dist/module/entity/bar/type.js +2 -0
  21. package/dist/module/entity/bar/type.js.map +1 -0
  22. package/dist/module/entity/index.js +5 -12
  23. package/dist/module/entity/index.js.map +1 -1
  24. package/dist/module/entity/model/index.js +9 -6
  25. package/dist/module/entity/model/index.js.map +1 -1
  26. package/dist/module/entity/model/load/loadFbx.js.map +1 -1
  27. package/dist/module/entity/model/load/loadGlb.js +7 -4
  28. package/dist/module/entity/model/load/loadGlb.js.map +1 -1
  29. package/dist/module/entity/poi/style/base.js.map +1 -1
  30. package/dist/module/entity/poi/type.js.map +1 -1
  31. package/dist/{factory/unit/districtLine.js → module/entity/realismTraffic/index.js} +91 -109
  32. package/dist/module/entity/realismTraffic/index.js.map +1 -0
  33. package/dist/module/entity/spline/style/index.js.map +1 -1
  34. package/dist/module/entity/spline/style/line_01.js +2 -2
  35. package/dist/module/entity/spline/style/line_01.js.map +1 -1
  36. package/dist/module/entity/spline/style/line_texture_01.js +6 -6
  37. package/dist/module/entity/spline/style/line_texture_01.js.map +1 -1
  38. package/dist/module/entity/spline/type.js.map +1 -1
  39. package/dist/module/entity/strategy.js +22 -0
  40. package/dist/module/entity/strategy.js.map +1 -1
  41. package/dist/module/entity/utils.js +17 -0
  42. package/dist/module/entity/utils.js.map +1 -1
  43. package/dist/module/environment/index.js +35 -113
  44. package/dist/module/environment/index.js.map +1 -1
  45. package/dist/module/scene/fileParse.js +232 -132
  46. package/dist/module/scene/fileParse.js.map +1 -1
  47. package/dist/module/scene/index.js +84 -137
  48. package/dist/module/scene/index.js.map +1 -1
  49. package/dist/{factory/globalControl.js → module/tool/index.js} +8 -16
  50. package/dist/module/tool/index.js.map +1 -0
  51. package/dist/sdkEntry.js +4 -9
  52. package/dist/sdkEntry.js.map +1 -1
  53. package/package.json +3 -3
  54. package/dist/factory/3d.js +0 -535
  55. package/dist/factory/3d.js.map +0 -1
  56. package/dist/factory/globalControl.js.map +0 -1
  57. package/dist/factory/globalData.js +0 -2
  58. package/dist/factory/globalData.js.map +0 -1
  59. package/dist/factory/regionData.js +0 -499
  60. package/dist/factory/regionData.js.map +0 -1
  61. package/dist/factory/type.js.map +0 -1
  62. package/dist/factory/unit/CameraPoi.js +0 -1047
  63. package/dist/factory/unit/CameraPoi.js.map +0 -1
  64. package/dist/factory/unit/areaBoundingBox.js +0 -28
  65. package/dist/factory/unit/areaBoundingBox.js.map +0 -1
  66. package/dist/factory/unit/circle.js +0 -225
  67. package/dist/factory/unit/circle.js.map +0 -1
  68. package/dist/factory/unit/cylinder.js +0 -269
  69. package/dist/factory/unit/cylinder.js.map +0 -1
  70. package/dist/factory/unit/districtLine.js.map +0 -1
  71. package/dist/factory/unit/glsl/heat/frag.glsl +0 -37
  72. package/dist/factory/unit/glsl/heat/frag.js +0 -4
  73. package/dist/factory/unit/glsl/heat/frag.js.map +0 -1
  74. package/dist/factory/unit/glsl/heat/ver.glsl +0 -15
  75. package/dist/factory/unit/glsl/heat/ver.js +0 -4
  76. package/dist/factory/unit/glsl/heat/ver.js.map +0 -1
  77. package/dist/factory/unit/glsl/highway/fragmentShader.js +0 -4
  78. package/dist/factory/unit/glsl/highway/fragmentShader.js.map +0 -1
  79. package/dist/factory/unit/glsl/highway/fragmentShader2.js +0 -4
  80. package/dist/factory/unit/glsl/highway/fragmentShader2.js.map +0 -1
  81. package/dist/factory/unit/glsl/highway/vertexShader.js +0 -4
  82. package/dist/factory/unit/glsl/highway/vertexShader.js.map +0 -1
  83. package/dist/factory/unit/glsl/point/fragment.glsl +0 -12
  84. package/dist/factory/unit/glsl/point/vertex.glsl +0 -7
  85. package/dist/factory/unit/glsl/wall/fragmentShader.glsl +0 -30
  86. package/dist/factory/unit/glsl/wall/vertexShader.glsl +0 -6
  87. package/dist/factory/unit/handle.js +0 -132
  88. package/dist/factory/unit/handle.js.map +0 -1
  89. package/dist/factory/unit/index.js +0 -264
  90. package/dist/factory/unit/index.js.map +0 -1
  91. package/dist/factory/unit/inspection/InspectionObject.js +0 -608
  92. package/dist/factory/unit/inspection/InspectionObject.js.map +0 -1
  93. package/dist/factory/unit/inspection/defaultFirstPerspectiveControls.js +0 -382
  94. package/dist/factory/unit/inspection/defaultFirstPerspectiveControls.js.map +0 -1
  95. package/dist/factory/unit/inspection/index.js +0 -379
  96. package/dist/factory/unit/inspection/index.js.map +0 -1
  97. package/dist/factory/unit/inspection/lineData.js +0 -44
  98. package/dist/factory/unit/inspection/lineData.js.map +0 -1
  99. package/dist/factory/unit/inspection/map.js +0 -67
  100. package/dist/factory/unit/inspection/map.js.map +0 -1
  101. package/dist/factory/unit/inspection/tubeGeometry.js +0 -152
  102. package/dist/factory/unit/inspection/tubeGeometry.js.map +0 -1
  103. package/dist/factory/unit/layer/rise.js +0 -142
  104. package/dist/factory/unit/layer/rise.js.map +0 -1
  105. package/dist/factory/unit/line.js +0 -96
  106. package/dist/factory/unit/line.js.map +0 -1
  107. package/dist/factory/unit/poi.js.map +0 -1
  108. package/dist/factory/unit/region.js +0 -72
  109. package/dist/factory/unit/region.js.map +0 -1
  110. package/dist/factory/unit/slice.js +0 -122
  111. package/dist/factory/unit/slice.js.map +0 -1
  112. package/dist/factory/unit/wall.js +0 -119
  113. package/dist/factory/unit/wall.js.map +0 -1
  114. package/dist/factory/utils/areaBoundingBox.js +0 -54
  115. package/dist/factory/utils/areaBoundingBox.js.map +0 -1
  116. package/dist/factory/utils/constant.js +0 -15
  117. package/dist/factory/utils/constant.js.map +0 -1
  118. package/dist/factory/utils/finirMaterial.js +0 -56
  119. package/dist/factory/utils/finirMaterial.js.map +0 -1
  120. package/dist/factory/utils/fontMesh.js +0 -49
  121. package/dist/factory/utils/fontMesh.js.map +0 -1
  122. package/dist/factory/utils/ground.js +0 -65
  123. package/dist/factory/utils/ground.js.map +0 -1
  124. package/dist/factory/utils/index.js +0 -24
  125. package/dist/factory/utils/index.js.map +0 -1
  126. package/dist/factory/utils/observe.js +0 -23
  127. package/dist/factory/utils/observe.js.map +0 -1
  128. package/dist/factory/utils/switchMaterial.js +0 -110
  129. package/dist/factory/utils/switchMaterial.js.map +0 -1
  130. package/dist/module/environment/time/index.js +0 -28
  131. package/dist/module/environment/time/index.js.map +0 -1
  132. package/dist/module/environment/weather/type.js +0 -28
  133. package/dist/module/environment/weather/type.js.map +0 -1
  134. package/dist/module/model/index.js.map +0 -1
  135. /package/dist/{factory → module/entity/area}/type.js +0 -0
@@ -1,122 +0,0 @@
1
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
- 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, _toPropertyKey(descriptor.key), descriptor); } }
4
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
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
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
7
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
- import { Clock, DoubleSide, Group, Mesh, PlaneGeometry, RepeatWrapping, ShaderMaterial, TextureLoader, Vector3, use } from '@anov/3d-core';
9
- import { usePath } from "../3d";
10
- var shader = {
11
- fragmentShader: "\n uniform float time;\n uniform float meshid;\n uniform float HeatDate[1000];////\u6570\u636E\u8FD9\u5757\u5FC5\u987B\u5199\u6B7B\u7684\u4E2A\u6570 \u4E0D\u7136\u62A5\u9519\n uniform sampler2D texture1;\n uniform sampler2D texture2;\n uniform sampler2D texture3;\n uniform sampler2D texture4;\n uniform sampler2D texture5;\n uniform sampler2D texture6;\n uniform sampler2D texture7;\n uniform sampler2D texture8;\n uniform sampler2D texture9;\n varying vec2 vUv;\n varying vec3 Position;\n varying vec3 vNormal;\n varying vec4 worldPosition;\n \n/////-------------------------\nfloat N2(vec2 p) {\nvec3 p3 = fract(vec3(p.xyx) * vec3(443.897, 441.423, 437.195));\np3 += dot(p3, p3.yzx + 19.19);\nreturn fract((p3.x + p3.y) * p3.z);\n}\n void main( void ) {\n vec2 uv=vUv;\n // uv*=3.;\n //vec2 uv1=vec2(fract(uv.x),fract(uv.y));\n // uv/=8.;\n vec2 w_uv= worldPosition.xz;\n w_uv *=0.0005;\n w_uv*=20.;\n w_uv =floor(w_uv*10.) /10.;\n\nvec2 gv=fract(w_uv)-0.5;\nvec2 id=floor(w_uv);\n//\nfloat ran = N2(id);\nfloat ran2 = N2(id+64.0); \n\n float num =1.+floor(fract(time*0.15*ran2+ran2)*63.);////1-64\n vec2 pic_xy= vec2(mod(num,8.)-1.,7.-floor((num-1.)/8.));\n vec2 zuv= (mod(uv*1.,1.) + pic_xy) / 8.; \n // uv*= 2.;\n // vec2 zuv= (mod(uv*1.,1.) + vec2(0.)) / 8.;\n vec4 sequ1 = texture2D( texture1, zuv);\n vec4 sequ2 = texture2D( texture2, zuv);\n vec4 sequ3 = texture2D( texture3, zuv);\n vec4 sequ4 = texture2D( texture4, zuv);\n vec4 sequ5 = texture2D( texture5, zuv);\n vec4 sequ6 = texture2D( texture6, zuv);\n vec4 sequ7 = texture2D( texture7, zuv);\n vec4 sequ8 = texture2D( texture8, zuv);\n vec4 sequ9 = texture2D( texture9, zuv);\n \n vec4 color = vec4 (1.,0.5,0.12,.5);\n vec4 color1 = vec4 (1.,0.2,0.12,.5);\n vec4 color2 = vec4 (1.,0.7,0.12,0.6);\n vec4 color3 = vec4 (1.,0.3,0.12,.6);\n // gl_FragColor =pow(sequ1,vec4(.5,.5,0.5,0.1))*color;\n vec4 coX[9] ;\n coX[0]= pow(texture2D( texture1, zuv),vec4(.5,.5,0.5,0.1))*color;\n coX[1]= pow(texture2D( texture2, zuv),vec4(.5,.5,0.5,0.1))*color1;\n coX[2]= pow(texture2D( texture3, zuv),vec4(.5,.5,0.5,0.1))*color2;\n coX[3]= pow(texture2D( texture4, zuv),vec4(.5,.5,0.5,0.1))*color3;\n coX[4]= pow(texture2D( texture5, zuv),vec4(.5,.5,0.5,0.1))*color;\n coX[5]= pow(texture2D( texture6, zuv),vec4(.5,.5,0.5,0.1))*color1;\n coX[6]= pow(texture2D( texture7, zuv),vec4(.5,.5,0.5,0.1))*color2;\n coX[7]= pow(texture2D( texture8, zuv),vec4(.5,.5,0.5,0.1))*color3;\n coX[8]= pow(texture2D( texture9, zuv),vec4(.5,.5,0.5,0.1))*color;\n\nfloat Tid =floor(ran2*9.) ;\ngl_FragColor = coX[int(Tid)];\n//gl_FragColor = vec4(ran);\n\n }",
12
- vertexShader: "varying vec2 vUv;\n varying vec3 vNormal;\n varying vec3 Position;\n varying vec4 worldPosition;\n \n\n void main()\n {\n vUv = uv;\n Position = position;\n \n vNormal =normalize( normal ) ;\n worldPosition = modelMatrix * vec4( position, 1.0 );\n vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );\n gl_Position = projectionMatrix * mvPosition;\n\n\n }"
13
- };
14
- var SliceManage = /*#__PURE__*/function () {
15
- function SliceManage(gobal) {
16
- _classCallCheck(this, SliceManage);
17
- _defineProperty(this, "gobal", void 0);
18
- _defineProperty(this, "scene", void 0);
19
- _defineProperty(this, "mesh", void 0);
20
- _defineProperty(this, "pointCount", 400);
21
- this.gobal = gobal;
22
- this.scene = gobal.scene.scene;
23
- }
24
- _createClass(SliceManage, [{
25
- key: "generateSlice",
26
- value: function generateSlice() {
27
- var textureLoader = new TextureLoader();
28
- var uniforms = {
29
- fogDensity: {
30
- value: 0.45
31
- },
32
- fogColor: {
33
- value: new Vector3(0, 0, 0)
34
- },
35
- time: {
36
- value: 1.0
37
- },
38
- HeatDate: {
39
- value: []
40
- },
41
- texture1: {
42
- value: textureLoader.load("".concat(usePath, "p2/sequ/xuebi01.png"))
43
- },
44
- texture2: {
45
- value: textureLoader.load("".concat(usePath, "p2/sequ/xuebi02.png"))
46
- },
47
- texture3: {
48
- value: textureLoader.load("".concat(usePath, "p2/sequ/xuebi03.png"))
49
- },
50
- texture4: {
51
- value: textureLoader.load("".concat(usePath, "p2/sequ/xuebi04.png"))
52
- },
53
- texture5: {
54
- value: textureLoader.load("".concat(usePath, "p2/sequ/xuebi05.png"))
55
- },
56
- texture6: {
57
- value: textureLoader.load("".concat(usePath, "p2/sequ/xuebi06.png"))
58
- },
59
- texture7: {
60
- value: textureLoader.load("".concat(usePath, "p2/sequ/xuebi07.png"))
61
- },
62
- texture8: {
63
- value: textureLoader.load("".concat(usePath, "p2/sequ/xuebi08.png"))
64
- },
65
- texture9: {
66
- value: textureLoader.load("".concat(usePath, "p2/sequ/xuebi09.png"))
67
- },
68
- meshid: {
69
- value: 1.0
70
- }
71
- };
72
- uniforms.texture1.value.wrapS = uniforms.texture1.value.wrapT = RepeatWrapping;
73
- uniforms.texture2.value.wrapS = uniforms.texture2.value.wrapT = RepeatWrapping;
74
- uniforms.texture3.value.wrapS = uniforms.texture3.value.wrapT = RepeatWrapping;
75
- uniforms.texture4.value.wrapS = uniforms.texture4.value.wrapT = RepeatWrapping;
76
- uniforms.texture5.value.wrapS = uniforms.texture5.value.wrapT = RepeatWrapping;
77
- uniforms.texture6.value.wrapS = uniforms.texture6.value.wrapT = RepeatWrapping;
78
- uniforms.texture7.value.wrapS = uniforms.texture7.value.wrapT = RepeatWrapping;
79
- uniforms.texture8.value.wrapS = uniforms.texture8.value.wrapT = RepeatWrapping;
80
- uniforms.texture9.value.wrapS = uniforms.texture9.value.wrapT = RepeatWrapping;
81
- var material = new ShaderMaterial({
82
- uniforms: uniforms,
83
- vertexShader: shader.vertexShader,
84
- fragmentShader: shader.fragmentShader,
85
- transparent: true,
86
- side: DoubleSide,
87
- depthTest: false
88
- });
89
- this.mesh = this.createRandomPlane(material);
90
- this.scene.add(this.mesh);
91
- var clock = new Clock();
92
- use.useframe(function () {
93
- uniforms.time.value += clock.getDelta();
94
- });
95
- }
96
- }, {
97
- key: "createRandomPlane",
98
- value: function createRandomPlane(material) {
99
- var size = Math.random() * 25; // 随机高度,最大50
100
- var group = new Group();
101
- for (var i = 0; i < this.pointCount; i++) {
102
- var geometry = new PlaneGeometry(size, size);
103
- var plane = new Mesh(geometry, material);
104
- // 随机位置
105
- var x = void 0,
106
- y = void 0;
107
- while (true) {
108
- x = Math.random() * (100 - 2 * size) + size + Math.floor((Math.random() - 0.5) * 40) * 100;
109
- y = Math.random() * (100 - 2 * size) + size + Math.floor((Math.random() - 0.5) * 30) * 100;
110
- if (x > 520 || x < -520 || y > 350 || y < -350) break;
111
- }
112
- plane.position.set(x, -0.5, y);
113
- plane.rotateX(-Math.PI / 2);
114
- group.add(plane);
115
- }
116
- return group;
117
- }
118
- }]);
119
- return SliceManage;
120
- }();
121
- export default SliceManage;
122
- //# sourceMappingURL=slice.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["Clock","DoubleSide","Group","Mesh","PlaneGeometry","RepeatWrapping","ShaderMaterial","TextureLoader","Vector3","use","usePath","shader","fragmentShader","vertexShader","SliceManage","gobal","_classCallCheck","_defineProperty","scene","_createClass","key","value","generateSlice","textureLoader","uniforms","fogDensity","fogColor","time","HeatDate","texture1","load","concat","texture2","texture3","texture4","texture5","texture6","texture7","texture8","texture9","meshid","wrapS","wrapT","material","transparent","side","depthTest","mesh","createRandomPlane","add","clock","useframe","getDelta","size","Math","random","group","i","pointCount","geometry","plane","x","y","floor","position","set","rotateX","PI"],"sources":["../../../src/factory/unit/slice.ts"],"sourcesContent":["import { Clock, DoubleSide, Group, Mesh, PlaneGeometry, RepeatWrapping, ShaderMaterial, TextureLoader, Vector3, use, utils } from '@anov/3d-core'\nimport type { Scene } from '@anov/3d-core'\nimport type Factory3D from '../3d'\nimport { usePath } from '../3d'\n\nconst shader = {\n fragmentShader: `\n uniform float time;\n uniform float meshid;\n uniform float HeatDate[1000];////数据这块必须写死的个数 不然报错\n uniform sampler2D texture1;\n uniform sampler2D texture2;\n uniform sampler2D texture3;\n uniform sampler2D texture4;\n uniform sampler2D texture5;\n uniform sampler2D texture6;\n uniform sampler2D texture7;\n uniform sampler2D texture8;\n uniform sampler2D texture9;\n varying vec2 vUv;\n varying vec3 Position;\n varying vec3 vNormal;\n varying vec4 worldPosition;\n \n/////-------------------------\nfloat N2(vec2 p) {\nvec3 p3 = fract(vec3(p.xyx) * vec3(443.897, 441.423, 437.195));\np3 += dot(p3, p3.yzx + 19.19);\nreturn fract((p3.x + p3.y) * p3.z);\n}\n void main( void ) {\n vec2 uv=vUv;\n // uv*=3.;\n //vec2 uv1=vec2(fract(uv.x),fract(uv.y));\n // uv/=8.;\n vec2 w_uv= worldPosition.xz;\n w_uv *=0.0005;\n w_uv*=20.;\n w_uv =floor(w_uv*10.) /10.;\n\nvec2 gv=fract(w_uv)-0.5;\nvec2 id=floor(w_uv);\n//\nfloat ran = N2(id);\nfloat ran2 = N2(id+64.0); \n\n float num =1.+floor(fract(time*0.15*ran2+ran2)*63.);////1-64\n vec2 pic_xy= vec2(mod(num,8.)-1.,7.-floor((num-1.)/8.));\n vec2 zuv= (mod(uv*1.,1.) + pic_xy) / 8.; \n // uv*= 2.;\n // vec2 zuv= (mod(uv*1.,1.) + vec2(0.)) / 8.;\n vec4 sequ1 = texture2D( texture1, zuv);\n vec4 sequ2 = texture2D( texture2, zuv);\n vec4 sequ3 = texture2D( texture3, zuv);\n vec4 sequ4 = texture2D( texture4, zuv);\n vec4 sequ5 = texture2D( texture5, zuv);\n vec4 sequ6 = texture2D( texture6, zuv);\n vec4 sequ7 = texture2D( texture7, zuv);\n vec4 sequ8 = texture2D( texture8, zuv);\n vec4 sequ9 = texture2D( texture9, zuv);\n \n vec4 color = vec4 (1.,0.5,0.12,.5);\n vec4 color1 = vec4 (1.,0.2,0.12,.5);\n vec4 color2 = vec4 (1.,0.7,0.12,0.6);\n vec4 color3 = vec4 (1.,0.3,0.12,.6);\n // gl_FragColor =pow(sequ1,vec4(.5,.5,0.5,0.1))*color;\n vec4 coX[9] ;\n coX[0]= pow(texture2D( texture1, zuv),vec4(.5,.5,0.5,0.1))*color;\n coX[1]= pow(texture2D( texture2, zuv),vec4(.5,.5,0.5,0.1))*color1;\n coX[2]= pow(texture2D( texture3, zuv),vec4(.5,.5,0.5,0.1))*color2;\n coX[3]= pow(texture2D( texture4, zuv),vec4(.5,.5,0.5,0.1))*color3;\n coX[4]= pow(texture2D( texture5, zuv),vec4(.5,.5,0.5,0.1))*color;\n coX[5]= pow(texture2D( texture6, zuv),vec4(.5,.5,0.5,0.1))*color1;\n coX[6]= pow(texture2D( texture7, zuv),vec4(.5,.5,0.5,0.1))*color2;\n coX[7]= pow(texture2D( texture8, zuv),vec4(.5,.5,0.5,0.1))*color3;\n coX[8]= pow(texture2D( texture9, zuv),vec4(.5,.5,0.5,0.1))*color;\n\nfloat Tid =floor(ran2*9.) ;\ngl_FragColor = coX[int(Tid)];\n//gl_FragColor = vec4(ran);\n\n }`,\n vertexShader: `varying vec2 vUv;\n varying vec3 vNormal;\n varying vec3 Position;\n varying vec4 worldPosition;\n \n\n void main()\n {\n vUv = uv;\n Position = position;\n \n vNormal =normalize( normal ) ;\n worldPosition = modelMatrix * vec4( position, 1.0 );\n vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );\n gl_Position = projectionMatrix * mvPosition;\n\n\n }`,\n}\nclass SliceManage {\n private gobal: Factory3D\n private scene: Scene\n mesh: Group\n private pointCount = 400\n\n constructor(gobal: Factory3D) {\n this.gobal = gobal\n this.scene = gobal.scene.scene\n }\n\n generateSlice() {\n const textureLoader = new TextureLoader()\n const uniforms = {\n fogDensity: { value: 0.45 },\n fogColor: { value: new Vector3(0, 0, 0) },\n time: { value: 1.0 },\n HeatDate: { value: [] },\n texture1: { value: textureLoader.load(`${usePath}p2/sequ/xuebi01.png`) },\n texture2: { value: textureLoader.load(`${usePath}p2/sequ/xuebi02.png`) },\n texture3: { value: textureLoader.load(`${usePath}p2/sequ/xuebi03.png`) },\n texture4: { value: textureLoader.load(`${usePath}p2/sequ/xuebi04.png`) },\n texture5: { value: textureLoader.load(`${usePath}p2/sequ/xuebi05.png`) },\n texture6: { value: textureLoader.load(`${usePath}p2/sequ/xuebi06.png`) },\n texture7: { value: textureLoader.load(`${usePath}p2/sequ/xuebi07.png`) },\n texture8: { value: textureLoader.load(`${usePath}p2/sequ/xuebi08.png`) },\n texture9: { value: textureLoader.load(`${usePath}p2/sequ/xuebi09.png`) },\n meshid: { value: 1.0 },\n }\n\n uniforms.texture1.value.wrapS = uniforms.texture1.value.wrapT = RepeatWrapping\n uniforms.texture2.value.wrapS = uniforms.texture2.value.wrapT = RepeatWrapping\n uniforms.texture3.value.wrapS = uniforms.texture3.value.wrapT = RepeatWrapping\n uniforms.texture4.value.wrapS = uniforms.texture4.value.wrapT = RepeatWrapping\n uniforms.texture5.value.wrapS = uniforms.texture5.value.wrapT = RepeatWrapping\n uniforms.texture6.value.wrapS = uniforms.texture6.value.wrapT = RepeatWrapping\n uniforms.texture7.value.wrapS = uniforms.texture7.value.wrapT = RepeatWrapping\n uniforms.texture8.value.wrapS = uniforms.texture8.value.wrapT = RepeatWrapping\n uniforms.texture9.value.wrapS = uniforms.texture9.value.wrapT = RepeatWrapping\n\n const material = new ShaderMaterial({\n uniforms,\n vertexShader: shader.vertexShader,\n fragmentShader: shader.fragmentShader,\n transparent: true,\n side: DoubleSide,\n depthTest: false,\n })\n\n this.mesh = this.createRandomPlane(material)\n this.scene.add(this.mesh)\n\n const clock = new Clock()\n use.useframe(() => {\n uniforms.time.value += clock.getDelta()\n })\n }\n\n createRandomPlane(material: ShaderMaterial) {\n const size = Math.random() * 25 // 随机高度,最大50\n const group = new Group()\n for (let i = 0; i < this.pointCount; i++) {\n const geometry = new PlaneGeometry(size, size)\n const plane = new Mesh(geometry, material)\n // 随机位置\n let x, y\n while (true) {\n x = (Math.random()) * (100 - 2 * size) + size + (Math.floor((Math.random() - 0.5) * 40) * 100)\n y = (Math.random()) * (100 - 2 * size) + size + (Math.floor((Math.random() - 0.5) * 30) * 100)\n if (x > 520 || x < -520 || y > 350 || y < -350)\n break\n }\n\n plane.position.set(x, -0.5, y)\n plane.rotateX(-Math.PI / 2)\n group.add(plane)\n }\n return group\n }\n}\n\nexport default SliceManage"],"mappings":";;;;;;;AAAA,SAASA,KAAK,EAAEC,UAAU,EAAEC,KAAK,EAAEC,IAAI,EAAEC,aAAa,EAAEC,cAAc,EAAEC,cAAc,EAAEC,aAAa,EAAEC,OAAO,EAAEC,GAAG,QAAe,eAAe;AAGjJ,SAASC,OAAO;AAEhB,IAAMC,MAAM,GAAG;EACbC,cAAc,sxFA2EV;EACJC,YAAY;AAkBd,CAAC;AAAA,IACKC,WAAW;EAMf,SAAAA,YAAYC,KAAgB,EAAE;IAAAC,eAAA,OAAAF,WAAA;IAAAG,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,qBAFT,GAAG;IAGtB,IAAI,CAACF,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACG,KAAK,GAAGH,KAAK,CAACG,KAAK,CAACA,KAAK;EAChC;EAACC,YAAA,CAAAL,WAAA;IAAAM,GAAA;IAAAC,KAAA,EAED,SAAAC,cAAA,EAAgB;MACd,IAAMC,aAAa,GAAG,IAAIhB,aAAa,CAAC,CAAC;MACzC,IAAMiB,QAAQ,GAAG;QACfC,UAAU,EAAE;UAAEJ,KAAK,EAAE;QAAK,CAAC;QAC3BK,QAAQ,EAAE;UAAEL,KAAK,EAAE,IAAIb,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAAE,CAAC;QACzCmB,IAAI,EAAE;UAAEN,KAAK,EAAE;QAAI,CAAC;QACpBO,QAAQ,EAAE;UAAEP,KAAK,EAAE;QAAG,CAAC;QACvBQ,QAAQ,EAAE;UAAER,KAAK,EAAEE,aAAa,CAACO,IAAI,IAAAC,MAAA,CAAIrB,OAAO,wBAAqB;QAAE,CAAC;QACxEsB,QAAQ,EAAE;UAAEX,KAAK,EAAEE,aAAa,CAACO,IAAI,IAAAC,MAAA,CAAIrB,OAAO,wBAAqB;QAAE,CAAC;QACxEuB,QAAQ,EAAE;UAAEZ,KAAK,EAAEE,aAAa,CAACO,IAAI,IAAAC,MAAA,CAAIrB,OAAO,wBAAqB;QAAE,CAAC;QACxEwB,QAAQ,EAAE;UAAEb,KAAK,EAAEE,aAAa,CAACO,IAAI,IAAAC,MAAA,CAAIrB,OAAO,wBAAqB;QAAE,CAAC;QACxEyB,QAAQ,EAAE;UAAEd,KAAK,EAAEE,aAAa,CAACO,IAAI,IAAAC,MAAA,CAAIrB,OAAO,wBAAqB;QAAE,CAAC;QACxE0B,QAAQ,EAAE;UAAEf,KAAK,EAAEE,aAAa,CAACO,IAAI,IAAAC,MAAA,CAAIrB,OAAO,wBAAqB;QAAE,CAAC;QACxE2B,QAAQ,EAAE;UAAEhB,KAAK,EAAEE,aAAa,CAACO,IAAI,IAAAC,MAAA,CAAIrB,OAAO,wBAAqB;QAAE,CAAC;QACxE4B,QAAQ,EAAE;UAAEjB,KAAK,EAAEE,aAAa,CAACO,IAAI,IAAAC,MAAA,CAAIrB,OAAO,wBAAqB;QAAE,CAAC;QACxE6B,QAAQ,EAAE;UAAElB,KAAK,EAAEE,aAAa,CAACO,IAAI,IAAAC,MAAA,CAAIrB,OAAO,wBAAqB;QAAE,CAAC;QACxE8B,MAAM,EAAE;UAAEnB,KAAK,EAAE;QAAI;MACvB,CAAC;MAEDG,QAAQ,CAACK,QAAQ,CAACR,KAAK,CAACoB,KAAK,GAAGjB,QAAQ,CAACK,QAAQ,CAACR,KAAK,CAACqB,KAAK,GAAGrC,cAAc;MAC9EmB,QAAQ,CAACQ,QAAQ,CAACX,KAAK,CAACoB,KAAK,GAAGjB,QAAQ,CAACQ,QAAQ,CAACX,KAAK,CAACqB,KAAK,GAAGrC,cAAc;MAC9EmB,QAAQ,CAACS,QAAQ,CAACZ,KAAK,CAACoB,KAAK,GAAGjB,QAAQ,CAACS,QAAQ,CAACZ,KAAK,CAACqB,KAAK,GAAGrC,cAAc;MAC9EmB,QAAQ,CAACU,QAAQ,CAACb,KAAK,CAACoB,KAAK,GAAGjB,QAAQ,CAACU,QAAQ,CAACb,KAAK,CAACqB,KAAK,GAAGrC,cAAc;MAC9EmB,QAAQ,CAACW,QAAQ,CAACd,KAAK,CAACoB,KAAK,GAAGjB,QAAQ,CAACW,QAAQ,CAACd,KAAK,CAACqB,KAAK,GAAGrC,cAAc;MAC9EmB,QAAQ,CAACY,QAAQ,CAACf,KAAK,CAACoB,KAAK,GAAGjB,QAAQ,CAACY,QAAQ,CAACf,KAAK,CAACqB,KAAK,GAAGrC,cAAc;MAC9EmB,QAAQ,CAACa,QAAQ,CAAChB,KAAK,CAACoB,KAAK,GAAGjB,QAAQ,CAACa,QAAQ,CAAChB,KAAK,CAACqB,KAAK,GAAGrC,cAAc;MAC9EmB,QAAQ,CAACc,QAAQ,CAACjB,KAAK,CAACoB,KAAK,GAAGjB,QAAQ,CAACc,QAAQ,CAACjB,KAAK,CAACqB,KAAK,GAAGrC,cAAc;MAC9EmB,QAAQ,CAACe,QAAQ,CAAClB,KAAK,CAACoB,KAAK,GAAGjB,QAAQ,CAACe,QAAQ,CAAClB,KAAK,CAACqB,KAAK,GAAGrC,cAAc;MAE9E,IAAMsC,QAAQ,GAAG,IAAIrC,cAAc,CAAC;QAClCkB,QAAQ,EAARA,QAAQ;QACRX,YAAY,EAAEF,MAAM,CAACE,YAAY;QACjCD,cAAc,EAAED,MAAM,CAACC,cAAc;QACrCgC,WAAW,EAAE,IAAI;QACjBC,IAAI,EAAE5C,UAAU;QAChB6C,SAAS,EAAE;MACb,CAAC,CAAC;MAEF,IAAI,CAACC,IAAI,GAAG,IAAI,CAACC,iBAAiB,CAACL,QAAQ,CAAC;MAC5C,IAAI,CAACzB,KAAK,CAAC+B,GAAG,CAAC,IAAI,CAACF,IAAI,CAAC;MAEzB,IAAMG,KAAK,GAAG,IAAIlD,KAAK,CAAC,CAAC;MACzBS,GAAG,CAAC0C,QAAQ,CAAC,YAAM;QACjB3B,QAAQ,CAACG,IAAI,CAACN,KAAK,IAAI6B,KAAK,CAACE,QAAQ,CAAC,CAAC;MACzC,CAAC,CAAC;IACJ;EAAC;IAAAhC,GAAA;IAAAC,KAAA,EAED,SAAA2B,kBAAkBL,QAAwB,EAAE;MAC1C,IAAMU,IAAI,GAAGC,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAC;MAChC,IAAMC,KAAK,GAAG,IAAItD,KAAK,CAAC,CAAC;MACzB,KAAK,IAAIuD,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACC,UAAU,EAAED,CAAC,EAAE,EAAE;QACxC,IAAME,QAAQ,GAAG,IAAIvD,aAAa,CAACiD,IAAI,EAAEA,IAAI,CAAC;QAC9C,IAAMO,KAAK,GAAG,IAAIzD,IAAI,CAACwD,QAAQ,EAAEhB,QAAQ,CAAC;QAC1C;QACA,IAAIkB,CAAC;UAAEC,CAAC;QACR,OAAO,IAAI,EAAE;UACXD,CAAC,GAAIP,IAAI,CAACC,MAAM,CAAC,CAAC,IAAK,GAAG,GAAG,CAAC,GAAGF,IAAI,CAAC,GAAGA,IAAI,GAAIC,IAAI,CAACS,KAAK,CAAC,CAACT,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC,GAAG,GAAI;UAC9FO,CAAC,GAAIR,IAAI,CAACC,MAAM,CAAC,CAAC,IAAK,GAAG,GAAG,CAAC,GAAGF,IAAI,CAAC,GAAGA,IAAI,GAAIC,IAAI,CAACS,KAAK,CAAC,CAACT,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC,GAAG,GAAI;UAC9F,IAAIM,CAAC,GAAG,GAAG,IAAIA,CAAC,GAAG,CAAC,GAAG,IAAIC,CAAC,GAAG,GAAG,IAAIA,CAAC,GAAG,CAAC,GAAG,EAC5C;QACJ;QAEAF,KAAK,CAACI,QAAQ,CAACC,GAAG,CAACJ,CAAC,EAAE,CAAC,GAAG,EAAEC,CAAC,CAAC;QAC9BF,KAAK,CAACM,OAAO,CAAC,CAACZ,IAAI,CAACa,EAAE,GAAG,CAAC,CAAC;QAC3BX,KAAK,CAACP,GAAG,CAACW,KAAK,CAAC;MAClB;MACA,OAAOJ,KAAK;IACd;EAAC;EAAA,OAAA1C,WAAA;AAAA;AAGH,eAAeA,WAAW"}
@@ -1,119 +0,0 @@
1
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
- 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, _toPropertyKey(descriptor.key), descriptor); } }
4
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
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
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
7
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
- import { createRoundLineWallMesh } from '@anov/3d-ability';
9
- import { Color, ShaderMaterial, Vector3 } from '@anov/3d-core';
10
- import regionMap from "../regionData";
11
-
12
- // import wallVertexShader from './glsl/wall/vertexShader.glsl'
13
- // import wallFragmentShader from './glsl/wall/fragmentShader.glsl'
14
-
15
- var wallPosition = [{
16
- label: regionMap.reform.title,
17
- id: '1',
18
- belongTo: regionMap.reform.id,
19
- points: regionMap.reform.area
20
- }, {
21
- label: regionMap.reduction.title,
22
- id: '2',
23
- belongTo: regionMap.reduction.id,
24
- points: regionMap.reduction.area
25
- }, {
26
- label: regionMap.crudeOil.title,
27
- id: '3',
28
- belongTo: regionMap.crudeOil.id,
29
- points: regionMap.crudeOil.area
30
- }, {
31
- label: regionMap.catalyticCracking.title,
32
- id: '4',
33
- belongTo: regionMap.catalyticCracking.id,
34
- points: regionMap.catalyticCracking.area
35
- }, {
36
- label: regionMap.hydrocrackingUnit.title,
37
- id: '5',
38
- belongTo: regionMap.hydrocrackingUnit.id,
39
- points: regionMap.hydrocrackingUnit.area
40
- }, {
41
- label: regionMap.cokingUnit.title,
42
- id: '6',
43
- belongTo: regionMap.cokingUnit.id,
44
- points: regionMap.cokingUnit.area
45
- }, {
46
- label: regionMap.administrative.title,
47
- id: '7',
48
- belongTo: regionMap.administrative.id,
49
- points: regionMap.administrative.area
50
- }];
51
- export var walllMaterial = new ShaderMaterial({
52
- uniforms: {
53
- iTime: {
54
- value: 0
55
- },
56
- size: {
57
- value: 16.0
58
- },
59
- width: {
60
- value: 0.4
61
- },
62
- speed: {
63
- value: 1.0
64
- },
65
- alpha: {
66
- value: 0.15
67
- },
68
- color1: {
69
- value: new Color('#1fddff')
70
- },
71
- color2: {
72
- value: new Color('#1f88ff')
73
- },
74
- grow: {
75
- value: 0.0
76
- }
77
- },
78
- vertexShader: "\n varying vec2 vUv;\n varying vec3 vPosition;\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 }",
79
- fragmentShader: "uniform float iTime;\n uniform float size;\n uniform float width;///\u5BBD\u5EA6\n uniform float speed;///\u901F\u5EA6\n uniform float alpha;///\u900F\u660E\u5EA6\n uniform vec3 color1;///\u989C\u82721\n uniform vec3 color2;///\u989C\u82722\n uniform float grow;\n varying vec2 vUv;\n varying vec3 vPosition;\n \n vec3 colorfix(vec3 color) {\n return vec3(color.r, color.g, color.b);\n }\n \n void mainImage(out vec4 fragColor, in vec2 fragCoord) {\n vec2 uv = vUv;\n vec2 wallUV = uv;\n wallUV.y *= size;\n\n float fwallUV = floor(fract(wallUV.y - iTime * speed) + width);\n float dis = 1. - (uv.y * 6. - 5.);\n float dis2 = 0.8 - (uv.y * 2. - 1.);\n vec3 col = color1 * dis2 + color2 * (1. - dis2);\n fragColor = vec4(col, fwallUV * alpha * dis);\n }\n \n void main() {\n vec2 fragCoord = gl_FragCoord.xy;\n mainImage(gl_FragColor, fragCoord);\n\n if(vPosition.y > grow){\n gl_FragColor.a = 0.0;\n }\n }\n \n ",
80
- transparent: true,
81
- side: 2,
82
- depthTest: false
83
- });
84
- var WallManage = /*#__PURE__*/function () {
85
- function WallManage(gobal, options) {
86
- _classCallCheck(this, WallManage);
87
- _defineProperty(this, "scene", void 0);
88
- _defineProperty(this, "wallMesh", new Map());
89
- _defineProperty(this, "option", void 0);
90
- _defineProperty(this, "time", 0);
91
- this.scene = gobal.scene.scene;
92
- this.option = options || {};
93
- }
94
- _createClass(WallManage, [{
95
- key: "generateWall",
96
- value: function generateWall() {
97
- var _this = this;
98
- setInterval(function () {
99
- _this.time += 0.008;
100
- walllMaterial.uniforms.iTime.value = _this.time;
101
- });
102
- wallPosition.forEach(function (item) {
103
- var _this$option$visible, _this$option;
104
- var roundLineMesh = createRoundLineWallMesh(item.points.map(function (v) {
105
- return new Vector3(v[0], v[1], v[2]);
106
- }), {
107
- radius: 0,
108
- close: true
109
- }, walllMaterial);
110
- roundLineMesh.visible = (_this$option$visible = (_this$option = _this.option) === null || _this$option === void 0 ? void 0 : _this$option.visible) !== null && _this$option$visible !== void 0 ? _this$option$visible : true;
111
- _this.wallMesh.set(item.id, roundLineMesh);
112
- _this.scene.add(roundLineMesh);
113
- });
114
- }
115
- }]);
116
- return WallManage;
117
- }();
118
- export default WallManage;
119
- //# sourceMappingURL=wall.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["createRoundLineWallMesh","Color","ShaderMaterial","Vector3","regionMap","wallPosition","label","reform","title","id","belongTo","points","area","reduction","crudeOil","catalyticCracking","hydrocrackingUnit","cokingUnit","administrative","walllMaterial","uniforms","iTime","value","size","width","speed","alpha","color1","color2","grow","vertexShader","fragmentShader","transparent","side","depthTest","WallManage","gobal","options","_classCallCheck","_defineProperty","Map","scene","option","_createClass","key","generateWall","_this","setInterval","time","forEach","item","_this$option$visible","_this$option","roundLineMesh","map","v","radius","close","visible","wallMesh","set","add"],"sources":["../../../src/factory/unit/wall.ts"],"sourcesContent":["import { createRoundLineWallMesh } from '@anov/3d-ability'\nimport type { Object3D, Scene } from '@anov/3d-core'\nimport { Color, ShaderMaterial, Vector3, use } from '@anov/3d-core'\nimport type Factory3D from '../3d'\nimport regionMap from '../regionData'\n\n// import wallVertexShader from './glsl/wall/vertexShader.glsl'\n// import wallFragmentShader from './glsl/wall/fragmentShader.glsl'\n\nconst wallPosition = [\n {\n label: regionMap.reform.title,\n id: '1',\n belongTo: regionMap.reform.id,\n points: regionMap.reform.area,\n },\n {\n label: regionMap.reduction.title,\n id: '2',\n belongTo: regionMap.reduction.id,\n points: regionMap.reduction.area,\n },\n {\n label: regionMap.crudeOil.title,\n id: '3',\n belongTo: regionMap.crudeOil.id,\n points: regionMap.crudeOil.area,\n },\n {\n label: regionMap.catalyticCracking.title,\n id: '4',\n belongTo: regionMap.catalyticCracking.id,\n points: regionMap.catalyticCracking.area,\n },\n {\n label: regionMap.hydrocrackingUnit.title,\n id: '5',\n belongTo: regionMap.hydrocrackingUnit.id,\n points: regionMap.hydrocrackingUnit.area,\n },\n {\n label: regionMap.cokingUnit.title,\n id: '6',\n belongTo: regionMap.cokingUnit.id,\n points: regionMap.cokingUnit.area,\n },\n {\n label: regionMap.administrative.title,\n id: '7',\n belongTo: regionMap.administrative.id,\n points: regionMap.administrative.area,\n },\n]\n\nexport const walllMaterial = new ShaderMaterial({\n uniforms: {\n iTime: {\n value: 0,\n },\n size: {\n value: 16.0,\n },\n width: {\n value: 0.4,\n },\n speed: {\n value: 1.0,\n },\n alpha: {\n value: 0.15,\n },\n color1: {\n value: new Color('#1fddff'),\n },\n color2: {\n value: new Color('#1f88ff'),\n },\n grow: {\n value: 0.0,\n },\n },\n vertexShader: `\n varying vec2 vUv;\n varying vec3 vPosition;\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 }`,\n fragmentShader: `uniform float iTime;\n uniform float size;\n uniform float width;///宽度\n uniform float speed;///速度\n uniform float alpha;///透明度\n uniform vec3 color1;///颜色1\n uniform vec3 color2;///颜色2\n uniform float grow;\n varying vec2 vUv;\n varying vec3 vPosition;\n \n vec3 colorfix(vec3 color) {\n return vec3(color.r, color.g, color.b);\n }\n \n void mainImage(out vec4 fragColor, in vec2 fragCoord) {\n vec2 uv = vUv;\n vec2 wallUV = uv;\n wallUV.y *= size;\n\n float fwallUV = floor(fract(wallUV.y - iTime * speed) + width);\n float dis = 1. - (uv.y * 6. - 5.);\n float dis2 = 0.8 - (uv.y * 2. - 1.);\n vec3 col = color1 * dis2 + color2 * (1. - dis2);\n fragColor = vec4(col, fwallUV * alpha * dis);\n }\n \n void main() {\n vec2 fragCoord = gl_FragCoord.xy;\n mainImage(gl_FragColor, fragCoord);\n\n if(vPosition.y > grow){\n gl_FragColor.a = 0.0;\n }\n }\n \n `,\n transparent: true,\n side: 2,\n depthTest: false,\n})\n\ntype WallManageOption = {\n visible?: boolean\n}\nclass WallManage {\n private scene: Scene\n readonly wallMesh: Map<string, Object3D> = new Map()\n private option: WallManageOption\n\n private time = 0\n\n constructor(gobal: Factory3D, options?: WallManageOption) {\n this.scene = gobal.scene.scene\n this.option = options || {}\n }\n\n generateWall() {\n setInterval(() => {\n this.time += 0.008\n walllMaterial.uniforms.iTime.value = this.time\n })\n\n wallPosition.forEach((item) => {\n const roundLineMesh = createRoundLineWallMesh(item.points.map(v => new Vector3(v[0], v[1], v[2])), {\n radius: 0,\n close: true,\n }, walllMaterial)\n roundLineMesh.visible = this.option?.visible ?? true\n this.wallMesh.set(item.id, roundLineMesh)\n this.scene.add(roundLineMesh)\n })\n }\n}\n\nexport default WallManage"],"mappings":"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"}
@@ -1,54 +0,0 @@
1
- import { Box3, Vector3 } from '@anov/3d-core';
2
- import { createRoundLineWallMesh } from '@anov/3d-ability';
3
-
4
- /**
5
- * create areaBounding box
6
- * @param points
7
- * @param height
8
- */
9
- export var createAreaBoundingBox = function createAreaBoundingBox(points, height) {
10
- var mesh = createRoundLineWallMesh(points.map(function (item) {
11
- return new Vector3().fromArray([item[0], item[1], item[2]]);
12
- }), {
13
- radius: 0,
14
- close: true,
15
- height: height
16
- });
17
- var box = new Box3();
18
- box.setFromObject(mesh);
19
- var center = new Vector3();
20
- box.getCenter(center);
21
- var size = new Vector3();
22
- box.getSize(size);
23
- // size.multiplyScalar(2) // 将尺寸乘以2
24
-
25
- // const newSize = size.multiplyScalar(3)
26
-
27
- // const newMin = center.clone().sub(newSize.clone().divideScalar(2))
28
- // const newMax = center.clone().add(newSize.clone().divideScalar(2))
29
- // box.set(newMin, newMax)
30
-
31
- // 3. 计算新的最小和最大顶点
32
- var min = new Vector3().copy(center).sub(size.clone().multiply(new Vector3(0.5, 0.5, 1)));
33
- var max = new Vector3().copy(center).add(size.clone().multiply(new Vector3(0.5, 2, 1)));
34
-
35
- // 4. 更新 Box3 的最小和最大顶点
36
- box.min.copy(min);
37
- box.max.copy(max);
38
-
39
- // const { scene } = use.useScene()
40
- // scene.add(new Box3Helper(box, new Color(0xFF0000)))
41
-
42
- return box;
43
- };
44
-
45
- /**
46
- * collisionDetection
47
- * @param box
48
- * @param position
49
- * @returns
50
- */
51
- export var collisionDetection = function collisionDetection(box, position) {
52
- return box.containsPoint(position);
53
- };
54
- //# sourceMappingURL=areaBoundingBox.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["Box3","Vector3","createRoundLineWallMesh","createAreaBoundingBox","points","height","mesh","map","item","fromArray","radius","close","box","setFromObject","center","getCenter","size","getSize","min","copy","sub","clone","multiply","max","add","collisionDetection","position","containsPoint"],"sources":["../../../src/factory/utils/areaBoundingBox.ts"],"sourcesContent":["import { Box3, Box3Helper, Color, Vector3, use } from '@anov/3d-core'\nimport { createRoundLineWallMesh } from '@anov/3d-ability'\n\n/**\n * create areaBounding box\n * @param points\n * @param height\n */\nexport const createAreaBoundingBox = (points: number[][], height: number) => {\n const mesh = createRoundLineWallMesh(\n points.map((item) => {\n return new Vector3().fromArray([item[0], item[1], item[2]])\n }),\n {\n radius: 0,\n close: true,\n height,\n },\n )\n\n const box = new Box3()\n\n box.setFromObject(mesh)\n\n const center = new Vector3()\n box.getCenter(center)\n\n const size = new Vector3()\n box.getSize(size)\n // size.multiplyScalar(2) // 将尺寸乘以2\n\n // const newSize = size.multiplyScalar(3)\n\n // const newMin = center.clone().sub(newSize.clone().divideScalar(2))\n // const newMax = center.clone().add(newSize.clone().divideScalar(2))\n // box.set(newMin, newMax)\n\n // 3. 计算新的最小和最大顶点\n const min = new Vector3().copy(center).sub(size.clone().multiply(new Vector3(0.5, 0.5, 1)))\n const max = new Vector3().copy(center).add(size.clone().multiply(new Vector3(0.5, 2, 1)))\n\n // 4. 更新 Box3 的最小和最大顶点\n box.min.copy(min)\n box.max.copy(max)\n\n // const { scene } = use.useScene()\n // scene.add(new Box3Helper(box, new Color(0xFF0000)))\n\n return box\n}\n\n/**\n * collisionDetection\n * @param box\n * @param position\n * @returns\n */\nexport const collisionDetection = (box: Box3, position: Vector3) => {\n return box.containsPoint(position)\n}\n"],"mappings":"AAAA,SAASA,IAAI,EAAqBC,OAAO,QAAa,eAAe;AACrE,SAASC,uBAAuB,QAAQ,kBAAkB;;AAE1D;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,MAAkB,EAAEC,MAAc,EAAK;EAC3E,IAAMC,IAAI,GAAGJ,uBAAuB,CAClCE,MAAM,CAACG,GAAG,CAAC,UAACC,IAAI,EAAK;IACnB,OAAO,IAAIP,OAAO,CAAC,CAAC,CAACQ,SAAS,CAAC,CAACD,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;EAC7D,CAAC,CAAC,EACF;IACEE,MAAM,EAAE,CAAC;IACTC,KAAK,EAAE,IAAI;IACXN,MAAM,EAANA;EACF,CACF,CAAC;EAED,IAAMO,GAAG,GAAG,IAAIZ,IAAI,CAAC,CAAC;EAEtBY,GAAG,CAACC,aAAa,CAACP,IAAI,CAAC;EAEvB,IAAMQ,MAAM,GAAG,IAAIb,OAAO,CAAC,CAAC;EAC5BW,GAAG,CAACG,SAAS,CAACD,MAAM,CAAC;EAErB,IAAME,IAAI,GAAG,IAAIf,OAAO,CAAC,CAAC;EAC1BW,GAAG,CAACK,OAAO,CAACD,IAAI,CAAC;EACjB;;EAEA;;EAEA;EACA;EACA;;EAEA;EACA,IAAME,GAAG,GAAG,IAAIjB,OAAO,CAAC,CAAC,CAACkB,IAAI,CAACL,MAAM,CAAC,CAACM,GAAG,CAACJ,IAAI,CAACK,KAAK,CAAC,CAAC,CAACC,QAAQ,CAAC,IAAIrB,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;EAC3F,IAAMsB,GAAG,GAAG,IAAItB,OAAO,CAAC,CAAC,CAACkB,IAAI,CAACL,MAAM,CAAC,CAACU,GAAG,CAACR,IAAI,CAACK,KAAK,CAAC,CAAC,CAACC,QAAQ,CAAC,IAAIrB,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;;EAEzF;EACAW,GAAG,CAACM,GAAG,CAACC,IAAI,CAACD,GAAG,CAAC;EACjBN,GAAG,CAACW,GAAG,CAACJ,IAAI,CAACI,GAAG,CAAC;;EAEjB;EACA;;EAEA,OAAOX,GAAG;AACZ,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMa,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIb,GAAS,EAAEc,QAAiB,EAAK;EAClE,OAAOd,GAAG,CAACe,aAAa,CAACD,QAAQ,CAAC;AACpC,CAAC"}
@@ -1,15 +0,0 @@
1
- export var SceneStyle = /*#__PURE__*/function (SceneStyle) {
2
- SceneStyle[SceneStyle["real"] = 0] = "real";
3
- SceneStyle[SceneStyle["tech"] = 1] = "tech";
4
- SceneStyle[SceneStyle["white"] = 2] = "white";
5
- return SceneStyle;
6
- }({});
7
- export var SceneTag = /*#__PURE__*/function (SceneTag) {
8
- SceneTag["overview"] = "Overview";
9
- SceneTag["people-management"] = "Person";
10
- SceneTag["smart-inspection"] = "Inspection";
11
- SceneTag["security-operation"] = "Maintenance";
12
- SceneTag["standBy"] = "StandBy";
13
- return SceneTag;
14
- }({});
15
- //# sourceMappingURL=constant.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["SceneStyle","SceneTag"],"sources":["../../../src/factory/utils/constant.ts"],"sourcesContent":["export enum SceneStyle {\n 'real',\n 'tech',\n 'white',\n}\n\nexport enum SceneTag {\n 'overview' = 'Overview',\n 'people-management' = 'Person',\n 'smart-inspection' = 'Inspection',\n 'security-operation' = 'Maintenance',\n 'standBy' = 'StandBy',\n}"],"mappings":"AAAA,WAAYA,UAAU,0BAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAMtB,WAAYC,QAAQ,0BAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAAA,OAARA,QAAQ;AAAA"}
@@ -1,56 +0,0 @@
1
- import { Color, MeshStandardMaterial, ShaderMaterial, Vector3 } from '@anov/3d-core';
2
- export var finirMaterialV2 = new ShaderMaterial({
3
- uniforms: {
4
- // 在这里定义uniform变量,用于控制透明度、边缘和反光效果
5
- edgeColor: {
6
- value: new Vector3(1.0, 0.0, 0.0)
7
- },
8
- // 边缘颜色
9
- edgeThickness: {
10
- value: 0.05
11
- },
12
- // 边缘厚度0.05
13
- reflectionStrength: {
14
- value: 100
15
- } // 反光强度0.9
16
- },
17
- vertexShader: "\n varying vec3 vNormal;\n void main() {\n vNormal = normal;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n }\n ",
18
- fragmentShader: "\n varying vec3 vNormal;\n uniform vec3 edgeColor;\n uniform float edgeThickness;\n uniform float reflectionStrength;\n\n void main() {\n // \u8BA1\u7B97\u900F\u660E\u5EA6\n float alpha = 0.9; // \u900F\u660E\u5EA6\u7684\u57FA\u7840\u503C\n\n // \u8BA1\u7B97\u8FB9\u7F18\u6548\u679C\n float edge = fwidth(length(vNormal));\n alpha *= smoothstep(0.0, edgeThickness, edge);\n\n // \u8BA1\u7B97\u53CD\u5149\u6548\u679C\n vec3 reflection = reflect(normalize(-vNormal), vec3(0.455, 0.749, 0.890));\n float reflectionIntensity = max(dot(reflection, normalize(-vNormal)), 0.0);\n vec3 reflectionColor = reflectionStrength * reflectionIntensity * edgeColor;\n\n // \u6700\u7EC8\u989C\u8272\u8BBE\u7F6E\u4E3A\"#74bfe3\"\n vec3 finalColor = vec3(0.8, 0.25, 0.145); // \"#74bfe3\"\u7684RGB\u503C\n finalColor += reflectionColor; // \u6DFB\u52A0\u53CD\u5149\u6548\u679C\n\n // \u8BBE\u7F6E\u900F\u660E\u5EA6\n gl_FragColor = vec4(finalColor, alpha);\n }\n ",
19
- transparent: true,
20
- depthWrite: false
21
- });
22
- export var finirMaterialV1 = new MeshStandardMaterial({
23
- /// /这个没有沟边粗细
24
- opacity: 0.0,
25
- transparent: true,
26
- depthWrite: false
27
- });
28
- finirMaterialV1.onBeforeCompile = function (shader) {
29
- shader.uniforms.rimColor = {
30
- value: new Color('#f5b68a')
31
- };
32
- shader.uniforms.rimPower = {
33
- value: 0.17
34
- };
35
- shader.fragmentShader = shader.fragmentShader.replace('void main() {', ['uniform vec3 rimColor;', ' uniform float rimPower;', 'void main() {'].join('\n'));
36
- shader.fragmentShader = shader.fragmentShader.replace('#include <dithering_fragment>', "#include <dithering_fragment>\n float dotNV = 1.0-saturate( dot( normal, geometry.viewDir ) );\n gl_FragColor.rgb *= rimColor;\n\n\n float fresnelall = pow(rimPower*dotNV,.7);\n gl_FragColor.a += fresnelall;");
37
- };
38
- export var createFinirMaterial = function createFinirMaterial(rimColor, rimPower) {
39
- var material = new MeshStandardMaterial({
40
- opacity: 0.0,
41
- transparent: true,
42
- depthWrite: false
43
- });
44
- material.onBeforeCompile = function (shader) {
45
- shader.uniforms.rimColor = {
46
- value: new Color(rimColor)
47
- };
48
- shader.uniforms.rimPower = {
49
- value: rimPower
50
- };
51
- shader.fragmentShader = shader.fragmentShader.replace('void main() {', ['uniform vec3 rimColor;', 'uniform float rimPower;', 'void main() {'].join('\n'));
52
- shader.fragmentShader = shader.fragmentShader.replace('#include <dithering_fragment>', "#include <dithering_fragment>\n float dotNV = 1.0-saturate( dot( normal, geometry.viewDir ) );\n gl_FragColor.rgb += rimPower*dotNV*rimColor;\n vec3 fresnelall =rimPower*dotNV*rimColor;\n gl_FragColor.a +=(fresnelall.r+fresnelall.g+fresnelall.b)/3.;");
53
- };
54
- return material;
55
- };
56
- //# sourceMappingURL=finirMaterial.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["Color","MeshStandardMaterial","ShaderMaterial","Vector3","finirMaterialV2","uniforms","edgeColor","value","edgeThickness","reflectionStrength","vertexShader","fragmentShader","transparent","depthWrite","finirMaterialV1","opacity","onBeforeCompile","shader","rimColor","rimPower","replace","join","createFinirMaterial","material"],"sources":["../../../src/factory/utils/finirMaterial.ts"],"sourcesContent":["import { Color, MeshStandardMaterial, ShaderMaterial, Vector3 } from '@anov/3d-core'\n\nexport const finirMaterialV2 = new ShaderMaterial({\n uniforms: {\n // 在这里定义uniform变量,用于控制透明度、边缘和反光效果\n edgeColor: { value: new Vector3(1.0, 0.0, 0.0) }, // 边缘颜色\n edgeThickness: { value: 0.05 }, // 边缘厚度0.05\n reflectionStrength: { value: 100 }, // 反光强度0.9\n },\n vertexShader: `\n varying vec3 vNormal;\n void main() {\n vNormal = normal;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n }\n `,\n fragmentShader: `\n varying vec3 vNormal;\n uniform vec3 edgeColor;\n uniform float edgeThickness;\n uniform float reflectionStrength;\n\n void main() {\n // 计算透明度\n float alpha = 0.9; // 透明度的基础值\n\n // 计算边缘效果\n float edge = fwidth(length(vNormal));\n alpha *= smoothstep(0.0, edgeThickness, edge);\n\n // 计算反光效果\n vec3 reflection = reflect(normalize(-vNormal), vec3(0.455, 0.749, 0.890));\n float reflectionIntensity = max(dot(reflection, normalize(-vNormal)), 0.0);\n vec3 reflectionColor = reflectionStrength * reflectionIntensity * edgeColor;\n\n // 最终颜色设置为\"#74bfe3\"\n vec3 finalColor = vec3(0.8, 0.25, 0.145); // \"#74bfe3\"的RGB值\n finalColor += reflectionColor; // 添加反光效果\n\n // 设置透明度\n gl_FragColor = vec4(finalColor, alpha);\n }\n `,\n transparent: true,\n depthWrite: false,\n})\n\nexport const finirMaterialV1 = new MeshStandardMaterial({ /// /这个没有沟边粗细\n opacity: 0.0,\n transparent: true,\n depthWrite: false,\n})\n\nfinirMaterialV1.onBeforeCompile = (shader) => {\n shader.uniforms.rimColor = { value: new Color('#f5b68a') }\n shader.uniforms.rimPower = { value: 0.17 }\n shader.fragmentShader = shader.fragmentShader.replace(\n 'void main() {',\n [\n 'uniform vec3 rimColor;',\n ' uniform float rimPower;',\n 'void main() {',\n ].join('\\n'),\n )\n shader.fragmentShader = shader.fragmentShader.replace(\n '#include <dithering_fragment>',\n `#include <dithering_fragment>\n float dotNV = 1.0-saturate( dot( normal, geometry.viewDir ) );\n gl_FragColor.rgb *= rimColor;\n\n\n float fresnelall = pow(rimPower*dotNV,.7);\n gl_FragColor.a += fresnelall;`,\n\n )\n}\n\nexport const createFinirMaterial = (rimColor: string, rimPower: number) => {\n const material = new MeshStandardMaterial({ opacity: 0.0, transparent: true, depthWrite: false })\n material.onBeforeCompile = (shader) => {\n shader.uniforms.rimColor = { value: new Color(rimColor) }\n shader.uniforms.rimPower = { value: rimPower }\n shader.fragmentShader = shader.fragmentShader.replace(\n 'void main() {',\n [\n 'uniform vec3 rimColor;',\n 'uniform float rimPower;',\n 'void main() {',\n ].join('\\n'),\n )\n shader.fragmentShader = shader.fragmentShader.replace(\n '#include <dithering_fragment>',\n `#include <dithering_fragment>\n float dotNV = 1.0-saturate( dot( normal, geometry.viewDir ) );\n gl_FragColor.rgb += rimPower*dotNV*rimColor;\n vec3 fresnelall =rimPower*dotNV*rimColor;\n gl_FragColor.a +=(fresnelall.r+fresnelall.g+fresnelall.b)/3.;`,\n )\n }\n return material\n}"],"mappings":"AAAA,SAASA,KAAK,EAAEC,oBAAoB,EAAEC,cAAc,EAAEC,OAAO,QAAQ,eAAe;AAEpF,OAAO,IAAMC,eAAe,GAAG,IAAIF,cAAc,CAAC;EAChDG,QAAQ,EAAE;IACR;IACAC,SAAS,EAAE;MAAEC,KAAK,EAAE,IAAIJ,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG;IAAE,CAAC;IAAE;IAClDK,aAAa,EAAE;MAAED,KAAK,EAAE;IAAK,CAAC;IAAE;IAChCE,kBAAkB,EAAE;MAAEF,KAAK,EAAE;IAAI,CAAC,CAAE;EACtC,CAAC;EACDG,YAAY,mRAMK;EACjBC,cAAc,g6CA0BG;EACjBC,WAAW,EAAE,IAAI;EACjBC,UAAU,EAAE;AACd,CAAC,CAAC;AAEF,OAAO,IAAMC,eAAe,GAAG,IAAIb,oBAAoB,CAAC;EAAE;EACxDc,OAAO,EAAE,GAAG;EACZH,WAAW,EAAE,IAAI;EACjBC,UAAU,EAAE;AACd,CAAC,CAAC;AAEFC,eAAe,CAACE,eAAe,GAAG,UAACC,MAAM,EAAK;EAC5CA,MAAM,CAACZ,QAAQ,CAACa,QAAQ,GAAG;IAAEX,KAAK,EAAE,IAAIP,KAAK,CAAC,SAAS;EAAE,CAAC;EAC1DiB,MAAM,CAACZ,QAAQ,CAACc,QAAQ,GAAG;IAAEZ,KAAK,EAAE;EAAK,CAAC;EAC1CU,MAAM,CAACN,cAAc,GAAGM,MAAM,CAACN,cAAc,CAACS,OAAO,CACnD,eAAe,EACf,CACE,wBAAwB,EACxB,0BAA0B,EAC1B,eAAe,CAChB,CAACC,IAAI,CAAC,IAAI,CACb,CAAC;EACDJ,MAAM,CAACN,cAAc,GAAGM,MAAM,CAACN,cAAc,CAACS,OAAO,CACnD,+BAA+B,+OASjC,CAAC;AACH,CAAC;AAED,OAAO,IAAME,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIJ,QAAgB,EAAEC,QAAgB,EAAK;EACzE,IAAMI,QAAQ,GAAG,IAAItB,oBAAoB,CAAC;IAAEc,OAAO,EAAE,GAAG;IAAEH,WAAW,EAAE,IAAI;IAAEC,UAAU,EAAE;EAAM,CAAC,CAAC;EACjGU,QAAQ,CAACP,eAAe,GAAG,UAACC,MAAM,EAAK;IACrCA,MAAM,CAACZ,QAAQ,CAACa,QAAQ,GAAG;MAAEX,KAAK,EAAE,IAAIP,KAAK,CAACkB,QAAQ;IAAE,CAAC;IACzDD,MAAM,CAACZ,QAAQ,CAACc,QAAQ,GAAG;MAAEZ,KAAK,EAAEY;IAAS,CAAC;IAC9CF,MAAM,CAACN,cAAc,GAAGM,MAAM,CAACN,cAAc,CAACS,OAAO,CACnD,eAAe,EACf,CACE,wBAAwB,EACxB,yBAAyB,EACzB,eAAe,CAChB,CAACC,IAAI,CAAC,IAAI,CACb,CAAC;IACDJ,MAAM,CAACN,cAAc,GAAGM,MAAM,CAACN,cAAc,CAACS,OAAO,CACnD,+BAA+B,iRAMjC,CAAC;EACH,CAAC;EACD,OAAOG,QAAQ;AACjB,CAAC"}
@@ -1,49 +0,0 @@
1
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
- 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, _toPropertyKey(descriptor.key), descriptor); } }
4
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
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
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
7
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
- import { Color, Mesh, MeshBasicMaterial, lib } from '@anov/3d-core';
9
- import { loadingManager } from "../3d";
10
- var FontLoader = lib.FontLoader,
11
- TextGeometry = lib.TextGeometry;
12
- var Font = /*#__PURE__*/function () {
13
- function Font() {
14
- _classCallCheck(this, Font);
15
- _defineProperty(this, "font", void 0);
16
- this.font = null;
17
- }
18
- _createClass(Font, [{
19
- key: "createText",
20
- value: function createText(text, options) {
21
- var _this = this;
22
- return new Promise(function (res) {
23
- var loader = new FontLoader(loadingManager);
24
- loader.load('./font.json', function (font) {
25
- var _options$size;
26
- _this.font = font;
27
- var geometry = new TextGeometry(text, {
28
- font: _this.font,
29
- size: (_options$size = options.size) !== null && _options$size !== void 0 ? _options$size : 10,
30
- height: 1
31
- });
32
- var mesh = new Mesh(geometry, new MeshBasicMaterial({
33
- depthTest: true,
34
- color: new Color('#fff')
35
- }));
36
- mesh.position.copy(options.position);
37
- res(mesh);
38
- });
39
- });
40
- }
41
- }]);
42
- return Font;
43
- }();
44
- var font = new Font();
45
- var createFontMesh = function createFontMesh(text, options) {
46
- return font.createText(text, options);
47
- };
48
- export default createFontMesh;
49
- //# sourceMappingURL=fontMesh.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["Color","Mesh","MeshBasicMaterial","lib","loadingManager","FontLoader","TextGeometry","Font","_classCallCheck","_defineProperty","font","_createClass","key","value","createText","text","options","_this","Promise","res","loader","load","_options$size","geometry","size","height","mesh","depthTest","color","position","copy","createFontMesh"],"sources":["../../../src/factory/utils/fontMesh.ts"],"sourcesContent":["import type { Vector3 } from '@anov/3d-core'\nimport { Color, Mesh, MeshBasicMaterial, lib } from '@anov/3d-core'\nimport { loadingManager } from '../3d'\n\nconst { FontLoader, TextGeometry } = lib\n\ntype FontMeshOption = {\n position: Vector3\n color?: Color\n size?: number\n rotate?: number\n}\n\nclass Font {\n font: lib.Font | null\n\n constructor() {\n this.font = null\n }\n\n createText(text: string, options: FontMeshOption) {\n return new Promise((res) => {\n const loader = new FontLoader(loadingManager)\n loader.load('./font.json', (font) => {\n this.font = font\n\n const geometry = new TextGeometry(text, {\n font: this.font,\n size: options.size ?? 10,\n height: 1,\n })\n\n const mesh = new Mesh(geometry, new MeshBasicMaterial({\n depthTest: true,\n color: new Color('#fff'),\n }))\n\n mesh.position.copy(options.position)\n res(mesh)\n })\n })\n }\n}\n\nconst font = new Font()\n\nconst createFontMesh = (text: string, options: FontMeshOption) => {\n return font.createText(text, options) as Promise<Mesh>\n}\n\nexport default createFontMesh\n"],"mappings":";;;;;;;AACA,SAASA,KAAK,EAAEC,IAAI,EAAEC,iBAAiB,EAAEC,GAAG,QAAQ,eAAe;AACnE,SAASC,cAAc;AAEvB,IAAQC,UAAU,GAAmBF,GAAG,CAAhCE,UAAU;EAAEC,YAAY,GAAKH,GAAG,CAApBG,YAAY;AAAQ,IASlCC,IAAI;EAGR,SAAAA,KAAA,EAAc;IAAAC,eAAA,OAAAD,IAAA;IAAAE,eAAA;IACZ,IAAI,CAACC,IAAI,GAAG,IAAI;EAClB;EAACC,YAAA,CAAAJ,IAAA;IAAAK,GAAA;IAAAC,KAAA,EAED,SAAAC,WAAWC,IAAY,EAAEC,OAAuB,EAAE;MAAA,IAAAC,KAAA;MAChD,OAAO,IAAIC,OAAO,CAAC,UAACC,GAAG,EAAK;QAC1B,IAAMC,MAAM,GAAG,IAAIf,UAAU,CAACD,cAAc,CAAC;QAC7CgB,MAAM,CAACC,IAAI,CAAC,aAAa,EAAE,UAACX,IAAI,EAAK;UAAA,IAAAY,aAAA;UACnCL,KAAI,CAACP,IAAI,GAAGA,IAAI;UAEhB,IAAMa,QAAQ,GAAG,IAAIjB,YAAY,CAACS,IAAI,EAAE;YACtCL,IAAI,EAAEO,KAAI,CAACP,IAAI;YACfc,IAAI,GAAAF,aAAA,GAAEN,OAAO,CAACQ,IAAI,cAAAF,aAAA,cAAAA,aAAA,GAAI,EAAE;YACxBG,MAAM,EAAE;UACV,CAAC,CAAC;UAEF,IAAMC,IAAI,GAAG,IAAIzB,IAAI,CAACsB,QAAQ,EAAE,IAAIrB,iBAAiB,CAAC;YACpDyB,SAAS,EAAE,IAAI;YACfC,KAAK,EAAE,IAAI5B,KAAK,CAAC,MAAM;UACzB,CAAC,CAAC,CAAC;UAEH0B,IAAI,CAACG,QAAQ,CAACC,IAAI,CAACd,OAAO,CAACa,QAAQ,CAAC;UACpCV,GAAG,CAACO,IAAI,CAAC;QACX,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ;EAAC;EAAA,OAAAnB,IAAA;AAAA;AAGH,IAAMG,IAAI,GAAG,IAAIH,IAAI,CAAC,CAAC;AAEvB,IAAMwB,cAAc,GAAG,SAAjBA,cAAcA,CAAIhB,IAAY,EAAEC,OAAuB,EAAK;EAChE,OAAON,IAAI,CAACI,UAAU,CAACC,IAAI,EAAEC,OAAO,CAAC;AACvC,CAAC;AAED,eAAee,cAAc"}
@@ -1,65 +0,0 @@
1
- import { Color, RepeatWrapping, ShaderChunk, ShaderMaterial, TextureLoader, Vector4 } from '@anov/3d-core';
2
- var resourcePath = './';
3
- var resourcePath2 = 'http://172.16.223.163:9000/anov-prod/anov-3d/factory/example/';
4
- var usePath = false ? resourcePath : resourcePath2;
5
- var _Texture = new TextureLoader().load("".concat(usePath, "demo03.jpg"));
6
- var _Texture2 = new TextureLoader().load("".concat(usePath, "demo04.jpg"));
7
- var _Texture3 = new TextureLoader().load("".concat(usePath, "test04.jpg"));
8
- _Texture.wrapS = RepeatWrapping;
9
- _Texture.wrapT = RepeatWrapping;
10
- _Texture2.wrapS = RepeatWrapping;
11
- _Texture2.wrapT = RepeatWrapping;
12
- _Texture3.wrapS = RepeatWrapping;
13
- _Texture3.wrapT = RepeatWrapping;
14
- _Texture.repeat.set(5000, 5000);
15
- _Texture2.repeat.set(10, 10);
16
- _Texture3.repeat.set(5000, 5000);
17
- export var uniforms = {
18
- _Texture: {
19
- value: _Texture
20
- },
21
- _Texture_ST: {
22
- value: new Vector4()
23
- },
24
- _Color: {
25
- value: new Vector4(new Color('#096ddb').r, new Color('#096ddb').g, new Color('#096ddb').b, 0.5)
26
- },
27
- _ColorS: {
28
- value: 1
29
- },
30
- _TextureMask: {
31
- value: _Texture2
32
- },
33
- _TexturePlane: {
34
- value: _Texture3
35
- },
36
- _MaskUV: {
37
- value: 1
38
- },
39
- _ColorMask: {
40
- value: new Vector4(new Color('#fff').r, new Color('#fff').g, new Color('#fff').b, 1)
41
- },
42
- _ColorMaskS: {
43
- value: 1
44
- },
45
- _Speed: {
46
- value: new Vector4(0.0, 0.2, 0, 0)
47
- },
48
- _OP: {
49
- value: 1.0
50
- },
51
- _Time: {
52
- value: 1.0
53
- }
54
- };
55
- 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");
56
-
57
- // Fragment shader
58
- 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");
59
- export var material = new ShaderMaterial({
60
- uniforms: uniforms,
61
- vertexShader: vertexShader,
62
- fragmentShader: fragmentShader,
63
- transparent: true
64
- });
65
- //# sourceMappingURL=ground.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["Color","RepeatWrapping","ShaderChunk","ShaderMaterial","TextureLoader","Vector4","resourcePath","resourcePath2","usePath","_Texture","load","concat","_Texture2","_Texture3","wrapS","wrapT","repeat","set","uniforms","value","_Texture_ST","_Color","r","g","b","_ColorS","_TextureMask","_TexturePlane","_MaskUV","_ColorMask","_ColorMaskS","_Speed","_OP","_Time","vertexShader","logdepthbuf_pars_vertex","logdepthbuf_vertex","fragmentShader","logdepthbuf_pars_fragment","logdepthbuf_fragment","material","transparent"],"sources":["../../../src/factory/utils/ground.ts"],"sourcesContent":["import { Color, RepeatWrapping, ShaderChunk, ShaderMaterial, TextureLoader, Vector4 } from '@anov/3d-core'\n\nconst resourcePath = './'\nconst resourcePath2 = 'http://172.16.223.163:9000/anov-prod/anov-3d/factory/example/'\nconst 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\nexport const 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 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 material = new ShaderMaterial({\n uniforms,\n vertexShader,\n fragmentShader,\n transparent: true,\n})"],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import { Vector3 } from '@anov/3d-core';
2
- export var debounce = function debounce(fn) {
3
- var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 20;
4
- var timer;
5
- return function () {
6
- var _this = this;
7
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
8
- args[_key] = arguments[_key];
9
- }
10
- clearTimeout(timer);
11
- timer = setTimeout(function () {
12
- fn.apply(_this, args);
13
- }, delay);
14
- };
15
- };
16
- export var lookAtOnYAxis = function lookAtOnYAxis(mesh, targetPosition) {
17
- var direction = new Vector3().subVectors(targetPosition, mesh.position);
18
- direction.y = 0;
19
- direction.normalize();
20
- var rotationY = Math.atan2(-direction.z, direction.x);
21
- rotationY -= Math.PI / 2;
22
- mesh.rotation.y = rotationY + Math.PI;
23
- };
24
- //# sourceMappingURL=index.js.map