@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.
- package/dist/animation/index.d.ts +0 -1
- package/dist/animation/index.js +1 -1
- package/dist/animation/index.js.map +1 -1
- package/dist/camera/index.d.ts +65 -0
- package/dist/camera/index.js +239 -0
- package/dist/camera/index.js.map +1 -0
- package/dist/city/flyinglead.d.ts +0 -0
- package/dist/city/radar.d.ts +0 -0
- package/dist/city/scanning.d.ts +0 -0
- package/dist/city/surroundLine.d.ts +0 -0
- package/dist/core/mouseDrawe.d.ts +2 -0
- package/dist/environment/cloud/cloud.d.ts +1 -0
- package/dist/environment/cloud/index.d.ts +7 -0
- package/dist/environment/rain.d.ts +20 -0
- package/dist/environment/rainShader/shader.d.ts +26 -0
- package/dist/environment/shaderCloud/cloudMaterial.d.ts +10 -0
- package/dist/environment/shaderCloud/shader.d.ts +5 -0
- package/dist/environment/sky/index.js +10 -13
- package/dist/environment/sky/index.js.map +1 -1
- package/dist/environment/skyBox/index.d.ts +41 -0
- package/dist/environment/skyBox/index.js +150 -0
- package/dist/environment/skyBox/index.js.map +1 -0
- package/dist/environment/snow.js +2 -0
- package/dist/environment/snow.js.map +1 -1
- package/dist/environment/sun/index.d.ts +13 -0
- package/dist/environment/volumetricCloud/cloudMaterial.d.ts +3 -0
- package/dist/environment/volumetricCloud/inex.d.ts +8 -0
- package/dist/heatmap/index.d.ts +9 -0
- package/dist/heatmap/index.js +138 -0
- package/dist/heatmap/index.js.map +1 -0
- package/dist/helper/view/index.d.ts +40 -0
- package/dist/helper/view/utils.d.ts +6 -0
- package/dist/index.d.ts +8 -4
- package/dist/index.js +8 -4
- package/dist/index.js.map +1 -1
- package/dist/line/curve.d.ts +33 -0
- package/dist/line/curve.js +71 -0
- package/dist/line/curve.js.map +1 -0
- package/dist/line/index.d.ts +0 -0
- package/dist/line/index.js +2 -0
- package/dist/line/index.js.map +1 -0
- package/dist/line/round-curve.d.ts +19 -0
- package/dist/line/round-curve.js +212 -0
- package/dist/line/round-curve.js.map +1 -0
- package/dist/material/finirMaterialMaterial/index.d.ts +9 -0
- package/dist/material/finirMaterialMaterial/index.js +47 -0
- package/dist/material/finirMaterialMaterial/index.js.map +1 -0
- package/dist/material/pristineGridMaterial/index.d.ts +20 -0
- package/dist/material/pristineGridMaterial/shader/fragment.d.ts +2 -0
- package/dist/material/pristineGridMaterial/shader/vertex.d.ts +2 -0
- package/dist/poi/core/Base.d.ts +7 -0
- package/dist/poi/core/Base.js +24 -0
- package/dist/poi/core/Base.js.map +1 -0
- package/dist/poi/core/Css2D.d.ts +20 -0
- package/dist/poi/core/Css2D.js +181 -0
- package/dist/poi/core/Css2D.js.map +1 -0
- package/dist/poi/core/Css3D.d.ts +1 -0
- package/dist/poi/core/Css3D.js +24 -0
- package/dist/poi/core/Css3D.js.map +1 -0
- package/dist/poi/core/Sprite.d.ts +11 -0
- package/dist/poi/core/Sprite.js +134 -0
- package/dist/poi/core/Sprite.js.map +1 -0
- package/dist/poi/core/SpriteBase.d.ts +11 -0
- package/dist/poi/core/SpriteBase.js +58 -0
- package/dist/poi/core/SpriteBase.js.map +1 -0
- package/dist/poi/index.d.ts +9 -16
- package/dist/poi/index.js +11 -96
- package/dist/poi/index.js.map +1 -1
- package/dist/poi/utils/base64.d.ts +3 -0
- package/dist/poi/utils/base64.js +4 -0
- package/dist/poi/utils/base64.js.map +1 -0
- package/dist/poi/utils/canvas.d.ts +3 -0
- package/dist/poi/utils/canvas.js +68 -0
- package/dist/poi/utils/canvas.js.map +1 -0
- package/dist/poi/utils/css.d.ts +35 -0
- package/dist/poi/utils/css.js +41 -0
- package/dist/poi/utils/css.js.map +1 -0
- package/dist/poi/utils/type.d.ts +35 -0
- package/dist/poi/utils/type.js +39 -0
- package/dist/poi/utils/type.js.map +1 -0
- package/dist/poiBack/assets.js.map +1 -0
- package/dist/poiBack/dom.js.map +1 -0
- package/dist/poiBack/index.d.ts +19 -0
- package/dist/poiBack/index.js +145 -0
- package/dist/poiBack/index.js.map +1 -0
- package/dist/poiBack/type.js.map +1 -0
- package/dist/postEffects/bloomPass.d.ts +5 -0
- package/dist/postEffects/index.d.ts +11 -0
- package/dist/postEffects/outlinePass.d.ts +16 -0
- package/dist/postEffects/outlinePass.js +7 -1
- package/dist/postEffects/outlinePass.js.map +1 -1
- package/dist/scene/grow/grow.d.ts +10 -0
- package/dist/{animation → scene}/grow/grow.js +66 -33
- package/dist/scene/grow/grow.js.map +1 -0
- package/dist/scene/grow/growStyle.js.map +1 -0
- package/dist/scene/grow/index.js.map +1 -0
- package/dist/{animation → scene}/grow/style_down.d.ts +2 -0
- package/dist/{animation → scene}/grow/style_down.js +22 -21
- package/dist/scene/grow/style_down.js.map +1 -0
- package/dist/{animation → scene}/grow/style_up.d.ts +2 -0
- package/dist/{animation → scene}/grow/style_up.js +24 -22
- package/dist/scene/grow/style_up.js.map +1 -0
- package/dist/{animation → scene}/grow/type.d.ts +12 -11
- package/dist/scene/grow/type.js.map +1 -0
- package/dist/scene/index.d.ts +1 -0
- package/dist/scene/index.js +2 -0
- package/dist/scene/index.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/package.json +10 -3
- package/dist/animation/grow/grow.d.ts +0 -10
- package/dist/animation/grow/grow.js.map +0 -1
- package/dist/animation/grow/growStyle.js.map +0 -1
- package/dist/animation/grow/index.js.map +0 -1
- package/dist/animation/grow/style_down.js.map +0 -1
- package/dist/animation/grow/style_up.js.map +0 -1
- package/dist/animation/grow/type.js.map +0 -1
- package/dist/poi/assets.js.map +0 -1
- package/dist/poi/dom.js.map +0 -1
- package/dist/poi/type.js.map +0 -1
- /package/dist/{poi → poiBack}/assets.d.ts +0 -0
- /package/dist/{poi → poiBack}/assets.js +0 -0
- /package/dist/{poi → poiBack}/dom.d.ts +0 -0
- /package/dist/{poi → poiBack}/dom.js +0 -0
- /package/dist/{poi → poiBack}/type.d.ts +0 -0
- /package/dist/{poi → poiBack}/type.js +0 -0
- /package/dist/{animation → scene}/grow/growStyle.d.ts +0 -0
- /package/dist/{animation → scene}/grow/growStyle.js +0 -0
- /package/dist/{animation → scene}/grow/index.d.ts +0 -0
- /package/dist/{animation → scene}/grow/index.js +0 -0
- /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
|
-
|
|
22
|
-
|
|
23
|
-
|
|
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: "
|
|
64
|
-
value: function
|
|
65
|
-
var
|
|
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)
|
|
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(
|
|
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
|
-
|
|
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,
|
|
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.
|
|
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
|
-
|
|
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)
|
|
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)
|
|
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.
|
|
86
|
-
|
|
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
|
-
|
|
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,
|
|
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.
|
|
55
|
-
|
|
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
|
-
|
|
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)
|
|
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)
|
|
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.
|
|
89
|
-
|
|
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
|
|
9
|
-
type
|
|
10
|
-
time
|
|
11
|
-
gapTime
|
|
12
|
-
ease
|
|
13
|
-
center
|
|
14
|
-
scale
|
|
15
|
-
distance
|
|
16
|
-
isRotate
|
|
17
|
-
isScale
|
|
18
|
-
|
|
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 @@
|
|
|
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-
|
|
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
|
-
|
|
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 +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"}
|