@anov/3d-ability 0.0.4-alpha7 → 0.0.4-alpha8

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 (130) hide show
  1. package/dist/animation/index.d.ts +0 -1
  2. package/dist/animation/index.js +1 -1
  3. package/dist/animation/index.js.map +1 -1
  4. package/dist/camera/index.d.ts +65 -0
  5. package/dist/camera/index.js +239 -0
  6. package/dist/camera/index.js.map +1 -0
  7. package/dist/city/flyinglead.d.ts +0 -0
  8. package/dist/city/radar.d.ts +0 -0
  9. package/dist/city/scanning.d.ts +0 -0
  10. package/dist/city/surroundLine.d.ts +0 -0
  11. package/dist/core/mouseDrawe.d.ts +2 -0
  12. package/dist/environment/cloud/cloud.d.ts +1 -0
  13. package/dist/environment/cloud/index.d.ts +7 -0
  14. package/dist/environment/rain.d.ts +20 -0
  15. package/dist/environment/rainShader/shader.d.ts +26 -0
  16. package/dist/environment/shaderCloud/cloudMaterial.d.ts +10 -0
  17. package/dist/environment/shaderCloud/shader.d.ts +5 -0
  18. package/dist/environment/sky/index.js +10 -13
  19. package/dist/environment/sky/index.js.map +1 -1
  20. package/dist/environment/skyBox/index.d.ts +41 -0
  21. package/dist/environment/skyBox/index.js +150 -0
  22. package/dist/environment/skyBox/index.js.map +1 -0
  23. package/dist/environment/snow.js +2 -0
  24. package/dist/environment/snow.js.map +1 -1
  25. package/dist/environment/sun/index.d.ts +13 -0
  26. package/dist/environment/volumetricCloud/cloudMaterial.d.ts +3 -0
  27. package/dist/environment/volumetricCloud/inex.d.ts +8 -0
  28. package/dist/heatmap/index.d.ts +9 -0
  29. package/dist/heatmap/index.js +138 -0
  30. package/dist/heatmap/index.js.map +1 -0
  31. package/dist/helper/view/index.d.ts +40 -0
  32. package/dist/helper/view/utils.d.ts +6 -0
  33. package/dist/index.d.ts +8 -4
  34. package/dist/index.js +8 -4
  35. package/dist/index.js.map +1 -1
  36. package/dist/line/curve.d.ts +33 -0
  37. package/dist/line/curve.js +71 -0
  38. package/dist/line/curve.js.map +1 -0
  39. package/dist/line/index.d.ts +0 -0
  40. package/dist/line/index.js +2 -0
  41. package/dist/line/index.js.map +1 -0
  42. package/dist/line/round-curve.d.ts +19 -0
  43. package/dist/line/round-curve.js +212 -0
  44. package/dist/line/round-curve.js.map +1 -0
  45. package/dist/material/finirMaterialMaterial/index.d.ts +9 -0
  46. package/dist/material/finirMaterialMaterial/index.js +47 -0
  47. package/dist/material/finirMaterialMaterial/index.js.map +1 -0
  48. package/dist/material/pristineGridMaterial/index.d.ts +20 -0
  49. package/dist/material/pristineGridMaterial/shader/fragment.d.ts +2 -0
  50. package/dist/material/pristineGridMaterial/shader/vertex.d.ts +2 -0
  51. package/dist/poi/core/Base.d.ts +7 -0
  52. package/dist/poi/core/Base.js +24 -0
  53. package/dist/poi/core/Base.js.map +1 -0
  54. package/dist/poi/core/Css2D.d.ts +20 -0
  55. package/dist/poi/core/Css2D.js +181 -0
  56. package/dist/poi/core/Css2D.js.map +1 -0
  57. package/dist/poi/core/Css3D.d.ts +1 -0
  58. package/dist/poi/core/Css3D.js +24 -0
  59. package/dist/poi/core/Css3D.js.map +1 -0
  60. package/dist/poi/core/Sprite.d.ts +11 -0
  61. package/dist/poi/core/Sprite.js +134 -0
  62. package/dist/poi/core/Sprite.js.map +1 -0
  63. package/dist/poi/core/SpriteBase.d.ts +11 -0
  64. package/dist/poi/core/SpriteBase.js +58 -0
  65. package/dist/poi/core/SpriteBase.js.map +1 -0
  66. package/dist/poi/index.d.ts +9 -16
  67. package/dist/poi/index.js +11 -96
  68. package/dist/poi/index.js.map +1 -1
  69. package/dist/poi/utils/base64.d.ts +3 -0
  70. package/dist/poi/utils/base64.js +4 -0
  71. package/dist/poi/utils/base64.js.map +1 -0
  72. package/dist/poi/utils/canvas.d.ts +3 -0
  73. package/dist/poi/utils/canvas.js +68 -0
  74. package/dist/poi/utils/canvas.js.map +1 -0
  75. package/dist/poi/utils/css.d.ts +35 -0
  76. package/dist/poi/utils/css.js +41 -0
  77. package/dist/poi/utils/css.js.map +1 -0
  78. package/dist/poi/utils/type.d.ts +35 -0
  79. package/dist/poi/utils/type.js +39 -0
  80. package/dist/poi/utils/type.js.map +1 -0
  81. package/dist/poiBack/assets.js.map +1 -0
  82. package/dist/poiBack/dom.js.map +1 -0
  83. package/dist/poiBack/index.d.ts +19 -0
  84. package/dist/poiBack/index.js +145 -0
  85. package/dist/poiBack/index.js.map +1 -0
  86. package/dist/poiBack/type.js.map +1 -0
  87. package/dist/postEffects/bloomPass.d.ts +5 -0
  88. package/dist/postEffects/index.d.ts +11 -0
  89. package/dist/postEffects/outlinePass.d.ts +16 -0
  90. package/dist/postEffects/outlinePass.js +7 -1
  91. package/dist/postEffects/outlinePass.js.map +1 -1
  92. package/dist/scene/grow/grow.d.ts +10 -0
  93. package/dist/{animation → scene}/grow/grow.js +66 -33
  94. package/dist/scene/grow/grow.js.map +1 -0
  95. package/dist/scene/grow/growStyle.js.map +1 -0
  96. package/dist/scene/grow/index.js.map +1 -0
  97. package/dist/{animation → scene}/grow/style_down.d.ts +2 -0
  98. package/dist/{animation → scene}/grow/style_down.js +22 -21
  99. package/dist/scene/grow/style_down.js.map +1 -0
  100. package/dist/{animation → scene}/grow/style_up.d.ts +2 -0
  101. package/dist/{animation → scene}/grow/style_up.js +24 -22
  102. package/dist/scene/grow/style_up.js.map +1 -0
  103. package/dist/{animation → scene}/grow/type.d.ts +12 -11
  104. package/dist/scene/grow/type.js.map +1 -0
  105. package/dist/scene/index.d.ts +1 -0
  106. package/dist/scene/index.js +2 -0
  107. package/dist/scene/index.js.map +1 -0
  108. package/dist/utils/index.d.ts +1 -0
  109. package/package.json +10 -3
  110. package/dist/animation/grow/grow.d.ts +0 -10
  111. package/dist/animation/grow/grow.js.map +0 -1
  112. package/dist/animation/grow/growStyle.js.map +0 -1
  113. package/dist/animation/grow/index.js.map +0 -1
  114. package/dist/animation/grow/style_down.js.map +0 -1
  115. package/dist/animation/grow/style_up.js.map +0 -1
  116. package/dist/animation/grow/type.js.map +0 -1
  117. package/dist/poi/assets.js.map +0 -1
  118. package/dist/poi/dom.js.map +0 -1
  119. package/dist/poi/type.js.map +0 -1
  120. /package/dist/{poi → poiBack}/assets.d.ts +0 -0
  121. /package/dist/{poi → poiBack}/assets.js +0 -0
  122. /package/dist/{poi → poiBack}/dom.d.ts +0 -0
  123. /package/dist/{poi → poiBack}/dom.js +0 -0
  124. /package/dist/{poi → poiBack}/type.d.ts +0 -0
  125. /package/dist/{poi → poiBack}/type.js +0 -0
  126. /package/dist/{animation → scene}/grow/growStyle.d.ts +0 -0
  127. /package/dist/{animation → scene}/grow/growStyle.js +0 -0
  128. /package/dist/{animation → scene}/grow/index.d.ts +0 -0
  129. /package/dist/{animation → scene}/grow/index.js +0 -0
  130. /package/dist/{animation → scene}/grow/type.js +0 -0
