@anov/3d 0.0.13 → 0.0.15

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 (49) hide show
  1. package/dist/factory/3d.d.ts +23 -14
  2. package/dist/factory/3d.js +143 -55
  3. package/dist/factory/3d.js.map +1 -1
  4. package/dist/factory/regionData.d.ts +8 -0
  5. package/dist/factory/regionData.js +59 -6
  6. package/dist/factory/regionData.js.map +1 -1
  7. package/dist/factory/unit/CameraPoi.d.ts +52 -4
  8. package/dist/factory/unit/CameraPoi.js +701 -55
  9. package/dist/factory/unit/CameraPoi.js.map +1 -1
  10. package/dist/factory/unit/glsl/heat/frag.d.ts +2 -0
  11. package/dist/factory/unit/glsl/heat/frag.glsl +37 -0
  12. package/dist/factory/unit/glsl/heat/frag.js +3 -0
  13. package/dist/factory/unit/glsl/heat/frag.js.map +1 -0
  14. package/dist/factory/unit/glsl/heat/ver.d.ts +2 -0
  15. package/dist/factory/unit/glsl/heat/ver.glsl +15 -0
  16. package/dist/factory/unit/glsl/heat/ver.js +3 -0
  17. package/dist/factory/unit/glsl/heat/ver.js.map +1 -0
  18. package/dist/factory/unit/handle.d.ts +4 -0
  19. package/dist/factory/unit/handle.js +20 -14
  20. package/dist/factory/unit/handle.js.map +1 -1
  21. package/dist/factory/unit/index.js +23 -13
  22. package/dist/factory/unit/index.js.map +1 -1
  23. package/dist/factory/unit/inspection/InspectionObject.d.ts +26 -0
  24. package/dist/factory/unit/{inspection.js → inspection/InspectionObject.js} +275 -133
  25. package/dist/factory/unit/inspection/InspectionObject.js.map +1 -0
  26. package/dist/factory/unit/{inspection.d.ts → inspection/index.d.ts} +8 -9
  27. package/dist/factory/unit/inspection/index.js +160 -0
  28. package/dist/factory/unit/inspection/index.js.map +1 -0
  29. package/dist/factory/unit/inspection/lineData.d.ts +21 -0
  30. package/dist/factory/unit/inspection/lineData.js +32 -0
  31. package/dist/factory/unit/inspection/lineData.js.map +1 -0
  32. package/dist/factory/unit/poi.d.ts +1 -0
  33. package/dist/factory/unit/poi.js +28 -14
  34. package/dist/factory/unit/poi.js.map +1 -1
  35. package/dist/factory/utils/constant.d.ts +0 -1
  36. package/dist/factory/utils/constant.js +0 -1
  37. package/dist/factory/utils/constant.js.map +1 -1
  38. package/dist/factory/utils/finirMaterial.d.ts +1 -0
  39. package/dist/factory/utils/finirMaterial.js +19 -1
  40. package/dist/factory/utils/finirMaterial.js.map +1 -1
  41. package/dist/index.js +1 -1
  42. package/dist/index.js.map +1 -1
  43. package/dist/module/environment/time/index.d.ts +1 -1
  44. package/dist/utils/index.d.ts +1 -1
  45. package/package.json +4 -3
  46. package/dist/factory/unit/inspection.js.map +0 -1
  47. package/dist/factory/unit/poi copy.d.ts +0 -15
  48. package/dist/factory/unit/poi copy.js +0 -144
  49. package/dist/factory/unit/poi copy.js.map +0 -1