@@ -5,7 +5,7 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
5
5
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
6
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
7
7
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
8
- import { Object3D, Vector3, use } from '@anov/3d-core';
8
+ import { Box3, Object3D, Vector3, use } from '@anov/3d-core';
9
9
  import { EEaseType, ESceneGrowType } from "./type";
10
10
  import { GrowStyleDown, GrowStyleUp } from "./growStyle";
11
11
 
@@ -17,64 +17,96 @@ export var Grow = /*#__PURE__*/function () {
17
17
  _defineProperty(this, "option", void 0);
18
18
  _defineProperty(this, "growStyle", void 0);
19
19
  this.objs = [];
20
- this.option = {
21
- tag: '*',
22
- // 可选,进场对象Tag, 默认 "*" 所有可见MESH对象,
23
- type: ESceneGrowType.Up,
24
- // 可选,进场动画类型,默认 ESceneGrowType.Up向上生长
25
- time: 0.5,
26
- // 可选,单对象进场时间,默认0.5秒
27
- gapTime: 0.2,
28
- // 可选,多个对象之间间隔事件,默认0.2秒
29
- ease: EEaseType.SineInOut,
30
- // 可选,默认缓入缓出
31
- center: new Vector3(0, 0, 0),
32
- // 可选,生长中心位置,默认[0,0,0]
33
- scale: 1,
34
- // 可选,倍速,默认为1。
35
- distance: 1000,
36
- // 可选,初始化UP/DOWN起始距离,默认1000
37
- isRotate: true,
38
- // 可选,初始化UP/DOWN起始旋转角度,默认true
39
- isScale: true // 可选,初始化UP/DOWN起始缩放大小,默认true
40
- };
41
-
42
- Object.assign(this.option, opt || {});
43
- this.growStyle = new GrowStyleUp(this.objs, this.option);
44
- this._init();
20
+ this.option = {};
21
+ // @ts-ignore
22
+ this.growStyle = null;
23
+ this.init(opt || {});
45
24
  }
46
25
 
47
26
  // 生长