@@ -0,0 +1,160 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
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(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
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 { Group, Mesh, MeshBasicMaterial, MirroredRepeatWrapping, PerspectiveCamera, RepeatWrapping, TextureLoader, TubeGeometry, use } from '@anov/3d-core';
9
+ import { RoundLineGeometry, initPostEffects } from '@anov/3d-ability';
10
+ import { usePath } from "../../3d";
11
+ import { flyLinePoints, groundLinePoints } from "./lineData";
12
+ import InspectionObject from "./InspectionObject";
13
+ var Inspection = /*#__PURE__*/function () {
14
+ function Inspection(gobal) {
15
+ var _this = this;
16
+ _classCallCheck(this, Inspection);
17
+ _defineProperty(this, "gobal", void 0);
18
+ _defineProperty(this, "inspectionObject", void 0);
19
+ _defineProperty(this, "curve", void 0);
20
+ _defineProperty(this, "line", void 0);
21
+ _defineProperty(this, "viewElement", void 0);
22
+ _defineProperty(this, "minCamera", void 0);
23
+ _defineProperty(this, "InspectionPathObject", void 0);
24
+ this.gobal = gobal;
25
+ this.generateInspectionPath();
26
+ this.makeGroundRoad();
27
+ this.setInspectionCamera();
28
+ this.inspectionObject = new InspectionObject(this);
29
+ this.startInspection(this.curve);
30
+ this.hide();
31
+ var viewElement = document.createElement('div');
32
+ viewElement.style.position = 'absolute';
33
+ viewElement.style.width = '200px';
34
+ viewElement.style.height = '200px';
35
+ viewElement.style.top = '100px';
36
+ viewElement.style.cursor = 'pointer';
37
+ viewElement.addEventListener('click', function () {
38
+ _this.gobal.toggleView();
39
+ });
40
+ this.viewElement = viewElement;
41
+ }
42
+
43
+ /**
44
+ * generate inspection path
45
+ * @param linePosition
46
+ */
47
+ _createClass(Inspection, [{
48
+ key: "generateInspectionPath",
49
+ value: function generateInspectionPath() {
50
+ var flyLine = new RoundLineGeometry(flyLinePoints, {
51
+ radius: 20,
52
+ close: true
53
+ });
54
+ this.curve = flyLine.curve;
55
+ }
56
+
57
+ /**
58
+ * make ground road
59
+ */
60
+ }, {
61
+ key: "makeGroundRoad",
62
+ value: function makeGroundRoad() {
63
+ var groundLine = new RoundLineGeometry(groundLinePoints, {
64
+ radius: 20,
65
+ close: true
66
+ });
67
+ var texture = new TextureLoader().load("".concat(usePath, "roll.png"));
68
+ texture.rotation = Math.PI;
69
+ texture.wrapS = RepeatWrapping;
70
+ texture.wrapT = MirroredRepeatWrapping;
71
+ texture.repeat.set(1, 2);
72
+ var tube = new TubeGeometry(groundLine.curve, 10000, 6, 2, false);
73
+ var mesh = new Mesh(tube, new MeshBasicMaterial({
74
+ side: 2,
75
+ map: texture,
76
+ transparent: true
77
+ }));
78
+ var mesh2 = new Mesh(tube, new MeshBasicMaterial({
79
+ side: 2
80
+ }));
81
+ var groundGroup = new Group();
82
+ groundGroup.add(mesh2);
83
+ groundGroup.add(mesh);
84
+ groundGroup.position.y = 3;
85
+ this.line = groundGroup;
86
+ this.gobal.scene.add(groundGroup);
87
+ use.useframe(function () {
88
+ texture.offset.x -= -0.009;
89
+ });
90
+ }
91
+ }, {
92
+ key: "setInspectionCamera",
93
+ value: function setInspectionCamera() {
94
+ var minCamera;
95
+ if (this.minCamera) {
96
+ minCamera = this.minCamera;
97
+ } else {
98
+ minCamera = new PerspectiveCamera(90, window.innerWidth / window.innerHeight, 0.1, 1000);
99
+ }
100
+ this.gobal.scene.cutoutCamera = minCamera;
101
+ this.gobal.scene.cutoutArea = {
102
+ x: 0,
103
+ y: 0,
104
+ width: 200,
105
+ height: 200
106
+ };
107
+ this.gobal.scene.add(minCamera);
108
+ this.minCamera = minCamera;
109
+ this.minCamera.layers.set(0);
110
+ initPostEffects(this.gobal.scene.scene, this.gobal.scene.renderer, this.gobal.scene.cutoutCamera, {
111
+ type: 'sub'
112
+ });
113
+ }
114
+ }, {
115
+ key: "getPathLength",
116
+ get: function get() {
117
+ return this.curve.getLength();
118
+ }
119
+ }, {
120
+ key: "startInspection",
121
+ value: function startInspection(line) {
122
+ this.setInspectionCamera();
123
+ this.inspectionObject.startMove(line);
124
+ }
125
+ }, {
126
+ key: "goToInspectionTarget",
127
+ value: function goToInspectionTarget(targetProgress) {
128
+ var targetPosition = this.curve.getPointAt(targetProgress);
129
+ this.inspectionObject.gotoTarget(targetPosition, targetProgress);
130
+ }
131
+ }, {
132
+ key: "show",
133
+ value: function show() {
134
+ document.body.appendChild(this.viewElement);
135
+ this.gobal.scene.cutout = true;
136
+ this.line.visible = true;
137
+ this.inspectionObject.model && (this.inspectionObject.model.visible = true);
138
+ }
139
+ }, {
140
+ key: "hide",
141
+ value: function hide() {
142
+ var _this2 = this;
143
+ if (this.viewElement && document.body.contains(this.viewElement)) document.body.removeChild(this.viewElement);
144
+ this.gobal.scene.cutout = false;
145
+ this.gobal.scene.cutMain(this.gobal.scene.renderer);
146
+ this.line.visible = false;
147
+
148
+ // this.addeHighSelected([])
149
+ var check = use.useframe(function () {
150
+ if (_this2.inspectionObject.model) {
151
+ _this2.inspectionObject.model.visible = false;
152
+ check();
153
+ }
154
+ });
155
+ }
156
+ }]);
157
+ return Inspection;
158
+ }();
159
+ export default Inspection;
160
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Group","Mesh","MeshBasicMaterial","MirroredRepeatWrapping","PerspectiveCamera","RepeatWrapping","TextureLoader","TubeGeometry","use","RoundLineGeometry","initPostEffects","usePath","flyLinePoints","groundLinePoints","InspectionObject","Inspection","gobal","generateInspectionPath","makeGroundRoad","setInspectionCamera","inspectionObject","startInspection","curve","hide","viewElement","document","createElement","style","position","width","height","top","cursor","addEventListener","toggleView","flyLine","radius","close","groundLine","texture","load","rotation","Math","PI","wrapS","wrapT","repeat","set","tube","mesh","side","map","transparent","mesh2","groundGroup","add","y","line","scene","useframe","offset","x","minCamera","window","innerWidth","innerHeight","cutoutCamera","cutoutArea","layers","renderer","type","getLength","startMove","targetProgress","targetPosition","getPointAt","gotoTarget","body","appendChild","cutout","visible","model","contains","removeChild","cutMain","check"],"sources":["../../../../src/factory/unit/inspection/index.ts"],"sourcesContent":["import type { Object3D, Vector3 } from '@anov/3d-core'\nimport { Color, Group, Mesh, MeshBasicMaterial, MirroredRepeatWrapping, PerspectiveCamera, RepeatWrapping, TextureLoader, TubeGeometry, use } from '@anov/3d-core'\nimport { RoundLineGeometry, addColorifyPass, createHighSelectedTool, initPostEffects } from '@anov/3d-ability'\nimport type Factory3D from '../../3d'\nimport { usePath } from '../../3d'\nimport { flyLinePoints, groundLinePoints } from './lineData'\nimport InspectionObject from './InspectionObject'\n\nclass Inspection {\n private gobal: Factory3D\n private inspectionObject\n private curve\n private line: Group\n\n private viewElement: HTMLDivElement\n\n minCamera: PerspectiveCamera\n InspectionPathObject: Object3D\n\n constructor(gobal: Factory3D) {\n this.gobal = gobal\n this.generateInspectionPath()\n this.makeGroundRoad()\n this.setInspectionCamera()\n\n this.inspectionObject = new InspectionObject(this)\n\n this.startInspection(this.curve)\n this.hide()\n\n const viewElement = document.createElement('div')\n\n viewElement.style.position = 'absolute'\n viewElement.style.width = '200px'\n viewElement.style.height = '200px'\n viewElement.style.top = '100px'\n viewElement.style.cursor = 'pointer'\n\n viewElement.addEventListener('click', () => {\n this.gobal.toggleView()\n })\n\n this.viewElement = viewElement\n }\n\n /**\n * generate inspection path\n * @param linePosition\n */\n private generateInspectionPath() {\n const flyLine = new RoundLineGeometry(flyLinePoints, {\n radius: 20,\n close: true,\n })\n\n this.curve = flyLine.curve\n }\n\n /**\n * make ground road\n */\n private makeGroundRoad() {\n const groundLine = new RoundLineGeometry(groundLinePoints, {\n radius: 20,\n close: true,\n })\n\n const texture = new TextureLoader().load(`${usePath}roll.png`)\n texture.rotation = Math.PI\n texture.wrapS = RepeatWrapping\n texture.wrapT = MirroredRepeatWrapping\n texture.repeat.set(1, 2)\n\n const tube = new TubeGeometry(groundLine.curve, 10000, 6, 2, false)\n const mesh = new Mesh(tube, new MeshBasicMaterial({ side: 2, map: texture, transparent: true }))\n const mesh2 = new Mesh(tube, new MeshBasicMaterial({ side: 2 }))\n\n const groundGroup = new Group()\n\n groundGroup.add(mesh2)\n groundGroup.add(mesh)\n groundGroup.position.y = 3\n\n this.line = groundGroup\n this.gobal.scene.add(groundGroup)\n\n use.useframe(() => {\n texture.offset.x -= -0.009\n })\n }\n\n private setInspectionCamera() {\n let minCamera\n\n if (this.minCamera) {\n minCamera = this.minCamera\n }\n else {\n minCamera = new PerspectiveCamera(90,\n window.innerWidth / window.innerHeight\n , 0.1, 1000)\n }\n\n this.gobal.scene.cutoutCamera = minCamera\n this.gobal.scene.cutoutArea = { x: 0, y: 0, width: 200, height: 200 }\n this.gobal.scene.add(minCamera)\n\n this.minCamera = minCamera\n\n this.minCamera.layers.set(0)\n\n initPostEffects(this.gobal.scene.scene, this.gobal.scene.renderer, this.gobal.scene.cutoutCamera, {\n type: 'sub',\n })\n }\n\n get getPathLength() {\n return this.curve.getLength()\n }\n\n startInspection(line) {\n this.setInspectionCamera()\n this.inspectionObject.startMove(line)\n }\n\n goToInspectionTarget(targetProgress: number) {\n const targetPosition = this.curve.getPointAt(targetProgress)\n this.inspectionObject.gotoTarget(targetPosition, targetProgress)\n }\n\n show() {\n document.body.appendChild(this.viewElement)\n this.gobal.scene.cutout = true\n this.line.visible = true\n this.inspectionObject.model && (this.inspectionObject.model.visible = true)\n }\n\n hide() {\n if (this.viewElement && document.body.contains(this.viewElement))\n document.body.removeChild(this.viewElement)\n\n this.gobal.scene.cutout = false\n this.gobal.scene.cutMain(this.gobal.scene.renderer)\n this.line.visible = false\n\n // this.addeHighSelected([])\n const check = use.useframe(() => {\n if (this.inspectionObject.model) {\n this.inspectionObject.model.visible = false\n check()\n }\n })\n }\n}\n\nexport default Inspection"],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { Vector3 } from '@anov/3d-core';
2
+ export declare const flyLinePoints: Vector3[];
3
+ export declare const groundLinePoints: Vector3[];
4
+ export declare const targetProgresspoints: {
5
+ 0.04: {
6
+ lookAt: string;
7
+ };
8
+ 0.15: {
9
+ lookAt: string;
10
+ };
11
+ 0.24: {
12
+ lookAt: string;
13
+ };
14
+ 0.4: {
15
+ lookAt: string;
16
+ };
17
+ 0.68: {
18
+ lookAt: string;
19
+ };
20
+ };
21
+ export declare const isCheck: (currentProgress: any) => boolean;
@@ -0,0 +1,32 @@
1
+ import { Vector3 } from '@anov/3d-core';
2
+ export var flyLinePoints = [[-491.52, -1.22, -52.05], [-143.69, -3.00, -52.05], [-143.69, -0.00, 121.29], [-319.85, 0.00, 121.29], [-319.85, -0.00, 224.78], [125.73, -0.84, 224.78], [125.73, 0.00, 39.61], [323.44, -0.00, 39.61], [323.44, 0.00, -48.50], [27.52, 3.00, -48.50], [22.62, -0.00, -220.87], [-491.52, -0.53, -220.87]].map(function (v) {
3
+ return new Vector3(v[0], 15, v[2]);
4
+ });
5
+ export var groundLinePoints = [[-491.52, -1.22, -52.05], [-143.69, -3.00, -52.05], [-143.69, -0.00, 121.29], [-319.85, 0.00, 121.29], [-319.85, -0.00, 224.78], [125.73, -0.84, 224.78], [125.73, 0.00, 39.61], [323.44, -0.00, 39.61], [323.44, 0.00, -48.50], [27.52, 3.00, -48.50], [22.62, -0.00, -220.87], [-491.52, -0.53, -220.87]].map(function (v) {
6
+ return new Vector3(v[0], v[1], v[2]);
7
+ });
8
+ export var targetProgresspoints = {
9
+ 0.04: {
10
+ lookAt: 'GY_ccg_chucunguan_02'
11
+ },
12
+ 0.15: {
13
+ lookAt: 'GY_jx_daxingshebei_7'
14
+ },
15
+ 0.24: {
16
+ lookAt: 'GY_GD_guandaofamen_5'
17
+ },
18
+ 0.40: {
19
+ lookAt: 'GY_jx_daxingshebei_3'
20
+ },
21
+ 0.68: {
22
+ lookAt: 'GY_jx_daxingshebei_8'
23
+ }
24
+ };
25
+ export var isCheck = function isCheck(currentProgress) {
26
+ var progress = Object.keys(targetProgresspoints);
27
+ return progress.some(function (p) {
28
+ var num = parseFloat(p);
29
+ return currentProgress >= num && currentProgress < num + 0.001;
30
+ });
31
+ };
32
+ //# sourceMappingURL=lineData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Vector3","flyLinePoints","map","v","groundLinePoints","targetProgresspoints","lookAt","isCheck","currentProgress","progress","Object","keys","some","p","num","parseFloat"],"sources":["../../../../src/factory/unit/inspection/lineData.ts"],"sourcesContent":["import { Vector3 } from '@anov/3d-core'\n\nexport const flyLinePoints = [\n [-491.52, -1.22, -52.05],\n [-143.69, -3.00, -52.05],\n [-143.69, -0.00, 121.29],\n [-319.85, 0.00, 121.29],\n [-319.85, -0.00, 224.78],\n [125.73, -0.84, 224.78],\n [125.73, 0.00, 39.61],\n [323.44, -0.00, 39.61],\n [323.44, 0.00, -48.50],\n [27.52, 3.00, -48.50],\n [22.62, -0.00, -220.87],\n [-491.52, -0.53, -220.87],\n].map(v => new Vector3(v[0], 15, v[2]))\n\nexport const groundLinePoints = [\n [-491.52, -1.22, -52.05],\n [-143.69, -3.00, -52.05],\n [-143.69, -0.00, 121.29],\n [-319.85, 0.00, 121.29],\n [-319.85, -0.00, 224.78],\n [125.73, -0.84, 224.78],\n [125.73, 0.00, 39.61],\n [323.44, -0.00, 39.61],\n [323.44, 0.00, -48.50],\n [27.52, 3.00, -48.50],\n [22.62, -0.00, -220.87],\n [-491.52, -0.53, -220.87],\n].map(v => new Vector3(v[0], v[1], v[2]))\n\nexport const targetProgresspoints = {\n 0.04: {\n lookAt: 'GY_ccg_chucunguan_02',\n },\n 0.15: {\n lookAt: 'GY_jx_daxingshebei_7',\n },\n 0.24: {\n lookAt: 'GY_GD_guandaofamen_5',\n },\n 0.40: {\n lookAt: 'GY_jx_daxingshebei_3',\n },\n 0.68: {\n lookAt: 'GY_jx_daxingshebei_8',\n },\n}\n\nexport const isCheck = (currentProgress) => {\n const progress = Object.keys(targetProgresspoints)\n\n return progress.some((p) => {\n const num = parseFloat(p)\n return currentProgress >= num && currentProgress < num + 0.001\n })\n}"],"mappings":"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"}
@@ -9,6 +9,7 @@ declare class PoiManage {
9
9
  private interactionManager;
10
10
  constructor(gobal: any);
11
11
  generatePoi(): Promise<void>;
12
+ getDom(data: any): HTMLDivElement;
12
13
  remove(): void;
13
14
  reset(): void;
14
15
  private addDialogPanel;
@@ -11,7 +11,6 @@ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input ==
11
11
  import { Vector3, utils } from '@anov/3d-core';
12
12
  import { Css2DPoi, EAnimationType, SpritePoi } from '@anov/3d-ability';
13
13
  import { regionMap } from "../regionData";
14
- var createDomTexture = utils.createDomTexture;
15
14
  var PoiManage = /*#__PURE__*/function () {
16
15
  function PoiManage(gobal) {
17
16
  _classCallCheck(this, PoiManage);
@@ -37,22 +36,13 @@ var PoiManage = /*#__PURE__*/function () {
37
36
  case 0:
38
37
  Object.keys(regionMap).forEach( /*#__PURE__*/function () {
39
38
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(key) {
40
- var region, isBig, option, sprite, changeWallState, unClick;
39
+ var region, option, sprite, changeWallState, unClick;
41
40
  return _regeneratorRuntime().wrap(function _callee$(_context) {
42
41
  while (1) switch (_context.prev = _context.next) {
43
42
  case 0:
44
43
  region = regionMap[key];
45
- isBig = region.id === '4' || region.id === '5';
46
44
  option = {
47
- scale: 80,
48
- width: isBig ? 262 : 203,
49
- height: 262,
50
- style: {
51
- alignItems: 'flex-start',
52
- paddingTop: '12px',
53
- fontSize: '18px',
54
- backgroundImage: isBig ? 'url(./poi_big.png)' : 'url(./poi.png)'
55
- },
45
+ scale: [80, 80, 1],
56
46
  animation: [{
57
47
  type: EAnimationType.grow,
58
48
  duration: 1
@@ -61,7 +51,7 @@ var PoiManage = /*#__PURE__*/function () {
61
51
  duration: 0.2
62
52
  }]
63
53
  };
64
- sprite = new SpritePoi(region.title, option);
54
+ sprite = new SpritePoi(_this.getDom(region), option);
65
55
  sprite.position.copy(new Vector3().fromArray(region.poi.position));
66
56
  _this.scene.add(sprite);
67
57
  _this.poiMesh.set(region.poi.id, sprite);
@@ -94,7 +84,7 @@ var PoiManage = /*#__PURE__*/function () {
94
84
  _this.addDialogPanel(region, event.point);
95
85
  });
96
86
  _this.poiEventListener.add(unClick);
97
- case 13:
87
+ case 12:
98
88
  case "end":
99
89
  return _context.stop();
100
90
  }
@@ -115,6 +105,30 @@ var PoiManage = /*#__PURE__*/function () {
115
105
  }
116
106
  return generatePoi;
117
107
  }()
108
+ }, {
109
+ key: "getDom",
110
+ value: function getDom(data) {
111
+ var dom = document.createElement('div');
112
+ Object.assign(dom.style, {
113
+ fontSize: '18px',
114
+ backgroundImage: 'url(./poi2.png)',
115
+ backgroundSize: '100% 100%',
116
+ backgroundRepeat: 'no-repeat',
117
+ display: 'flex',
118
+ justifyContent: 'center',
119
+ alignItems: 'flex-start',
120
+ textAlign: 'center',
121
+ color: '#fff',
122
+ pointerEvents: 'auto',
123
+ cursor: 'pointer',
124
+ height: '262px',
125
+ width: "".concat(data.title.length * 36, "px"),
126
+ padding: '12px 0 0 25px',
127
+ fontWeight: 'bold'
128
+ });
129
+ dom.innerText = data.title;
130
+ return dom;
131
+ }
118
132
  }, {
119
133
  key: "remove",
120
134
  value: function remove() {
@@ -1 +1 @@
1
- {"version":3,"names":["Vector3","utils","Css2DPoi","EAnimationType","SpritePoi","regionMap","createDomTexture","PoiManage","gobal","Map","Set","scene","wallManage","wall","interactionManager","storeManagement","get","Object","keys","forEach","key","region","isBig","id","option","scale","width","height","style","alignItems","paddingTop","fontSize","backgroundImage","animation","type","grow","duration","fadeIn","sprite","title","position","copy","fromArray","poi","add","poiMesh","set","changeWallState","show","dialogPoi","visible","wallMesh","addEventListener","unClick","event","reset","addDialogPanel","point","poiEventListener","remove","removeFromParent","f","clear","data","content","print","clone"],"sources":["../../../src/factory/unit/poi.ts"],"sourcesContent":["import type { InteractionManager, Object3D, Scene } from '@anov/3d-core'\nimport { Sprite, SpriteMaterial, Vector3, utils } from '@anov/3d-core'\nimport { Css2DPoi, EAnimationType, SpritePoi } from '@anov/3d-ability'\nimport type Factory3D from '../3d'\nimport { regionMap } from '../regionData'\nimport type WallManage from './wall'\n\nconst { createDomTexture } = utils\n\nclass PoiManage {\n private gobal: Factory3D\n private scene: Scene\n private dialogPoi!: Object3D\n readonly poiMesh: Map<string, Object3D> = new Map()\n readonly poiEventListener: Set<Function> = new Set()\n private wallManage: WallManage\n private interactionManager\n\n constructor(gobal) {\n this.gobal = gobal\n this.scene = gobal.scene.scene\n this.wallManage = gobal.wall\n this.interactionManager = utils.storeManagement.get<InteractionManager>('interactionManager')\n }\n\n async generatePoi() {\n Object.keys(regionMap).forEach(async (key: string) => {\n const region = regionMap[key]\n const isBig = (region.id === '4' || region.id === '5')\n const option = {\n scale: 80,\n width: isBig ? 262 : 203,\n height: 262,\n style: {\n alignItems: 'flex-start',\n paddingTop: '12px',\n fontSize: '18px',\n backgroundImage: isBig ? 'url(./poi_big.png)' : 'url(./poi.png)',\n },\n animation: [{\n type: EAnimationType.grow,\n duration: 1,\n }, {\n type: EAnimationType.fadeIn,\n duration: 0.2,\n }],\n }\n\n const sprite = new SpritePoi(region.title, option)\n sprite.position.copy(new Vector3().fromArray(region.poi.position))\n\n this.scene.add(sprite)\n this.poiMesh.set(region.poi.id, sprite)\n\n // 绑定事件\n this.interactionManager.add(sprite)\n const changeWallState = (show) => {\n if (this.dialogPoi?.visible)\n return\n // 光墙\n const wall = this.wallManage.wallMesh.get(region.id)\n wall.visible = show\n }\n\n sprite.addEventListener('mouseover', () => {\n if (!sprite.visible)\n return\n changeWallState(true)\n })\n sprite.addEventListener('mouseout', () => {\n changeWallState(false)\n })\n const unClick = sprite.addEventListener('click', (event) => {\n if (!sprite.visible)\n return\n this.reset()\n\n // 光墙\n const wall = this.wallManage.wallMesh.get(region.id)\n wall.visible = true\n // 隐藏当前POI点\n sprite.visible = false\n this.addDialogPanel(region, event.point)\n }) as Function\n this.poiEventListener.add(unClick)\n })\n }\n\n remove() {\n // 控制POI点的隐藏、显示\n this.poiMesh.forEach((poi) => {\n this.interactionManager.remove(poi)\n poi.removeFromParent()\n poi.remove()\n })\n // 取消事件监听\n this.poiEventListener.forEach((f) => {\n f()\n })\n // 移除面板\n if (this.dialogPoi)\n this.dialogPoi.removeFromParent()\n this.poiMesh.clear()\n this.poiEventListener.clear()\n }\n\n reset() {\n // 控制POI点的隐藏、显示\n // 控制POI点的隐藏、显示\n this.poiMesh.forEach((poi) => {\n poi.visible = true\n })\n // 移除面板\n if (this.dialogPoi)\n this.dialogPoi.removeFromParent()\n // 控制光墙的隐藏、显示\n this.wallManage?.wallMesh.forEach((wall) => {\n wall.visible = false\n })\n }\n\n private addDialogPanel(data, position) {\n // 添加面板\n this.dialogPoi = new Css2DPoi({ title: data.title, content: data.poi.content }, {\n animation: [{\n type: EAnimationType.grow,\n duration: 1,\n }, {\n type: EAnimationType.fadeIn,\n duration: 0.3,\n }, {\n type: EAnimationType.print,\n duration: 0.02,\n }],\n })\n this.dialogPoi.position.copy(position.clone().add(new Vector3(-30, 30, 0)))\n this.scene.add(this.dialogPoi)\n\n this.interactionManager.add(this.dialogPoi)\n this.dialogPoi.addEventListener('click', () => {\n this.dialogPoi.remove()\n this.dialogPoi.removeFromParent()\n this.dialogPoi = null\n this.reset()\n })\n }\n}\n\nexport default PoiManage"],"mappings":"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"}
1
+ {"version":3,"names":["Vector3","utils","Css2DPoi","EAnimationType","SpritePoi","regionMap","PoiManage","gobal","Map","Set","scene","wallManage","wall","interactionManager","storeManagement","get","Object","keys","forEach","key","region","option","scale","animation","type","grow","duration","fadeIn","sprite","getDom","position","copy","fromArray","poi","add","poiMesh","set","id","changeWallState","show","dialogPoi","visible","wallMesh","addEventListener","unClick","event","reset","addDialogPanel","point","poiEventListener","data","dom","document","createElement","assign","style","fontSize","backgroundImage","backgroundSize","backgroundRepeat","display","justifyContent","alignItems","textAlign","color","pointerEvents","cursor","height","width","title","length","padding","fontWeight","innerText","remove","removeFromParent","f","clear","content","print","clone"],"sources":["../../../src/factory/unit/poi.ts"],"sourcesContent":["import type { InteractionManager, Object3D, Scene } from '@anov/3d-core'\nimport { Vector3, utils } from '@anov/3d-core'\nimport { Css2DPoi, EAnimationType, SpritePoi } from '@anov/3d-ability'\nimport type Factory3D from '../3d'\nimport { regionMap } from '../regionData'\nimport type WallManage from './wall'\n\nclass PoiManage {\n private gobal: Factory3D\n private scene: Scene\n private dialogPoi: Object3D\n readonly poiMesh: Map<string, Object3D> = new Map()\n readonly poiEventListener: Set<Function> = new Set()\n private wallManage: WallManage\n private interactionManager\n\n constructor(gobal) {\n this.gobal = gobal\n this.scene = gobal.scene.scene\n this.wallManage = gobal.wall\n this.interactionManager = utils.storeManagement.get<InteractionManager>('interactionManager')\n }\n\n async generatePoi() {\n Object.keys(regionMap).forEach(async (key: string) => {\n const region = regionMap[key]\n const option = {\n scale: [80, 80, 1],\n animation: [{\n type: EAnimationType.grow,\n duration: 1,\n }, {\n type: EAnimationType.fadeIn,\n duration: 0.2,\n }],\n }\n const sprite = new SpritePoi(this.getDom(region), option)\n sprite.position.copy(new Vector3().fromArray(region.poi.position))\n\n this.scene.add(sprite)\n this.poiMesh.set(region.poi.id, sprite)\n\n // 绑定事件\n this.interactionManager.add(sprite)\n const changeWallState = (show) => {\n if (this.dialogPoi?.visible)\n return\n // 光墙\n const wall = this.wallManage.wallMesh.get(region.id)\n wall.visible = show\n }\n\n sprite.addEventListener('mouseover', () => {\n if (!sprite.visible)\n return\n changeWallState(true)\n })\n sprite.addEventListener('mouseout', () => {\n changeWallState(false)\n })\n const unClick = sprite.addEventListener('click', (event) => {\n if (!sprite.visible)\n return\n this.reset()\n\n // 光墙\n const wall = this.wallManage.wallMesh.get(region.id)\n wall.visible = true\n // 隐藏当前POI点\n sprite.visible = false\n this.addDialogPanel(region, event.point)\n }) as Function\n this.poiEventListener.add(unClick)\n })\n }\n\n getDom(data) {\n const dom = document.createElement('div')\n Object.assign(dom.style, {\n fontSize: '18px',\n backgroundImage: 'url(./poi2.png)',\n backgroundSize: '100% 100%',\n backgroundRepeat: 'no-repeat',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'flex-start',\n textAlign: 'center',\n color: '#fff',\n pointerEvents: 'auto',\n cursor: 'pointer',\n height: '262px',\n width: `${data.title.length * 36}px`,\n padding: '12px 0 0 25px',\n fontWeight: 'bold',\n })\n dom.innerText = data.title\n return dom\n }\n\n remove() {\n // 控制POI点的隐藏、显示\n this.poiMesh.forEach((poi) => {\n this.interactionManager.remove(poi)\n poi.removeFromParent()\n poi.remove()\n })\n // 取消事件监听\n this.poiEventListener.forEach((f) => {\n f()\n })\n // 移除面板\n if (this.dialogPoi)\n this.dialogPoi.removeFromParent()\n this.poiMesh.clear()\n this.poiEventListener.clear()\n }\n\n reset() {\n // 控制POI点的隐藏、显示\n // 控制POI点的隐藏、显示\n this.poiMesh.forEach((poi) => {\n poi.visible = true\n })\n // 移除面板\n if (this.dialogPoi)\n this.dialogPoi.removeFromParent()\n // 控制光墙的隐藏、显示\n this.wallManage?.wallMesh.forEach((wall) => {\n wall.visible = false\n })\n }\n\n private addDialogPanel(data, position) {\n // 添加面板\n this.dialogPoi = new Css2DPoi({ title: data.title, content: data.poi.content }, {\n animation: [{\n type: EAnimationType.grow,\n duration: 1,\n }, {\n type: EAnimationType.fadeIn,\n duration: 0.3,\n }, {\n type: EAnimationType.print,\n duration: 0.02,\n }],\n })\n this.dialogPoi.position.copy(position.clone().add(new Vector3(-30, 30, 0)))\n this.scene.add(this.dialogPoi)\n\n this.interactionManager.add(this.dialogPoi)\n this.dialogPoi.addEventListener('click', () => {\n this.dialogPoi.remove()\n this.dialogPoi.removeFromParent()\n this.dialogPoi = null\n this.reset()\n })\n }\n}\n\nexport default PoiManage"],"mappings":"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"}
@@ -8,4 +8,3 @@ export declare enum SceneTag {
8
8
  'smart-inspection' = "smart-inspection",
9
9
  'security-operation' = "security-operation"
10
10
  }
11
- export declare const POI_IMG = "data:image/png;base64,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";
@@ -10,5 +10,4 @@ export var SceneTag;
10
10
  SceneTag["smart-inspection"] = "smart-inspection";
11
11
  SceneTag["security-operation"] = "security-operation";
12
12
  })(SceneTag || (SceneTag = {}));
13
- export var POI_IMG = 'data:image/png;base64,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';
14
13
  //# sourceMappingURL=constant.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["SceneStyle","SceneTag","POI_IMG"],"sources":["../../../src/factory/utils/constant.ts"],"sourcesContent":["export enum SceneStyle {\n 'real',\n 'tech',\n}\n\nexport enum SceneTag {\n 'overview' = 'Overview',\n 'people-management' = 'Person',\n 'smart-inspection' = 'smart-inspection',\n 'security-operation' = 'security-operation',\n}\n\nexport const POI_IMG = 'data:image/png;base64,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'"],"mappings":"AAAA,WAAYA,UAAU;AAGrB,WAHWA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;AAAA,GAAVA,UAAU,KAAVA,UAAU;AAKtB,WAAYC,QAAQ;AAKnB,WALWA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;AAAA,GAARA,QAAQ,KAARA,QAAQ;AAOpB,OAAO,IAAMC,OAAO,GAAG,g8QAAg8Q"}
1
+ {"version":3,"names":["SceneStyle","SceneTag"],"sources":["../../../src/factory/utils/constant.ts"],"sourcesContent":["export enum SceneStyle {\n 'real',\n 'tech',\n}\n\nexport enum SceneTag {\n 'overview' = 'Overview',\n 'people-management' = 'Person',\n 'smart-inspection' = 'smart-inspection',\n 'security-operation' = 'security-operation',\n}"],"mappings":"AAAA,WAAYA,UAAU;AAGrB,WAHWA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;AAAA,GAAVA,UAAU,KAAVA,UAAU;AAKtB,WAAYC,QAAQ;AAKnB,WALWA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;AAAA,GAARA,QAAQ,KAARA,QAAQ"}
@@ -1,3 +1,4 @@
1
1
  import { MeshStandardMaterial, ShaderMaterial } from '@anov/3d-core';
2
2
  export declare const finirMaterialV2: ShaderMaterial;
3
3
  export declare const finirMaterialV1: MeshStandardMaterial;
4
+ export declare const createFinirMaterial: (rimColor: string, rimPower: number) => MeshStandardMaterial;
@@ -7,7 +7,7 @@ export var finirMaterialV2 = new ShaderMaterial({
7
7
  },
8
8
  // 边缘颜色
9
9
  edgeThickness: {
10
- value: 0.03
10
+ value: 0.05
11
11
  },
12
12
  // 边缘厚度0.05
13
13
  reflectionStrength: {
@@ -36,4 +36,22 @@ finirMaterialV1.onBeforeCompile = function (shader) {
36
36
  shader.fragmentShader = shader.fragmentShader.replace('void main() {', ['uniform vec3 rimColor;', ' uniform float rimPower;', 'void main() {'].join('\n'));
37
37
  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.;");
38
38
  };
39
+ export var createFinirMaterial = function createFinirMaterial(rimColor, rimPower) {
40
+ var material = new MeshStandardMaterial({
41
+ opacity: 0.0,
42
+ transparent: true,
43
+ depthWrite: false
44
+ });
45
+ material.onBeforeCompile = function (shader) {
46
+ shader.uniforms.rimColor = {
47
+ value: new Color(rimColor)
48
+ };
49
+ shader.uniforms.rimPower = {
50
+ value: rimPower
51
+ };
52
+ shader.fragmentShader = shader.fragmentShader.replace('void main() {', ['uniform vec3 rimColor;', 'uniform float rimPower;', 'void main() {'].join('\n'));
53
+ 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.;");
54
+ };
55
+ return material;
56
+ };
39
57
  //# sourceMappingURL=finirMaterial.js.map
@@ -1 +1 @@
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"],"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.03 }, // 边缘厚度0.05\n reflectionStrength: { value: 100 }, // 反光强度0.9\n },\n vertexShader: `\n varying vec3 vNormal;\n\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('#99C9E3') }\n shader.uniforms.rimPower = { value: 0.9 }\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}"],"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,qRAOK;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;EAAI,CAAC;EACzCU,MAAM,CAACN,cAAc,GAAGM,MAAM,CAACN,cAAc,CAACS,OAAO,CACnD,eAAe,EACf,CACE,wBAAwB,EACxB,0BAA0B,EAC1B,eAAe,CAChB,CAACC,IAAI,CAAC,IAAI,CAAC,CACb;EACDJ,MAAM,CAACN,cAAc,GAAGM,MAAM,CAACN,cAAc,CAACS,OAAO,CACnD,+BAA+B,0RAOhC;AACH,CAAC"}
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\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('#99C9E3') }\n shader.uniforms.rimPower = { value: 0.9 }\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}\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,qRAOK;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;EAAI,CAAC;EACzCU,MAAM,CAACN,cAAc,GAAGM,MAAM,CAACN,cAAc,CAACS,OAAO,CACnD,eAAe,EACf,CACE,wBAAwB,EACxB,0BAA0B,EAC1B,eAAe,CAChB,CAACC,IAAI,CAAC,IAAI,CAAC,CACb;EACDJ,MAAM,CAACN,cAAc,GAAGM,MAAM,CAACN,cAAc,CAACS,OAAO,CACnD,+BAA+B,0RAOhC;AACH,CAAC;AAED,OAAO,IAAME,mBAAmB,GAAG,SAAtBA,mBAAmB,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,CAAC,CACb;IACDJ,MAAM,CAACN,cAAc,GAAGM,MAAM,CAACN,cAAc,CAACS,OAAO,CACnD,+BAA+B,kRAMhC;EACH,CAAC;EACD,OAAOG,QAAQ;AACjB,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
+ import packageJSON from "../package.json";
1
2
  import registerHooks from "./hooksManager";
2
3
  import Anov3D from "./sdkEntry";
3
- import packageJSON from "../package.json";
4
4
  export var defaultCameraParams = {
5
5
  fov: 45,
6
6
  near: 0.1,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["registerHooks","Anov3D","packageJSON","defaultCameraParams","fov","near","far","position","x","y","z","lookAt","console","log","version","createInstance"],"sources":["../src/index.ts"],"sourcesContent":["import registerHooks from './hooksManager'\nimport Anov3D from './sdkEntry'\nimport packageJSON from '../package.json'\n\nexport const defaultCameraParams = {\n fov: 45,\n near: 0.1,\n far: 1000000,\n position: { x: 0, y: 100, z: 200 },\n lookAt: { x: 0, y: 0, z: 0 },\n}\n\nregisterHooks()\n\nconsole.log('Anov3D', packageJSON.version )\n\n\n\nexport { createInstance } from './applicationApi'\nexport default Anov3D\n"],"mappings":"AAAA,OAAOA,aAAa;AACpB,OAAOC,MAAM;AACb,OAAOC,WAAW;AAElB,OAAO,IAAMC,mBAAmB,GAAG;EACjCC,GAAG,EAAE,EAAE;EACPC,IAAI,EAAE,GAAG;EACTC,GAAG,EAAE,OAAO;EACZC,QAAQ,EAAE;IAAEC,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE,GAAG;IAAEC,CAAC,EAAE;EAAI,CAAC;EAClCC,MAAM,EAAE;IAAEH,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE;EAAE;AAC7B,CAAC;AAEDV,aAAa,EAAE;AAEfY,OAAO,CAACC,GAAG,CAAC,QAAQ,EAAEX,WAAW,CAACY,OAAO,CAAE;AAI3C,SAASC,cAAc;AACvB,eAAed,MAAM"}
1
+ {"version":3,"names":["packageJSON","registerHooks","Anov3D","defaultCameraParams","fov","near","far","position","x","y","z","lookAt","console","log","version","createInstance"],"sources":["../src/index.ts"],"sourcesContent":["import packageJSON from '../package.json'\nimport registerHooks from './hooksManager'\nimport Anov3D from './sdkEntry'\n\nexport const defaultCameraParams = {\n fov: 45,\n near: 0.1,\n far: 1000000,\n position: { x: 0, y: 100, z: 200 },\n lookAt: { x: 0, y: 0, z: 0 },\n}\n\nregisterHooks()\n\nconsole.log('Anov3D', packageJSON.version)\n\nexport { createInstance } from './applicationApi'\nexport default Anov3D\n"],"mappings":"AAAA,OAAOA,WAAW;AAClB,OAAOC,aAAa;AACpB,OAAOC,MAAM;AAEb,OAAO,IAAMC,mBAAmB,GAAG;EACjCC,GAAG,EAAE,EAAE;EACPC,IAAI,EAAE,GAAG;EACTC,GAAG,EAAE,OAAO;EACZC,QAAQ,EAAE;IAAEC,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE,GAAG;IAAEC,CAAC,EAAE;EAAI,CAAC;EAClCC,MAAM,EAAE;IAAEH,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE;EAAE;AAC7B,CAAC;AAEDT,aAAa,EAAE;AAEfW,OAAO,CAACC,GAAG,CAAC,QAAQ,EAAEb,WAAW,CAACc,OAAO,CAAC;AAE1C,SAASC,cAAc;AACvB,eAAeb,MAAM"}
@@ -6,7 +6,7 @@
6
6
  * @param sunRadius
7
7
  * @returns
8
8
  */
9
- declare const createTimeSkySystem: (date: Date, latitude?: number, longitude?: number, sunRadius?: number) => [(currentDate?: Date | undefined) => import("@anov/3d-core").Vector3, import("@anov/3d-core/dist/core/group").default & {
9
+ declare const createTimeSkySystem: (date: Date, latitude?: number, longitude?: number, sunRadius?: number) => [(currentDate?: Date) => import("@anov/3d-core").Vector3, import("@anov/3d-core/dist/core/group").default & {
10
10
  sunPosition: import("@anov/3d-core").Vector3;
11
11
  }, any];
12
12
  export default createTimeSkySystem;
@@ -10,7 +10,7 @@ interface ObjectType {
10
10
  * @param obj
11
11
  * @param key
12
12
  */
13
- export declare const getValueByKey: <T extends ObjectType>(obj: T, key: string) => T | undefined;
13
+ export declare const getValueByKey: <T extends ObjectType>(obj: T, key: string) => T;
14
14
  /**
15
15
  * getFnByFnkey
16
16
  * @param iEngine
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anov/3d",
3
- "version": "0.0.13",
3
+ "version": "0.0.15",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "license": "MIT",
@@ -18,10 +18,11 @@
18
18
  ],
19
19
  "dependencies": {
20
20
  "@tweenjs/tween.js": "^21.0.0",
21
+ "anov-heat-map": "^0.0.1",
21
22
  "localforage": "^1.10.0",
22
23
  "uuid": "^9.0.1",
23
- "@anov/3d-ability": "^0.0.5",
24
- "@anov/3d-core": "^0.0.5"
24
+ "@anov/3d-ability": "^0.0.7",
25
+ "@anov/3d-core": "^0.0.7"
25
26
  },
26
27
  "devDependencies": {
27
28
  "@types/uuid": "^9.0.7"