48
27
  _createClass(Grow, [{
49
28
  key: "in",
50
- value: function _in() {
29
+ value: function _in(callback) {
30
+ var _this = this;
31
+ // 入场事件
32
+ this.option.onGrowInStart && this.option.onGrowInStart();
33
+ this.growStyle.getTimeLine().eventCallback('onComplete', function () {
34
+ _this.option.onGrowInCompleted && _this.option.onGrowInCompleted();
35
+ callback && callback();
36
+ });
51
37
  this.growStyle.in();
52
38
  }
53
39
 
54
40
  // 消退
55
41
  }, {
56
42
  key: "out",
57
- value: function out() {
43
+ value: function out(callback) {
44
+ var _this2 = this;
45
+ // 出场事件
46
+ this.option.onGrowOutStart && this.option.onGrowOutStart();
47
+ this.growStyle.getTimeLine().eventCallback('onReverseComplete', function () {
48
+ _this2.option.onGrowOutCompleted && _this2.option.onGrowOutCompleted();
49
+ callback && callback();
50
+ });
58
51
  this.growStyle.out();
59
52
  }
60
53
 
61
54
  // 初始化
62
55
  }, {
63
- key: "_init",
64
- value: function _init() {
65
- var _this = this;
56
+ key: "init",
57
+ value: function init(opt) {
58
+ var _this3 = this;
59
+ this.option = {
60
+ tag: '*',
61
+ // 可选,进场对象Tag, 默认 "*" 所有可见MESH对象,
62
+ type: ESceneGrowType.Up,
63
+ // 可选,进场动画类型,默认 ESceneGrowType.Up向上生长
64
+ time: 0.5,
65
+ // 可选,单对象进场时间,默认0.5秒
66
+ gapTime: 0.2,
67
+ // 可选,多个对象之间间隔事件,默认0.2秒
68
+ ease: EEaseType.SineInOut,
69
+ // 可选,默认缓入缓出
70
+ center: null,
71
+ // 可选,生长中心位置,默认包围盒中心点
72
+ scale: 1,
73
+ // 可选,倍速,默认为1。
74
+ distance: 1000,
75
+ // 可选,初始化UP/DOWN起始距离,默认1000
76
+ isRotate: true,
77
+ // 可选,初始化UP/DOWN起始旋转角度,默认true
78
+ isScale: true // 可选,初始化UP/DOWN起始缩放大小,默认true
79
+ };
80
+
81
+ Object.assign(this.option, opt);
66
82
  // ------- 1.初始化目标对象 --------
83
+ this.objs.length = 0;
67
84
  // 获取所有对象
68
85
  if (this.option.tag === '*') {
69
86
  use.useScene().scene.traverseVisible(function (object) {
70
- if (object instanceof Object3D) _this.objs.push(object);
87
+ if (object instanceof Object3D) _this3.objs.push(object);
71
88
  });
72
89
  } else {
73
90
  // 获取指定tag对象
74
91
  use.useScene().scene.traverseVisible(function (object) {
75
- if (object instanceof Object3D && object.userData.tag && Array.isArray(object.userData.tag) && object.userData.tag.includes(_this.option.tag)) _this.objs.push(object);
92
+ if (object instanceof Object3D && object.userData.tag && Array.isArray(object.userData.tag) && object.userData.tag.includes(_this3.option.tag)) _this3.objs.push(object);
76
93
  });
77
94
  }
95
+
96
+ // ------- 2.中心点 ------------
97
+ if (!this.option.center) {
98
+ var boundingBox = new Box3();
99
+
100
+ // 将每个物体的边界框扩展到包围盒中
101
+ for (var i = 0; i < this.objs.length; i++) {
102
+ var object = this.objs[i];
103
+ boundingBox.expandByObject(object);
104
+ }
105
+ // 计算包围盒的中心点
106
+ var center = new Vector3();
107
+ this.option.center = boundingBox.getCenter(center);
108
+ }
109
+
78
110
  // ------- 2.初始化目标对象 生长前状态 --------
79
111
  switch (this.option.type) {
80
112
  case ESceneGrowType.Up:
@@ -88,6 +120,7 @@ export var Grow = /*#__PURE__*/function () {
88
120
  break;
89
121
  }
90
122
  this.growStyle.init();
123
+ this.option.onGrowInitCompleted && this.option.onGrowInitCompleted();
91
124
  }
92
125
  }]);
93
126
  return Grow;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Box3","Object3D","Vector3","use","EEaseType","ESceneGrowType","GrowStyleDown","GrowStyleUp","Grow","opt","objs","option","growStyle","init","callback","onGrowInStart","getTimeLine","eventCallback","onGrowInCompleted","in","onGrowOutStart","onGrowOutCompleted","out","tag","type","Up","time","gapTime","ease","SineInOut","center","scale","distance","isRotate","isScale","Object","assign","length","useScene","scene","traverseVisible","object","push","userData","Array","isArray","includes","boundingBox","i","expandByObject","getCenter","Down","onGrowInitCompleted"],"sources":["../../../src/scene/grow/grow.ts"],"sourcesContent":["import { Box3, Object3D, Vector3, gsap, use } from '@anov/3d-core'\nimport type { GrowOption, IGrowStyle } from './type'\nimport { EEaseType, ESceneGrowType } from './type'\nimport { GrowStyleDown, GrowStyleUp } from './growStyle'\n\n// 生长动画对象\nexport class Grow {\n private objs: Array<Object3D>\n private option: GrowOption\n private growStyle: IGrowStyle\n\n constructor(opt?: GrowOption) {\n this.objs = []\n this.option = {}\n // @ts-ignore\n this.growStyle = null\n this.init(opt || {})\n }\n\n // 生长\n in(callback: () => void) {\n // 入场事件\n this.option.onGrowInStart && this.option.onGrowInStart()\n\n this.growStyle.getTimeLine().eventCallback('onComplete', () => {\n this.option.onGrowInCompleted && this.option.onGrowInCompleted()\n callback && callback()\n })\n\n this.growStyle.in()\n }\n\n // 消退\n out(callback: () => void) {\n // 出场事件\n this.option.onGrowOutStart && this.option.onGrowOutStart()\n\n this.growStyle.getTimeLine().eventCallback('onReverseComplete', () => {\n this.option.onGrowOutCompleted && this.option.onGrowOutCompleted()\n\n callback && callback()\n })\n\n this.growStyle.out()\n }\n\n // 初始化\n init(opt: GrowOption) {\n this.option = {\n tag: '*', // 可选,进场对象Tag, 默认 \"*\" 所有可见MESH对象,\n type: ESceneGrowType.Up, // 可选,进场动画类型,默认 ESceneGrowType.Up向上生长\n time: 0.5, // 可选,单对象进场时间,默认0.5秒\n gapTime: 0.2, // 可选,多个对象之间间隔事件,默认0.2秒\n ease: EEaseType.SineInOut, // 可选,默认缓入缓出\n center: null, // 可选,生长中心位置,默认包围盒中心点\n scale: 1, // 可选,倍速,默认为1。\n distance: 1000, // 可选,初始化UP/DOWN起始距离,默认1000\n isRotate: true, // 可选,初始化UP/DOWN起始旋转角度,默认true\n isScale: true, // 可选,初始化UP/DOWN起始缩放大小,默认true\n }\n Object.assign(this.option, opt)\n // ------- 1.初始化目标对象 --------\n this.objs.length = 0\n // 获取所有对象\n if (this.option.tag === '*') {\n use.useScene().scene!.traverseVisible((object) => {\n if (object instanceof Object3D)\n this.objs.push(object)\n })\n }\n else { // 获取指定tag对象\n use.useScene().scene!.traverseVisible((object) => {\n if (object instanceof Object3D && object.userData.tag && Array.isArray(object.userData.tag) && object.userData.tag.includes(this.option.tag))\n this.objs.push(object)\n })\n }\n\n // ------- 2.中心点 ------------\n if (!this.option.center) {\n const boundingBox = new Box3()\n\n // 将每个物体的边界框扩展到包围盒中\n for (let i = 0; i < this.objs.length; i++) {\n const object = this.objs[i]\n boundingBox.expandByObject(object)\n }\n // 计算包围盒的中心点\n const center = new Vector3()\n this.option.center = boundingBox.getCenter(center)\n }\n\n // ------- 2.初始化目标对象 生长前状态 --------\n switch (this.option.type) {\n case ESceneGrowType.Up:\n this.growStyle = new GrowStyleUp(this.objs, this.option)\n break\n case ESceneGrowType.Down:\n this.growStyle = new GrowStyleDown(this.objs, this.option)\n break\n default:\n this.growStyle = new GrowStyleUp(this.objs, this.option)\n break\n }\n this.growStyle.init()\n this.option.onGrowInitCompleted && this.option.onGrowInitCompleted()\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GrowStyleDown","GrowStyleUp"],"sources":["../../../src/scene/grow/growStyle.ts"],"sourcesContent":["export { GrowStyleDown } from './style_down'\nexport { GrowStyleUp } from './style_up'\n"],"mappings":"AAAA,SAASA,aAAa;AACtB,SAASC,WAAW"}
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Grow"],"sources":["../../../src/scene/grow/index.ts"],"sourcesContent":["export * from './type'\nexport { Grow } from './grow'\n"],"mappings":"AAAA;AACA,SAASA,IAAI"}
@@ -3,9 +3,11 @@ import type { GrowOption, IGrowStyle } from './type';
3
3
  export declare class GrowStyleDown implements IGrowStyle {
4
4
  private _objs;
5
5
  private _opt;
6
+ private _tl;
6
7
  private maxDistance;
7
8
  constructor(objs: Array<Object3D>, opt: GrowOption);
8
9
  init(): void;
9
10
  in(): void;
10
11
  out(): void;
12
+ getTimeLine(): gsap.core.Timeline;
11
13
  }
@@ -6,20 +6,17 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
6
6
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
7
7
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
8
8
  import { MathUtils, Vector3, gsap } from '@anov/3d-core';
9
- // 私有变量reverse无效, 可能是GASP内部机制造成,还未解决!。
10
- var tl;
11
9
  // 向下掉落
12
10
  export var GrowStyleDown = /*#__PURE__*/function () {
13
- // private _tl:gsap.core.Timeline
14
-
15
11
  function GrowStyleDown(objs, opt) {
16
12
  _classCallCheck(this, GrowStyleDown);
17
13
  _defineProperty(this, "_objs", void 0);
18
14
  _defineProperty(this, "_opt", void 0);
15
+ _defineProperty(this, "_tl", void 0);
19
16
  _defineProperty(this, "maxDistance", void 0);
20
17
  this._objs = objs;
21
18
  this._opt = opt;
22
- // this._tl = gsap.timeline();
19
+ this._tl = null; // gsap.timeline()
23
20
  this.maxDistance = 0;
24
21
  }
25
22
 
@@ -28,16 +25,20 @@ export var GrowStyleDown = /*#__PURE__*/function () {
28
25
  key: "init",
29
26
  value: function init() {
30
27
  var _this = this;
28
+ this._tl = gsap.timeline();
31
29
  var max = this._opt.gapTime + this._opt.time;
30
+ // 统一为Vector3
31
+ if (Array.isArray(this._opt.center)) this._opt.center = new Vector3().fromArray(this._opt.center);
32
+ // 找到对象最远距离
32
33
  this._objs.map(function (obj) {
33
- // 统一为Vector3
34
- if (Array.isArray(_this._opt.center)) _this._opt.center = new Vector3().fromArray(_this._opt.center);
35
- // 找到对象最远距离
36
34
  var distance = Math.abs(obj.position.distanceTo(_this._opt.center));
35
+ obj.userData.growDistance = distance;
36
+ obj.userData.growY = obj.position.y;
37
37
  if (distance > _this.maxDistance) _this.maxDistance = distance;
38
-
38
+ });
39
+ this._objs.map(function (obj) {
39
40
  // 计算排序延迟
40
- obj.userData.growDelay = MathUtils.lerp(0, max, distance / _this.maxDistance);
41
+ obj.userData.growDelay = MathUtils.lerp(0, max, obj.userData.growDistance / _this.maxDistance);
41
42
  // 距离
42
43
  obj.position.y += _this._opt.distance;
43
44
  // 旋转
@@ -45,31 +46,26 @@ export var GrowStyleDown = /*#__PURE__*/function () {
45
46
  // 缩放
46
47
  _this._opt.isScale && obj.scale.set(obj.scale.x * 0.1, obj.scale.y * 0.1, obj.scale.z * 0.1);
47
48
  });
48
- this._opt.onGrowInit && this._opt.onGrowInit();
49
49
  }
50
50
  }, {
51
51
  key: "in",
52
52
  value: function _in() {
53
53
  var _this2 = this;
54
- this._opt.onGrowInStart && this._opt.onGrowInStart();
55
- tl = gsap.timeline({
56
- onComplete: this._opt.onGrowInCompleted,
57
- onReverseComplete: this._opt.onGrowOutCompleted
58
- });
54
+ this._tl.clear();
59
55
  this._objs.map(function (obj) {
60
- tl.add(gsap.to(obj.position, {
56
+ _this2._tl.add(gsap.to(obj.position, {
61
57
  y: obj.position.y - _this2._opt.distance,
62
58
  duration: _this2._opt.time,
63
59
  ease: _this2._opt.ease,
64
60
  delay: obj.userData.growDelay
65
61
  }), 0);
66
- if (_this2._opt.isRotate) tl.add(gsap.to(obj.rotation, {
62
+ if (_this2._opt.isRotate) _this2._tl.add(gsap.to(obj.rotation, {
67
63
  y: 0,
68
64
  duration: _this2._opt.time,
69
65
  ease: _this2._opt.ease,
70
66
  delay: obj.userData.growDelay
71
67
  }), 0);
72
- if (_this2._opt.isScale) tl.add(gsap.to(obj.scale, {
68
+ if (_this2._opt.isScale) _this2._tl.add(gsap.to(obj.scale, {
73
69
  x: 1,
74
70
  y: 1,
75
71
  z: 1,
@@ -78,12 +74,17 @@ export var GrowStyleDown = /*#__PURE__*/function () {
78
74
  delay: obj.userData.growDelay
79
75
  }), 0);
80
76
  });
77
+ this._tl.play(0, false);
81
78
  }
82
79
  }, {
83
80
  key: "out",
84
81
  value: function out() {
85
- this._opt.onGrowOutStart && this._opt.onGrowOutStart();
86
- tl.timeScale(this._opt.scale).reverse();
82
+ this._tl.timeScale(this._opt.scale).reverse();
83
+ }
84
+ }, {
85
+ key: "getTimeLine",
86
+ value: function getTimeLine() {
87
+ return this._tl;
87
88
  }
88
89
  }]);
89
90
  return GrowStyleDown;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["MathUtils","Vector3","gsap","GrowStyleDown","objs","opt","_objs","_opt","_tl","maxDistance","timeline","max","gapTime","time","Array","isArray","center","fromArray","map","obj","distance","Math","abs","position","distanceTo","userData","growDistance","growY","y","growDelay","lerp","isRotate","rotateY","degToRad","isScale","scale","set","x","z","clear","add","to","duration","ease","delay","rotation","play","timeScale","reverse"],"sources":["../../../src/scene/grow/style_down.ts"],"sourcesContent":["import type { Object3D } from '@anov/3d-core'\nimport { MathUtils, Vector3, gsap, use } from '@anov/3d-core'\nimport type { GrowOption, IGrowStyle } from './type'\n\n// 向下掉落\nexport class GrowStyleDown implements IGrowStyle {\n private _objs: Array<Object3D>\n private _opt: GrowOption\n private _tl: gsap.core.Timeline\n private maxDistance: number\n\n constructor(objs: Array<Object3D>, opt: GrowOption) {\n this._objs = objs\n this._opt = opt\n this._tl = null// gsap.timeline()\n this.maxDistance = 0\n }\n\n // 对象初始化\n init(): void {\n this._tl = gsap.timeline()\n\n const max = this._opt.gapTime + this._opt.time\n // 统一为Vector3\n if (Array.isArray(this._opt.center))\n this._opt.center = new Vector3().fromArray(this._opt.center as number[])\n // 找到对象最远距离\n this._objs.map((obj) => {\n const distance = Math.abs(obj.position.distanceTo(this._opt.center as Vector3))\n obj.userData.growDistance = distance\n obj.userData.growY = obj.position.y\n if (distance > this.maxDistance)\n this.maxDistance = distance\n })\n\n this._objs.map((obj) => {\n // 计算排序延迟\n obj.userData.growDelay = MathUtils.lerp(0, max, obj.userData.growDistance / this.maxDistance)\n // 距离\n obj.position.y += this._opt.distance\n // 旋转\n this._opt.isRotate && obj.rotateY(MathUtils.degToRad(270))\n // 缩放\n this._opt.isScale && obj.scale.set(obj.scale.x * 0.1, obj.scale.y * 0.1, obj.scale.z * 0.1)\n })\n }\n\n in(): void {\n this._tl.clear()\n\n this._objs.map((obj) => {\n this._tl.add(gsap.to(obj.position, { y: obj.position.y - this._opt.distance, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n if (this._opt.isRotate)\n this._tl.add(gsap.to(obj.rotation, { y: 0, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n if (this._opt.isScale)\n this._tl.add(gsap.to(obj.scale, { x: 1, y: 1, z: 1, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n })\n this._tl.play(0, false)\n }\n\n out(): void {\n this._tl.timeScale(this._opt.scale).reverse()\n }\n\n getTimeLine(): gsap.core.Timeline {\n return this._tl\n }\n}"],"mappings":"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"}
@@ -3,9 +3,11 @@ import type { GrowOption, IGrowStyle } from './type';
3
3
  export declare class GrowStyleUp implements IGrowStyle {
4
4
  private _objs;
5
5
  private _opt;
6
+ private _tl;
6
7
  private maxDistance;
7
8
  constructor(objs: Array<Object3D>, opt: GrowOption);
8
9
  init(): void;
9
10
  in(): void;
10
11
  out(): void;
12
+ getTimeLine(): gsap.core.Timeline;
11
13
  }
@@ -6,20 +6,17 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
6
6
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
7
7
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
8
8
  import { MathUtils, Vector3, gsap } from '@anov/3d-core';
9
- // 私有变量reverse无效, 可能是GASP内部机制造成,还未解决!。
10
- var tl;
11
9
  // 向上生长
12
10
  export var GrowStyleUp = /*#__PURE__*/function () {
13
- // private _tl:gsap.core.Timeline
14
-
15
11
  function GrowStyleUp(objs, opt) {
16
12
  _classCallCheck(this, GrowStyleUp);
17
13
  _defineProperty(this, "_objs", void 0);
18
14
  _defineProperty(this, "_opt", void 0);
15
+ _defineProperty(this, "_tl", void 0);
19
16
  _defineProperty(this, "maxDistance", void 0);
20
17
  this._objs = objs;
21
18
  this._opt = opt;
22
- // this._tl = gsap.timeline();
19
+ this._tl = null; // gsap.timeline()
23
20
  this.maxDistance = 0;
24
21
  }
25
22
 
@@ -28,16 +25,20 @@ export var GrowStyleUp = /*#__PURE__*/function () {
28
25
  key: "init",
29
26
  value: function init() {
30
27
  var _this = this;
28
+ this._tl = gsap.timeline();
31
29
  var max = this._opt.gapTime + this._opt.time;
30
+ // 统一为Vector3
31
+ if (Array.isArray(this._opt.center)) this._opt.center = new Vector3().fromArray(this._opt.center);
32
+ // 找到对象最远距离
32
33
  this._objs.map(function (obj) {
33
- // 统一为Vector3
34
- if (Array.isArray(_this._opt.center)) _this._opt.center = new Vector3().fromArray(_this._opt.center);
35
- // 找到对象最远距离
36
34
  var distance = Math.abs(obj.position.distanceTo(_this._opt.center));
35
+ obj.userData.growDistance = distance;
36
+ obj.userData.growY = obj.position.y;
37
37
  if (distance > _this.maxDistance) _this.maxDistance = distance;
38
-
38
+ });
39
+ this._objs.map(function (obj) {
39
40
  // 计算排序延迟
40
- obj.userData.growDelay = MathUtils.lerp(0, max, distance / _this.maxDistance);
41
+ obj.userData.growDelay = MathUtils.lerp(0, max, obj.userData.growDistance / _this.maxDistance);
41
42
  // 距离
42
43
  obj.position.y -= _this._opt.distance;
43
44
  // 旋转
@@ -45,34 +46,30 @@ export var GrowStyleUp = /*#__PURE__*/function () {
45
46
  // 缩放
46
47
  _this._opt.isScale && obj.scale.set(obj.scale.x * 0.1, obj.scale.y * 0.1, obj.scale.z * 0.1);
47
48
  });
48
- this._opt.onGrowInit && this._opt.onGrowInit();
49
49
  }
50
50
  }, {
51
51
  key: "in",
52
52
  value: function _in() {
53
53
  var _this2 = this;
54
- this._opt.onGrowInStart && this._opt.onGrowInStart();
55
- tl = gsap.timeline({
56
- onComplete: this._opt.onGrowInCompleted,
57
- onReverseComplete: this._opt.onGrowOutCompleted
58
- });
54
+ this._tl.clear();
55
+ // this._tl = gsap.timeline({ onComplete: this._opt.onGrowInCompleted, onReverseComplete: this._opt.onGrowOutCompleted })
59
56
  this._objs.map(function (obj) {
60
- // 距离
61
- tl.add(gsap.to(obj.position, {
57
+ // 距离1
58
+ _this2._tl.add(gsap.to(obj.position, {
62
59
  y: obj.position.y + _this2._opt.distance,
63
60
  duration: _this2._opt.time,
64
61
  ease: _this2._opt.ease,
65
62
  delay: obj.userData.growDelay
66
63
  }), 0);
67
64
  // 旋转
68
- if (_this2._opt.isRotate) tl.add(gsap.to(obj.rotation, {
65
+ if (_this2._opt.isRotate) _this2._tl.add(gsap.to(obj.rotation, {
69
66
  y: 0,
70
67
  duration: _this2._opt.time,
71
68
  ease: _this2._opt.ease,
72
69
  delay: obj.userData.growDelay
73
70
  }), 0);
74
71
  // 缩放
75
- if (_this2._opt.isScale) tl.add(gsap.to(obj.scale, {
72
+ if (_this2._opt.isScale) _this2._tl.add(gsap.to(obj.scale, {
76
73
  x: 1,
77
74
  y: 1,
78
75
  z: 1,
@@ -81,12 +78,17 @@ export var GrowStyleUp = /*#__PURE__*/function () {
81
78
  delay: obj.userData.growDelay
82
79
  }), 0);
83
80
  });
81
+ this._tl.play(0, false);
84
82
  }
85
83
  }, {
86
84
  key: "out",
87
85
  value: function out() {
88
- this._opt.onGrowOutStart && this._opt.onGrowOutStart();
89
- tl.timeScale(this._opt.scale).reverse();
86
+ this._tl.timeScale(this._opt.scale).reverse();
87
+ }
88
+ }, {
89
+ key: "getTimeLine",
90
+ value: function getTimeLine() {
91
+ return this._tl;
90
92
  }
91
93
  }]);
92
94
  return GrowStyleUp;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["MathUtils","Vector3","gsap","GrowStyleUp","objs","opt","_objs","_opt","_tl","maxDistance","timeline","max","gapTime","time","Array","isArray","center","fromArray","map","obj","distance","Math","abs","position","distanceTo","userData","growDistance","growY","y","growDelay","lerp","isRotate","rotateY","degToRad","isScale","scale","set","x","z","clear","add","to","duration","ease","delay","rotation","play","timeScale","reverse"],"sources":["../../../src/scene/grow/style_up.ts"],"sourcesContent":["import type { Object3D } from '@anov/3d-core'\nimport { MathUtils, Vector3, gsap, use } from '@anov/3d-core'\nimport type { GrowOption, IGrowStyle } from './type'\n\n// 向上生长\nexport class GrowStyleUp implements IGrowStyle {\n private _objs: Array<Object3D>\n private _opt: GrowOption\n private _tl: gsap.core.Timeline\n private maxDistance: number\n\n constructor(objs: Array<Object3D>, opt: GrowOption) {\n this._objs = objs\n this._opt = opt\n this._tl = null // gsap.timeline()\n this.maxDistance = 0\n }\n\n // 对象初始化\n init(): void {\n this._tl = gsap.timeline()\n\n const max = this._opt.gapTime + this._opt.time\n // 统一为Vector3\n if (Array.isArray(this._opt.center))\n this._opt.center = new Vector3().fromArray(this._opt.center as number[])\n // 找到对象最远距离\n this._objs.map((obj) => {\n const distance = Math.abs(obj.position.distanceTo(this._opt.center as Vector3))\n obj.userData.growDistance = distance\n obj.userData.growY = obj.position.y\n if (distance > this.maxDistance)\n this.maxDistance = distance\n })\n\n this._objs.map((obj) => {\n // 计算排序延迟\n obj.userData.growDelay = MathUtils.lerp(0, max, obj.userData.growDistance / this.maxDistance)\n // 距离\n obj.position.y -= this._opt.distance\n // 旋转\n this._opt.isRotate && obj.rotateY(MathUtils.degToRad(270))\n // 缩放\n this._opt.isScale && obj.scale.set(obj.scale.x * 0.1, obj.scale.y * 0.1, obj.scale.z * 0.1)\n })\n }\n\n in(): void {\n this._tl.clear()\n // this._tl = gsap.timeline({ onComplete: this._opt.onGrowInCompleted, onReverseComplete: this._opt.onGrowOutCompleted })\n this._objs.map((obj) => {\n // 距离1\n this._tl.add(gsap.to(obj.position, { y: obj.position.y + this._opt.distance, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n // 旋转\n if (this._opt.isRotate)\n this._tl.add(gsap.to(obj.rotation, { y: 0, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n // 缩放\n if (this._opt.isScale)\n this._tl.add(gsap.to(obj.scale, { x: 1, y: 1, z: 1, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n })\n this._tl.play(0, false)\n }\n\n out(): void {\n this._tl.timeScale(this._opt.scale).reverse()\n }\n\n getTimeLine(): gsap.core.Timeline {\n return this._tl\n }\n}"],"mappings":"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"}
@@ -3,19 +3,20 @@ export interface IGrowStyle {
3
3
  init(): void;
4
4
  in(): void;
5
5
  out(): void;
6
+ getTimeLine(): gsap.core.Timeline;
6
7
  }
7
8
  export interface GrowOption {
8
- tag: string;
9
- type: ESceneGrowType;
10
- time: number;
11
- gapTime: number;
12
- ease: string;
13
- center: Vector3 | Array<number>;
14
- scale: number;
15
- distance: number;
16
- isRotate: boolean;
17
- isScale: boolean;
18
- onGrowInit?(): void;
9
+ tag?: string;
10
+ type?: ESceneGrowType;
11
+ time?: number;
12
+ gapTime?: number;
13
+ ease?: string;
14
+ center?: Vector3 | Array<number> | null;
15
+ scale?: number;
16
+ distance?: number;
17
+ isRotate?: boolean;
18
+ isScale?: boolean;
19
+ onGrowInitCompleted?(): void;
19
20
  onGrowInStart?(): void;
20
21
  onGrowInCompleted?(): void;
21
22
  onGrowOutStart?(): void;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ESceneGrowType","EEaseType","Linear","SineIn","SineOut","SineInOut","BackIn","BackOut","BackInOut","BounceIn","BounceOut","BounceInOut","ExpoIn","ExpoOut","ExpoInOut","ElasticIn","ElasticOut","ElasticInOut"],"sources":["../../../src/scene/grow/type.ts"],"sourcesContent":["import type { Vector3, gsap } from '@anov/3d-core'\n\nexport interface IGrowStyle {\n init(): void\n in(): void\n out(): void\n getTimeLine(): gsap.core.Timeline\n}\n\nexport interface GrowOption {\n tag?: string // 可选,进场对象Tag, 默认 \"*\" 所有对象,\n type?: ESceneGrowType // 可选,进场动画类型,默认 ESceneGrowType.Up向上生长\n time?: number // 可选,单对象进场时间,默认0.5秒\n gapTime?: number // 可选,多个对象之间间隔事件,默认0.2秒\n ease?: string // 可选,默认缓入缓出\n center?: Vector3 | Array<number> | null // 可选,生长中心位置,默认[0,0,0]\n scale?: number // 可选,出场倍数,是进场时间的几倍,默认为1, 注意:进场无效。\n distance?: number // 可选,初始化UP/DOWN起始距离,默认1000\n isRotate?: boolean // 可选,初始化UP/DOWN起始旋转角度,默认270\n isScale?: boolean // 可选,初始化UP/DOWN起始缩放大小,默认0.1\n onGrowInitCompleted?(): void // 可选,初始化\n onGrowInStart?(): void // 可选,生长开始回调\n onGrowInCompleted?(): void // 可选,生长完成回调\n onGrowOutStart?(): void // 可选,消失开始回调\n onGrowOutCompleted?(): void // 可选,消失完成回调\n}\n\n// 生长动画类型\nexport enum ESceneGrowType {\n Up,\n Down,\n}\n\n// 动画ease类型\nexport const EEaseType = {\n Linear: 'none', // 均速\n SineIn: 'sine.in', // 缓入\n SineOut: 'sine.out', // 缓出\n SineInOut: 'sine.inOut', // 缓入缓出\n BackIn: 'back.in(1.7)', // 回退入\n BackOut: 'back.out(1.7)', // 回退出\n BackInOut: 'back.inOut(1.7)', // 回退入回退出\n BounceIn: 'bounce.in', // 硬弹跳入,步伐越来越大,类似三级跳远,\n BounceOut: 'bounce.out', // 硬弹跳出,步伐越来越小,类似乒乓球掉落到停止\n BounceInOut: 'bounce.inOut', // 弹跳入弹跳出\n ExpoIn: 'expo.in', // 缓入, 类似SineIn * 4倍效果\n ExpoOut: 'expo.out', // 缓出, 类似SineOut * 4倍效果\n ExpoInOut: 'expo.inOut', // 缓入缓出, 类似SineInOut * 4倍效果\n ElasticIn: 'elastic.in(1,0.3)', // 弹入,软回弹,类似橡胶\n ElasticOut: 'elastic.out(1,0.3)', // 弹出,软回弹,类似橡胶\n ElasticInOut: 'elastic.inOut(1,0.3)', // 弹入弹出,软回弹,类似橡胶\n}"],"mappings":"AA2BA;AACA,WAAYA,cAAc;;AAK1B;AAAA,WALYA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;AAAA,GAAdA,cAAc,KAAdA,cAAc;AAM1B,OAAO,IAAMC,SAAS,GAAG;EACvBC,MAAM,EAAE,MAAM;EAAE;EAChBC,MAAM,EAAE,SAAS;EAAE;EACnBC,OAAO,EAAE,UAAU;EAAE;EACrBC,SAAS,EAAE,YAAY;EAAE;EACzBC,MAAM,EAAE,cAAc;EAAE;EACxBC,OAAO,EAAE,eAAe;EAAE;EAC1BC,SAAS,EAAE,iBAAiB;EAAE;EAC9BC,QAAQ,EAAE,WAAW;EAAE;EACvBC,SAAS,EAAE,YAAY;EAAE;EACzBC,WAAW,EAAE,cAAc;EAAE;EAC7BC,MAAM,EAAE,SAAS;EAAE;EACnBC,OAAO,EAAE,UAAU;EAAE;EACrBC,SAAS,EAAE,YAAY;EAAE;EACzBC,SAAS,EAAE,mBAAmB;EAAE;EAChCC,UAAU,EAAE,oBAAoB;EAAE;EAClCC,YAAY,EAAE,sBAAsB,CAAE;AACxC,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './grow';
@@ -0,0 +1,2 @@
1
+ export * from "./grow";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/scene/index.ts"],"sourcesContent":["export * from './grow'"],"mappings":"AAAA"}
@@ -0,0 +1 @@
1
+ export declare const getLastValue: <T>(optsValue: T | null | undefined, value: T) => T;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anov/3d-ability",
3
- "version": "0.0.4-alpha7",
3
+ "version": "0.0.4-alpha8",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "license": "MIT",
@@ -17,9 +17,16 @@
17
17
  ],
18
18
  "dependencies": {
19
19
  "@types/suncalc": "^1.9.2",
20
+ "anov-heat-map": "^0.0.1",
21
+ "gsap": "^3.12.5",
20
22
  "postprocessing": "^6.33.3",
21
- "suncalc": "^1.9.0",
22
- "@anov/3d-core": "^0.0.4-alpha18"
23
+ "suncalc": "^1.9.0"
24
+ },
25
+ "devDependencies": {
26
+ "@anov/3d-core": "^0.0.4-alpha19"
27
+ },
28
+ "peerDependencies": {
29
+ "@anov/3d-core": "^0.0.4-alpha19"
23
30
  },
24
31
  "scripts": {
25
32
  "build": "father build",
@@ -1,10 +0,0 @@
1
- import type { GrowOption } from './type';
2
- export declare class Grow {
3
- private objs;
4
- private option;
5
- private growStyle;
6
- constructor(opt: GrowOption);
7
- in(): void;
8
- out(): void;
9
- _init(): void;
10
- }
@@ -1 +0,0 @@
1
- {"version":3,"names":["Object3D","Vector3","use","EEaseType","ESceneGrowType","GrowStyleDown","GrowStyleUp","Grow","opt","objs","option","tag","type","Up","time","gapTime","ease","SineInOut","center","scale","distance","isRotate","isScale","Object","assign","growStyle","_init","in","out","useScene","scene","traverseVisible","object","push","userData","Array","isArray","includes","Down","init"],"sources":["../../../src/animation/grow/grow.ts"],"sourcesContent":["import { Object3D, Vector3, gsap, use } from '@anov/3d-core'\nimport type { GrowOption, IGrowStyle } from './type'\nimport { EEaseType, ESceneGrowType } from './type'\nimport { GrowStyleDown, GrowStyleUp } from './growStyle'\n\n// 生长动画对象\nexport class Grow {\n private objs: Array<Object3D>\n private option: GrowOption\n private growStyle: IGrowStyle\n\n constructor(opt: GrowOption) {\n this.objs = []\n this.option = {\n tag: '*', // 可选,进场对象Tag, 默认 \"*\" 所有可见MESH对象,\n type: ESceneGrowType.Up, // 可选,进场动画类型,默认 ESceneGrowType.Up向上生长\n time: 0.5, // 可选,单对象进场时间,默认0.5秒\n gapTime: 0.2, // 可选,多个对象之间间隔事件,默认0.2秒\n ease: EEaseType.SineInOut, // 可选,默认缓入缓出\n center: new Vector3(0, 0, 0), // 可选,生长中心位置,默认[0,0,0]\n scale: 1, // 可选,倍速,默认为1。\n distance: 1000, // 可选,初始化UP/DOWN起始距离,默认1000\n isRotate: true, // 可选,初始化UP/DOWN起始旋转角度,默认true\n isScale: true, // 可选,初始化UP/DOWN起始缩放大小,默认true\n }\n Object.assign(this.option, opt || {})\n this.growStyle = new GrowStyleUp(this.objs, this.option)\n this._init()\n }\n\n // 生长\n in() {\n this.growStyle.in()\n }\n\n // 消退\n out() {\n this.growStyle.out()\n }\n\n // 初始化\n _init() {\n // ------- 1.初始化目标对象 --------\n // 获取所有对象\n if (this.option.tag === '*') {\n use.useScene().scene!.traverseVisible((object) => {\n if (object instanceof Object3D)\n this.objs.push(object)\n })\n }\n else { // 获取指定tag对象\n use.useScene().scene!.traverseVisible((object) => {\n if (object instanceof Object3D && object.userData.tag && Array.isArray(object.userData.tag) && object.userData.tag.includes(this.option.tag))\n this.objs.push(object)\n })\n }\n // ------- 2.初始化目标对象 生长前状态 --------\n switch (this.option.type) {\n case ESceneGrowType.Up:\n this.growStyle = new GrowStyleUp(this.objs, this.option)\n break\n case ESceneGrowType.Down:\n this.growStyle = new GrowStyleDown(this.objs, this.option)\n break\n default:\n this.growStyle = new GrowStyleUp(this.objs, this.option)\n break\n }\n this.growStyle.init()\n }\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["GrowStyleDown","GrowStyleUp"],"sources":["../../../src/animation/grow/growStyle.ts"],"sourcesContent":["export { GrowStyleDown } from './style_down'\nexport { GrowStyleUp } from './style_up'\n"],"mappings":"AAAA,SAASA,aAAa;AACtB,SAASC,WAAW"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["Grow"],"sources":["../../../src/animation/grow/index.ts"],"sourcesContent":["export * from './type'\nexport { Grow } from './grow'\n"],"mappings":"AAAA;AACA,SAASA,IAAI"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["MathUtils","Vector3","gsap","tl","GrowStyleDown","objs","opt","_objs","_opt","maxDistance","max","gapTime","time","map","obj","Array","isArray","center","fromArray","distance","Math","abs","position","distanceTo","userData","growDelay","lerp","y","isRotate","rotateY","degToRad","isScale","scale","set","x","z","onGrowInit","onGrowInStart","timeline","onComplete","onGrowInCompleted","onReverseComplete","onGrowOutCompleted","add","to","duration","ease","delay","rotation","onGrowOutStart","timeScale","reverse"],"sources":["../../../src/animation/grow/style_down.ts"],"sourcesContent":["import type { Object3D } from '@anov/3d-core'\nimport { MathUtils, Vector3, gsap, use } from '@anov/3d-core'\nimport type { GrowOption, IGrowStyle } from './type'\n\n// 私有变量reverse无效, 可能是GASP内部机制造成,还未解决!。\nlet tl: gsap.core.Timeline\n// 向下掉落\nexport class GrowStyleDown implements IGrowStyle {\n private _objs: Array<Object3D>\n private _opt: GrowOption\n // private _tl:gsap.core.Timeline\n private maxDistance: number\n\n constructor(objs: Array<Object3D>, opt: GrowOption) {\n this._objs = objs\n this._opt = opt\n // this._tl = gsap.timeline();\n this.maxDistance = 0\n }\n\n // 对象初始化\n init(): void {\n const max = this._opt.gapTime + this._opt.time\n\n this._objs.map((obj) => {\n // 统一为Vector3\n if (Array.isArray(this._opt.center))\n this._opt.center = new Vector3().fromArray(this._opt.center as number[])\n // 找到对象最远距离\n const distance = Math.abs(obj.position.distanceTo(this._opt.center))\n if (distance > this.maxDistance)\n this.maxDistance = distance\n\n // 计算排序延迟\n obj.userData.growDelay = MathUtils.lerp(0, max, distance / this.maxDistance)\n // 距离\n obj.position.y += this._opt.distance\n // 旋转\n this._opt.isRotate && obj.rotateY(MathUtils.degToRad(270))\n // 缩放\n this._opt.isScale && obj.scale.set(obj.scale.x * 0.1, obj.scale.y * 0.1, obj.scale.z * 0.1)\n })\n\n this._opt.onGrowInit && this._opt.onGrowInit()\n }\n\n in(): void {\n this._opt.onGrowInStart && this._opt.onGrowInStart()\n\n tl = gsap.timeline({ onComplete: this._opt.onGrowInCompleted, onReverseComplete: this._opt.onGrowOutCompleted })\n\n this._objs.map((obj) => {\n tl.add(gsap.to(obj.position, { y: obj.position.y - this._opt.distance, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n if (this._opt.isRotate)\n tl.add(gsap.to(obj.rotation, { y: 0, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n if (this._opt.isScale)\n tl.add(gsap.to(obj.scale, { x: 1, y: 1, z: 1, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n })\n }\n\n out(): void {\n this._opt.onGrowOutStart && this._opt.onGrowOutStart()\n tl.timeScale(this._opt.scale).reverse()\n }\n}"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["MathUtils","Vector3","gsap","tl","GrowStyleUp","objs","opt","_objs","_opt","maxDistance","max","gapTime","time","map","obj","Array","isArray","center","fromArray","distance","Math","abs","position","distanceTo","userData","growDelay","lerp","y","isRotate","rotateY","degToRad","isScale","scale","set","x","z","onGrowInit","onGrowInStart","timeline","onComplete","onGrowInCompleted","onReverseComplete","onGrowOutCompleted","add","to","duration","ease","delay","rotation","onGrowOutStart","timeScale","reverse"],"sources":["../../../src/animation/grow/style_up.ts"],"sourcesContent":["import type { Object3D } from '@anov/3d-core'\nimport { MathUtils, Vector3, gsap, use } from '@anov/3d-core'\nimport type { GrowOption, IGrowStyle } from './type'\n\n// 私有变量reverse无效, 可能是GASP内部机制造成,还未解决!。\nlet tl: gsap.core.Timeline\n// 向上生长\nexport class GrowStyleUp implements IGrowStyle {\n private _objs: Array<Object3D>\n private _opt: GrowOption\n // private _tl:gsap.core.Timeline\n private maxDistance: number\n\n constructor(objs: Array<Object3D>, opt: GrowOption) {\n this._objs = objs\n this._opt = opt\n // this._tl = gsap.timeline();\n this.maxDistance = 0\n }\n\n // 对象初始化\n init(): void {\n const max = this._opt.gapTime + this._opt.time\n\n this._objs.map((obj) => {\n // 统一为Vector3\n if (Array.isArray(this._opt.center))\n this._opt.center = new Vector3().fromArray(this._opt.center as number[])\n // 找到对象最远距离\n const distance = Math.abs(obj.position.distanceTo(this._opt.center))\n if (distance > this.maxDistance)\n this.maxDistance = distance\n\n // 计算排序延迟\n obj.userData.growDelay = MathUtils.lerp(0, max, distance / this.maxDistance)\n // 距离\n obj.position.y -= this._opt.distance\n // 旋转\n this._opt.isRotate && obj.rotateY(MathUtils.degToRad(270))\n // 缩放\n this._opt.isScale && obj.scale.set(obj.scale.x * 0.1, obj.scale.y * 0.1, obj.scale.z * 0.1)\n })\n\n this._opt.onGrowInit && this._opt.onGrowInit()\n }\n\n in(): void {\n this._opt.onGrowInStart && this._opt.onGrowInStart()\n\n tl = gsap.timeline({ onComplete: this._opt.onGrowInCompleted, onReverseComplete: this._opt.onGrowOutCompleted })\n\n this._objs.map((obj) => {\n // 距离\n tl.add(gsap.to(obj.position, { y: obj.position.y + this._opt.distance, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n // 旋转\n if (this._opt.isRotate)\n tl.add(gsap.to(obj.rotation, { y: 0, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n // 缩放\n if (this._opt.isScale)\n tl.add(gsap.to(obj.scale, { x: 1, y: 1, z: 1, duration: this._opt.time, ease: this._opt.ease, delay: obj.userData.growDelay }), 0)\n })\n }\n\n out(): void {\n this._opt.onGrowOutStart && this._opt.onGrowOutStart()\n tl.timeScale(this._opt.scale).reverse()\n }\n}"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["ESceneGrowType","EEaseType","Linear","SineIn","SineOut","SineInOut","BackIn","BackOut","BackInOut","BounceIn","BounceOut","BounceInOut","ExpoIn","ExpoOut","ExpoInOut","ElasticIn","ElasticOut","ElasticInOut"],"sources":["../../../src/animation/grow/type.ts"],"sourcesContent":["import type { Vector3 } from '@anov/3d-core'\n\nexport interface IGrowStyle {\n init(): void\n in(): void\n out(): void\n}\n\nexport interface GrowOption {\n tag: string // 可选,进场对象Tag, 默认 \"*\" 所有对象,\n type: ESceneGrowType // 可选,进场动画类型,默认 ESceneGrowType.Up向上生长\n time: number // 可选,单对象进场时间,默认0.5秒\n gapTime: number // 可选,多个对象之间间隔事件,默认0.2秒\n ease: string // 可选,默认缓入缓出\n center: Vector3 | Array<number> // 可选,生长中心位置,默认[0,0,0]\n scale: number // 可选,出场倍数,是进场时间的几倍,默认为1, 注意:进场无效。\n distance: number // 可选,初始化UP/DOWN起始距离,默认1000\n isRotate: boolean // 可选,初始化UP/DOWN起始旋转角度,默认270\n isScale: boolean // 可选,初始化UP/DOWN起始缩放大小,默认0.1\n onGrowInit?(): void // 可选,初始化\n onGrowInStart?(): void // 可选,生长开始回调\n onGrowInCompleted?(): void // 可选,生长完成回调\n onGrowOutStart?(): void // 可选,消失开始回调\n onGrowOutCompleted?(): void // 可选,消失完成回调\n}\n\n// 生长动画类型\nexport enum ESceneGrowType {\n Up,\n Down,\n}\n\n// 动画ease类型\nexport const EEaseType = {\n Linear: 'none', // 均速\n SineIn: 'sine.in', // 缓入\n SineOut: 'sine.out', // 缓出\n SineInOut: 'sine.inOut', // 缓入缓出\n BackIn: 'back.in(1.7)', // 回退入\n BackOut: 'back.out(1.7)', // 回退出\n BackInOut: 'back.inOut(1.7)', // 回退入回退出\n BounceIn: 'bounce.in', // 硬弹跳入,步伐越来越大,类似三级跳远,\n BounceOut: 'bounce.out', // 硬弹跳出,步伐越来越小,类似乒乓球掉落到停止\n BounceInOut: 'bounce.inOut', // 弹跳入弹跳出\n ExpoIn: 'expo.in', // 缓入, 类似SineIn * 4倍效果\n ExpoOut: 'expo.out', // 缓出, 类似SineOut * 4倍效果\n ExpoInOut: 'expo.inOut', // 缓入缓出, 类似SineInOut * 4倍效果\n ElasticIn: 'elastic.in(1,0.3)', // 弹入,软回弹,类似橡胶\n ElasticOut: 'elastic.out(1,0.3)', // 弹出,软回弹,类似橡胶\n ElasticInOut: 'elastic.inOut(1,0.3)', // 弹入弹出,软回弹,类似橡胶\n}"],"mappings":"AA0BA;AACA,WAAYA,cAAc;;AAK1B;AAAA,WALYA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;AAAA,GAAdA,cAAc,KAAdA,cAAc;AAM1B,OAAO,IAAMC,SAAS,GAAG;EACvBC,MAAM,EAAE,MAAM;EAAE;EAChBC,MAAM,EAAE,SAAS;EAAE;EACnBC,OAAO,EAAE,UAAU;EAAE;EACrBC,SAAS,EAAE,YAAY;EAAE;EACzBC,MAAM,EAAE,cAAc;EAAE;EACxBC,OAAO,EAAE,eAAe;EAAE;EAC1BC,SAAS,EAAE,iBAAiB;EAAE;EAC9BC,QAAQ,EAAE,WAAW;EAAE;EACvBC,SAAS,EAAE,YAAY;EAAE;EACzBC,WAAW,EAAE,cAAc;EAAE;EAC7BC,MAAM,EAAE,SAAS;EAAE;EACnBC,OAAO,EAAE,UAAU;EAAE;EACrBC,SAAS,EAAE,YAAY;EAAE;EACzBC,SAAS,EAAE,mBAAmB;EAAE;EAChCC,UAAU,EAAE,oBAAoB;EAAE;EAClCC,YAAY,EAAE,sBAAsB,CAAE;AACxC,CAAC"}