@galacean/effects-threejs 2.1.0-alpha.5 → 2.1.0-alpha.6
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/index.js +1831 -232
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +2 -2
- package/dist/index.min.js.map +1 -1
- package/dist/index.mjs +1832 -230
- package/dist/index.mjs.map +1 -1
- package/dist/three-display-object.d.ts +4 -3
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Description: Galacean Effects runtime threejs plugin for the web
|
|
4
4
|
* Author: Ant Group CO., Ltd.
|
|
5
5
|
* Contributors: 燃然,飂兮,十弦,云垣,茂安,意绮
|
|
6
|
-
* Version: v2.1.0-alpha.
|
|
6
|
+
* Version: v2.1.0-alpha.6
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
'use strict';
|
|
@@ -3972,6 +3972,12 @@ Euler.tempMat0 = new Matrix4();
|
|
|
3972
3972
|
/**
|
|
3973
3973
|
* 节点元素
|
|
3974
3974
|
*/ ItemType["node"] = "node";
|
|
3975
|
+
/**
|
|
3976
|
+
* 视频元素
|
|
3977
|
+
*/ ItemType["video"] = "video";
|
|
3978
|
+
/**
|
|
3979
|
+
* 音频元素
|
|
3980
|
+
*/ ItemType["audio"] = "audio";
|
|
3975
3981
|
})(ItemType || (ItemType = {}));
|
|
3976
3982
|
/**
|
|
3977
3983
|
* 渲染模式
|
|
@@ -4072,15 +4078,6 @@ var CameraClipMode;
|
|
|
4072
4078
|
*/ CameraClipMode[CameraClipMode["landscape"] = 0] = "landscape";
|
|
4073
4079
|
})(CameraClipMode || (CameraClipMode = {}));
|
|
4074
4080
|
|
|
4075
|
-
/**
|
|
4076
|
-
* 动态换图类型
|
|
4077
|
-
* @since 1.1.0
|
|
4078
|
-
*/ var BackgroundType;
|
|
4079
|
-
(function(BackgroundType) {
|
|
4080
|
-
BackgroundType["video"] = "video";
|
|
4081
|
-
BackgroundType["image"] = "image";
|
|
4082
|
-
})(BackgroundType || (BackgroundType = {}));
|
|
4083
|
-
|
|
4084
4081
|
/*********************************************/ /* 基本数值属性参数 */ /*********************************************/ var ValueType;
|
|
4085
4082
|
(function(ValueType) {
|
|
4086
4083
|
/**
|
|
@@ -4386,6 +4383,8 @@ var DataType;
|
|
|
4386
4383
|
DataType["TreeComponent"] = "TreeComponent";
|
|
4387
4384
|
DataType["AnimationComponent"] = "AnimationComponent";
|
|
4388
4385
|
DataType["SpineComponent"] = "SpineComponent";
|
|
4386
|
+
DataType["VideoComponent"] = "VideoComponent";
|
|
4387
|
+
DataType["AudioComponent"] = "AudioComponent";
|
|
4389
4388
|
// Non-EffectObject
|
|
4390
4389
|
DataType["TimelineClip"] = "TimelineClip";
|
|
4391
4390
|
})(DataType || (DataType = {}));
|
|
@@ -4475,10 +4474,28 @@ var VertexBufferSemantic;
|
|
|
4475
4474
|
|
|
4476
4475
|
var BuiltinObjectGUID = {
|
|
4477
4476
|
WhiteTexture: "whitetexture00000000000000000000",
|
|
4477
|
+
TransparentTexture: "transparenttexture00000000000000000000",
|
|
4478
4478
|
PBRShader: "pbr00000000000000000000000000000",
|
|
4479
4479
|
UnlitShader: "unlit000000000000000000000000000"
|
|
4480
4480
|
};
|
|
4481
4481
|
|
|
4482
|
+
/**
|
|
4483
|
+
* 动态换图类型
|
|
4484
|
+
* @since 1.1.0
|
|
4485
|
+
*/ var BackgroundType;
|
|
4486
|
+
(function(BackgroundType) {
|
|
4487
|
+
BackgroundType["video"] = "video";
|
|
4488
|
+
BackgroundType["image"] = "image";
|
|
4489
|
+
})(BackgroundType || (BackgroundType = {}));
|
|
4490
|
+
/**
|
|
4491
|
+
* 多媒体资源类型
|
|
4492
|
+
* @since 2.1.0
|
|
4493
|
+
*/ var MultimediaType;
|
|
4494
|
+
(function(MultimediaType) {
|
|
4495
|
+
MultimediaType["video"] = "video";
|
|
4496
|
+
MultimediaType["audio"] = "audio";
|
|
4497
|
+
})(MultimediaType || (MultimediaType = {}));
|
|
4498
|
+
|
|
4482
4499
|
var index$1 = /*#__PURE__*/Object.freeze({
|
|
4483
4500
|
__proto__: null,
|
|
4484
4501
|
get RenderLevel () { return RenderLevel; },
|
|
@@ -4495,7 +4512,6 @@ var index$1 = /*#__PURE__*/Object.freeze({
|
|
|
4495
4512
|
get RenderType () { return RenderType; },
|
|
4496
4513
|
get RenderFace () { return RenderFace; },
|
|
4497
4514
|
get CameraClipMode () { return CameraClipMode; },
|
|
4498
|
-
get BackgroundType () { return BackgroundType; },
|
|
4499
4515
|
END_BEHAVIOR_DESTROY: END_BEHAVIOR_DESTROY,
|
|
4500
4516
|
END_BEHAVIOR_PAUSE: END_BEHAVIOR_PAUSE,
|
|
4501
4517
|
END_BEHAVIOR_FORWARD: END_BEHAVIOR_FORWARD,
|
|
@@ -4529,7 +4545,9 @@ var index$1 = /*#__PURE__*/Object.freeze({
|
|
|
4529
4545
|
get VertexFormatType () { return VertexFormatType; },
|
|
4530
4546
|
get IndexFormatType () { return IndexFormatType; },
|
|
4531
4547
|
get VertexBufferSemantic () { return VertexBufferSemantic; },
|
|
4532
|
-
BuiltinObjectGUID: BuiltinObjectGUID
|
|
4548
|
+
BuiltinObjectGUID: BuiltinObjectGUID,
|
|
4549
|
+
get BackgroundType () { return BackgroundType; },
|
|
4550
|
+
get MultimediaType () { return MultimediaType; }
|
|
4533
4551
|
});
|
|
4534
4552
|
|
|
4535
4553
|
var decoratorInitialStore = new Map();
|
|
@@ -8192,11 +8210,11 @@ function _loadMedia() {
|
|
|
8192
8210
|
return _loadMedia.apply(this, arguments);
|
|
8193
8211
|
}
|
|
8194
8212
|
|
|
8195
|
-
function deserializeMipmapTexture(textureOptions, bins,
|
|
8213
|
+
function deserializeMipmapTexture(textureOptions, bins, assets) {
|
|
8196
8214
|
return _deserializeMipmapTexture.apply(this, arguments);
|
|
8197
8215
|
}
|
|
8198
8216
|
function _deserializeMipmapTexture() {
|
|
8199
|
-
_deserializeMipmapTexture = _async_to_generator(function(textureOptions, bins,
|
|
8217
|
+
_deserializeMipmapTexture = _async_to_generator(function(textureOptions, bins, assets, files) {
|
|
8200
8218
|
var mipmaps, target, jobs, loadedMipmaps, mipmaps1, target1, jobs1, loadedMipmaps1, bin;
|
|
8201
8219
|
return __generator(this, function(_state) {
|
|
8202
8220
|
switch(_state.label){
|
|
@@ -8212,9 +8230,8 @@ function _deserializeMipmapTexture() {
|
|
|
8212
8230
|
// @ts-expect-error
|
|
8213
8231
|
if (pointer.id) {
|
|
8214
8232
|
// @ts-expect-error
|
|
8215
|
-
var
|
|
8216
|
-
|
|
8217
|
-
return loadedImageAsset.data;
|
|
8233
|
+
var loadedImage = assets[pointer.id];
|
|
8234
|
+
return loadedImage;
|
|
8218
8235
|
} else {
|
|
8219
8236
|
return loadMipmapImage(pointer, bins);
|
|
8220
8237
|
}
|
|
@@ -8451,7 +8468,7 @@ var sourceOptions = {
|
|
|
8451
8468
|
};
|
|
8452
8469
|
function generateWhiteTexture(engine) {
|
|
8453
8470
|
return Texture.create(engine, _extends({
|
|
8454
|
-
id:
|
|
8471
|
+
id: BuiltinObjectGUID.WhiteTexture,
|
|
8455
8472
|
data: {
|
|
8456
8473
|
width: 1,
|
|
8457
8474
|
height: 1,
|
|
@@ -8467,7 +8484,7 @@ function generateWhiteTexture(engine) {
|
|
|
8467
8484
|
}
|
|
8468
8485
|
function generateTransparentTexture(engine) {
|
|
8469
8486
|
return Texture.create(engine, _extends({
|
|
8470
|
-
id:
|
|
8487
|
+
id: BuiltinObjectGUID.TransparentTexture,
|
|
8471
8488
|
data: {
|
|
8472
8489
|
width: 1,
|
|
8473
8490
|
height: 1,
|
|
@@ -10826,7 +10843,7 @@ exports.Shader = /*#__PURE__*/ function(EffectsObject) {
|
|
|
10826
10843
|
return Shader;
|
|
10827
10844
|
}(EffectsObject);
|
|
10828
10845
|
exports.Shader = __decorate([
|
|
10829
|
-
effectsClass(
|
|
10846
|
+
effectsClass(DataType.Shader)
|
|
10830
10847
|
], exports.Shader);
|
|
10831
10848
|
|
|
10832
10849
|
var EFFECTS_COPY_MESH_NAME = "effects-internal-copy";
|
|
@@ -12911,7 +12928,7 @@ var GPUCapability = /*#__PURE__*/ function() {
|
|
|
12911
12928
|
shaderTextureLod: level2 || !!gl.getExtension("EXT_shader_texture_lod"),
|
|
12912
12929
|
instanceDraw: level2 || !!gl.getExtension("ANGLE_instanced_arrays"),
|
|
12913
12930
|
drawBuffers: level2 || !!this.drawBufferExtension,
|
|
12914
|
-
asyncShaderCompile: !!
|
|
12931
|
+
asyncShaderCompile: !!this.glAsyncCompileExt,
|
|
12915
12932
|
intIndexElementBuffer: !!gl.getExtension("OES_element_index_uint"),
|
|
12916
12933
|
standardDerivatives: level2 || !!gl.getExtension("OES_standard_derivatives"),
|
|
12917
12934
|
readableDepthStencilTextures: level2 || !!depthTextureExtension,
|
|
@@ -15815,7 +15832,7 @@ function getGeometryTriangles(geometry, options) {
|
|
|
15815
15832
|
*/ function getGeometriesByShapeData(shape) {
|
|
15816
15833
|
var geometries = [];
|
|
15817
15834
|
// 该版本的单个形状数据可以包含多个形状,可以加个埋点,五福之后没有就可以下掉
|
|
15818
|
-
if (shape
|
|
15835
|
+
if ("gs" in shape) {
|
|
15819
15836
|
shape.gs.forEach(function(gs) {
|
|
15820
15837
|
geometries.push({
|
|
15821
15838
|
p: [
|
|
@@ -15828,7 +15845,7 @@ function getGeometryTriangles(geometry, options) {
|
|
|
15828
15845
|
]
|
|
15829
15846
|
});
|
|
15830
15847
|
});
|
|
15831
|
-
} else if (shape
|
|
15848
|
+
} else if ("g" in shape) {
|
|
15832
15849
|
geometries.push({
|
|
15833
15850
|
p: [
|
|
15834
15851
|
ValueType.SHAPE_POINTS,
|
|
@@ -16827,6 +16844,7 @@ exports.ParticleSystem = /*#__PURE__*/ function(Component) {
|
|
|
16827
16844
|
});
|
|
16828
16845
|
this.frozen = false;
|
|
16829
16846
|
this.ended = false;
|
|
16847
|
+
this.destroyed = false;
|
|
16830
16848
|
};
|
|
16831
16849
|
_proto.update = function update(delta) {
|
|
16832
16850
|
var _this = this;
|
|
@@ -19115,7 +19133,7 @@ exports.TransformPlayableAsset = /*#__PURE__*/ function(PlayableAsset) {
|
|
|
19115
19133
|
return TransformPlayableAsset;
|
|
19116
19134
|
}(PlayableAsset);
|
|
19117
19135
|
exports.TransformPlayableAsset = __decorate([
|
|
19118
|
-
effectsClass(
|
|
19136
|
+
effectsClass(DataType.TransformPlayableAsset)
|
|
19119
19137
|
], exports.TransformPlayableAsset);
|
|
19120
19138
|
/**
|
|
19121
19139
|
* @since 2.0.0
|
|
@@ -19146,7 +19164,7 @@ exports.ActivationPlayableAsset = /*#__PURE__*/ function(PlayableAsset) {
|
|
|
19146
19164
|
return ActivationPlayableAsset;
|
|
19147
19165
|
}(PlayableAsset);
|
|
19148
19166
|
exports.ActivationPlayableAsset = __decorate([
|
|
19149
|
-
effectsClass(
|
|
19167
|
+
effectsClass(DataType.ActivationPlayableAsset)
|
|
19150
19168
|
], exports.ActivationPlayableAsset);
|
|
19151
19169
|
exports.AnimationClip = /*#__PURE__*/ function(EffectsObject) {
|
|
19152
19170
|
_inherits(AnimationClip, EffectsObject);
|
|
@@ -19389,7 +19407,7 @@ __decorate([
|
|
|
19389
19407
|
serialize()
|
|
19390
19408
|
], exports.TrackAsset.prototype, "children", void 0);
|
|
19391
19409
|
exports.TrackAsset = __decorate([
|
|
19392
|
-
effectsClass(
|
|
19410
|
+
effectsClass(DataType.TrackAsset)
|
|
19393
19411
|
], exports.TrackAsset);
|
|
19394
19412
|
exports.TrackType = void 0;
|
|
19395
19413
|
(function(TrackType) {
|
|
@@ -19484,7 +19502,7 @@ exports.ObjectBindingTrack = /*#__PURE__*/ function(TrackAsset1) {
|
|
|
19484
19502
|
return ObjectBindingTrack;
|
|
19485
19503
|
}(exports.TrackAsset);
|
|
19486
19504
|
exports.ObjectBindingTrack = __decorate([
|
|
19487
|
-
effectsClass(
|
|
19505
|
+
effectsClass(DataType.ObjectBindingTrack)
|
|
19488
19506
|
], exports.ObjectBindingTrack);
|
|
19489
19507
|
|
|
19490
19508
|
exports.TransformTrack = /*#__PURE__*/ function(TrackAsset) {
|
|
@@ -19495,7 +19513,7 @@ exports.TransformTrack = /*#__PURE__*/ function(TrackAsset) {
|
|
|
19495
19513
|
return TransformTrack;
|
|
19496
19514
|
}(exports.TrackAsset);
|
|
19497
19515
|
exports.TransformTrack = __decorate([
|
|
19498
|
-
effectsClass(
|
|
19516
|
+
effectsClass(DataType.TransformTrack)
|
|
19499
19517
|
], exports.TransformTrack);
|
|
19500
19518
|
|
|
19501
19519
|
var ActivationMixerPlayable = /*#__PURE__*/ function(Playable) {
|
|
@@ -19556,7 +19574,7 @@ exports.ActivationTrack = /*#__PURE__*/ function(TrackAsset) {
|
|
|
19556
19574
|
return ActivationTrack;
|
|
19557
19575
|
}(exports.TrackAsset);
|
|
19558
19576
|
exports.ActivationTrack = __decorate([
|
|
19559
|
-
effectsClass(
|
|
19577
|
+
effectsClass(DataType.ActivationTrack)
|
|
19560
19578
|
], exports.ActivationTrack);
|
|
19561
19579
|
|
|
19562
19580
|
exports.SpriteColorTrack = /*#__PURE__*/ function(TrackAsset) {
|
|
@@ -19567,7 +19585,7 @@ exports.SpriteColorTrack = /*#__PURE__*/ function(TrackAsset) {
|
|
|
19567
19585
|
return SpriteColorTrack;
|
|
19568
19586
|
}(exports.TrackAsset);
|
|
19569
19587
|
exports.SpriteColorTrack = __decorate([
|
|
19570
|
-
effectsClass(
|
|
19588
|
+
effectsClass(DataType.SpriteColorTrack)
|
|
19571
19589
|
], exports.SpriteColorTrack);
|
|
19572
19590
|
|
|
19573
19591
|
exports.TimelineAsset = /*#__PURE__*/ function(PlayableAsset) {
|
|
@@ -19604,7 +19622,7 @@ __decorate([
|
|
|
19604
19622
|
serialize()
|
|
19605
19623
|
], exports.TimelineAsset.prototype, "tracks", void 0);
|
|
19606
19624
|
exports.TimelineAsset = __decorate([
|
|
19607
|
-
effectsClass(
|
|
19625
|
+
effectsClass(DataType.TimelineAsset)
|
|
19608
19626
|
], exports.TimelineAsset);
|
|
19609
19627
|
var TimelinePlayable = /*#__PURE__*/ function(Playable) {
|
|
19610
19628
|
_inherits(TimelinePlayable, Playable);
|
|
@@ -19969,7 +19987,7 @@ exports.SubCompositionTrack = /*#__PURE__*/ function(TrackAsset) {
|
|
|
19969
19987
|
return SubCompositionTrack;
|
|
19970
19988
|
}(exports.TrackAsset);
|
|
19971
19989
|
exports.SubCompositionTrack = __decorate([
|
|
19972
|
-
effectsClass(
|
|
19990
|
+
effectsClass(DataType.SubCompositionTrack)
|
|
19973
19991
|
], exports.SubCompositionTrack);
|
|
19974
19992
|
|
|
19975
19993
|
var SubCompositionClipPlayable = /*#__PURE__*/ function(Playable) {
|
|
@@ -19999,7 +20017,7 @@ exports.SubCompositionPlayableAsset = /*#__PURE__*/ function(PlayableAsset) {
|
|
|
19999
20017
|
return SubCompositionPlayableAsset;
|
|
20000
20018
|
}(PlayableAsset);
|
|
20001
20019
|
exports.SubCompositionPlayableAsset = __decorate([
|
|
20002
|
-
effectsClass(
|
|
20020
|
+
effectsClass(DataType.SubCompositionPlayableAsset)
|
|
20003
20021
|
], exports.SubCompositionPlayableAsset);
|
|
20004
20022
|
|
|
20005
20023
|
function _possible_constructor_return(self, call) {
|
|
@@ -20819,6 +20837,1652 @@ exports.PostProcessVolume = __decorate([
|
|
|
20819
20837
|
effectsClass("PostProcessVolume")
|
|
20820
20838
|
], exports.PostProcessVolume);
|
|
20821
20839
|
|
|
20840
|
+
/**
|
|
20841
|
+
* A class to define a shape via user defined coordinates.
|
|
20842
|
+
*/ var Polygon = /*#__PURE__*/ function() {
|
|
20843
|
+
function Polygon() {
|
|
20844
|
+
for(var _len = arguments.length, points = new Array(_len), _key = 0; _key < _len; _key++){
|
|
20845
|
+
points[_key] = arguments[_key];
|
|
20846
|
+
}
|
|
20847
|
+
/** An array of the points of this polygon. */ this.points = [];
|
|
20848
|
+
/** `false` after moveTo, `true` after `closePath`. In all other cases it is `true`. */ this.closePath = false;
|
|
20849
|
+
var flat = Array.isArray(points[0]) ? points[0] : points;
|
|
20850
|
+
// if this is an array of points, convert it to a flat array of numbers
|
|
20851
|
+
if (typeof flat[0] !== "number") {
|
|
20852
|
+
var p = [];
|
|
20853
|
+
for(var i = 0, il = flat.length; i < il; i++){
|
|
20854
|
+
p.push(flat[i].x, flat[i].y);
|
|
20855
|
+
}
|
|
20856
|
+
flat = p;
|
|
20857
|
+
}
|
|
20858
|
+
this.points = flat;
|
|
20859
|
+
this.closePath = true;
|
|
20860
|
+
}
|
|
20861
|
+
var _proto = Polygon.prototype;
|
|
20862
|
+
/**
|
|
20863
|
+
* Creates a clone of this polygon.
|
|
20864
|
+
* @returns - A copy of the polygon.
|
|
20865
|
+
*/ _proto.clone = function clone() {
|
|
20866
|
+
var points = this.points.slice();
|
|
20867
|
+
var polygon = new Polygon(points);
|
|
20868
|
+
polygon.closePath = this.closePath;
|
|
20869
|
+
return polygon;
|
|
20870
|
+
};
|
|
20871
|
+
/**
|
|
20872
|
+
* Checks whether the x and y coordinates passed to this function are contained within this polygon.
|
|
20873
|
+
* @param x - The X coordinate of the point to test.
|
|
20874
|
+
* @param y - The Y coordinate of the point to test.
|
|
20875
|
+
* @returns - Whether the x/y coordinates are within this polygon.
|
|
20876
|
+
*/ _proto.contains = function contains(x, y) {
|
|
20877
|
+
var inside = false;
|
|
20878
|
+
// use some raycasting to test hits
|
|
20879
|
+
// https://github.com/substack/point-in-polygon/blob/master/index.js
|
|
20880
|
+
var length = this.points.length / 2;
|
|
20881
|
+
for(var i = 0, j = length - 1; i < length; j = i++){
|
|
20882
|
+
var xi = this.points[i * 2];
|
|
20883
|
+
var yi = this.points[i * 2 + 1];
|
|
20884
|
+
var xj = this.points[j * 2];
|
|
20885
|
+
var yj = this.points[j * 2 + 1];
|
|
20886
|
+
var intersect = yi > y !== yj > y && x < (xj - xi) * ((y - yi) / (yj - yi)) + xi;
|
|
20887
|
+
if (intersect) {
|
|
20888
|
+
inside = !inside;
|
|
20889
|
+
}
|
|
20890
|
+
}
|
|
20891
|
+
return inside;
|
|
20892
|
+
};
|
|
20893
|
+
/**
|
|
20894
|
+
* Copies another polygon to this one.
|
|
20895
|
+
* @param polygon - The polygon to copy from.
|
|
20896
|
+
* @returns Returns itself.
|
|
20897
|
+
*/ _proto.copyFrom = function copyFrom(polygon) {
|
|
20898
|
+
this.points = polygon.points.slice();
|
|
20899
|
+
this.closePath = polygon.closePath;
|
|
20900
|
+
return this;
|
|
20901
|
+
};
|
|
20902
|
+
/**
|
|
20903
|
+
* Copies this polygon to another one.
|
|
20904
|
+
* @param polygon - The polygon to copy to.
|
|
20905
|
+
* @returns Returns given parameter.
|
|
20906
|
+
*/ _proto.copyTo = function copyTo(polygon) {
|
|
20907
|
+
polygon.copyFrom(this);
|
|
20908
|
+
return polygon;
|
|
20909
|
+
};
|
|
20910
|
+
_create_class(Polygon, [
|
|
20911
|
+
{
|
|
20912
|
+
key: "lastX",
|
|
20913
|
+
get: /**
|
|
20914
|
+
* Get the last X coordinate of the polygon
|
|
20915
|
+
* @readonly
|
|
20916
|
+
*/ function get() {
|
|
20917
|
+
return this.points[this.points.length - 2];
|
|
20918
|
+
}
|
|
20919
|
+
},
|
|
20920
|
+
{
|
|
20921
|
+
key: "lastY",
|
|
20922
|
+
get: /**
|
|
20923
|
+
* Get the last Y coordinate of the polygon
|
|
20924
|
+
* @readonly
|
|
20925
|
+
*/ function get() {
|
|
20926
|
+
return this.points[this.points.length - 1];
|
|
20927
|
+
}
|
|
20928
|
+
},
|
|
20929
|
+
{
|
|
20930
|
+
key: "x",
|
|
20931
|
+
get: /**
|
|
20932
|
+
* Get the first X coordinate of the polygon
|
|
20933
|
+
* @readonly
|
|
20934
|
+
*/ function get() {
|
|
20935
|
+
return this.points[this.points.length - 2];
|
|
20936
|
+
}
|
|
20937
|
+
},
|
|
20938
|
+
{
|
|
20939
|
+
key: "y",
|
|
20940
|
+
get: /**
|
|
20941
|
+
* Get the first Y coordinate of the polygon
|
|
20942
|
+
* @readonly
|
|
20943
|
+
*/ function get() {
|
|
20944
|
+
return this.points[this.points.length - 1];
|
|
20945
|
+
}
|
|
20946
|
+
}
|
|
20947
|
+
]);
|
|
20948
|
+
return Polygon;
|
|
20949
|
+
}();
|
|
20950
|
+
|
|
20951
|
+
// thanks to https://github.com/mattdesl/adaptive-bezier-curve
|
|
20952
|
+
// for the original code!
|
|
20953
|
+
var RECURSION_LIMIT = 8;
|
|
20954
|
+
var FLT_EPSILON = 1.19209290e-7;
|
|
20955
|
+
var PATH_DISTANCE_EPSILON = 1.0;
|
|
20956
|
+
var defaultBezierSmoothness = 0.5;
|
|
20957
|
+
function buildAdaptiveBezier(points, sX, sY, cp1x, cp1y, cp2x, cp2y, eX, eY, smoothness) {
|
|
20958
|
+
// TODO expose as a parameter
|
|
20959
|
+
var scale = 5;
|
|
20960
|
+
var smoothing = Math.min(0.99, Math.max(0, smoothness != null ? smoothness : defaultBezierSmoothness));
|
|
20961
|
+
var distanceTolerance = (PATH_DISTANCE_EPSILON - smoothing) / scale;
|
|
20962
|
+
distanceTolerance *= distanceTolerance;
|
|
20963
|
+
begin(sX, sY, cp1x, cp1y, cp2x, cp2y, eX, eY, points, distanceTolerance);
|
|
20964
|
+
return points;
|
|
20965
|
+
}
|
|
20966
|
+
//// Based on:
|
|
20967
|
+
//// https://github.com/pelson/antigrain/blob/master/agg-2.4/src/agg_curves.cpp
|
|
20968
|
+
function begin(sX, sY, cp1x, cp1y, cp2x, cp2y, eX, eY, points, distanceTolerance) {
|
|
20969
|
+
// dont need to actually ad this!
|
|
20970
|
+
// points.push(sX, sY);
|
|
20971
|
+
recursive(sX, sY, cp1x, cp1y, cp2x, cp2y, eX, eY, points, distanceTolerance, 0);
|
|
20972
|
+
points.push(eX, eY);
|
|
20973
|
+
}
|
|
20974
|
+
// eslint-disable-next-line max-params
|
|
20975
|
+
function recursive(x1, y1, x2, y2, x3, y3, x4, y4, points, distanceTolerance, level) {
|
|
20976
|
+
if (level > RECURSION_LIMIT) {
|
|
20977
|
+
return;
|
|
20978
|
+
}
|
|
20979
|
+
// Calculate all the mid-points of the line segments
|
|
20980
|
+
// ----------------------
|
|
20981
|
+
var x12 = (x1 + x2) / 2;
|
|
20982
|
+
var y12 = (y1 + y2) / 2;
|
|
20983
|
+
var x23 = (x2 + x3) / 2;
|
|
20984
|
+
var y23 = (y2 + y3) / 2;
|
|
20985
|
+
var x34 = (x3 + x4) / 2;
|
|
20986
|
+
var y34 = (y3 + y4) / 2;
|
|
20987
|
+
var x123 = (x12 + x23) / 2;
|
|
20988
|
+
var y123 = (y12 + y23) / 2;
|
|
20989
|
+
var x234 = (x23 + x34) / 2;
|
|
20990
|
+
var y234 = (y23 + y34) / 2;
|
|
20991
|
+
var x1234 = (x123 + x234) / 2;
|
|
20992
|
+
var y1234 = (y123 + y234) / 2;
|
|
20993
|
+
if (level > 0) {
|
|
20994
|
+
// Try to approximate the full cubic curve by a single straight line
|
|
20995
|
+
// ------------------
|
|
20996
|
+
var dx = x4 - x1;
|
|
20997
|
+
var dy = y4 - y1;
|
|
20998
|
+
var d2 = Math.abs((x2 - x4) * dy - (y2 - y4) * dx);
|
|
20999
|
+
var d3 = Math.abs((x3 - x4) * dy - (y3 - y4) * dx);
|
|
21000
|
+
if (d2 > FLT_EPSILON && d3 > FLT_EPSILON) {
|
|
21001
|
+
// Regular care
|
|
21002
|
+
// -----------------
|
|
21003
|
+
if ((d2 + d3) * (d2 + d3) <= distanceTolerance * (dx * dx + dy * dy)) {
|
|
21004
|
+
// If the curvature doesn't exceed the distanceTolerance value
|
|
21005
|
+
// we tend to finish subdivisions.
|
|
21006
|
+
// ----------------------
|
|
21007
|
+
{
|
|
21008
|
+
points.push(x1234, y1234);
|
|
21009
|
+
return;
|
|
21010
|
+
}
|
|
21011
|
+
}
|
|
21012
|
+
} else if (d2 > FLT_EPSILON) {
|
|
21013
|
+
// p1,p3,p4 are collinear, p2 is considerable
|
|
21014
|
+
// ----------------------
|
|
21015
|
+
if (d2 * d2 <= distanceTolerance * (dx * dx + dy * dy)) {
|
|
21016
|
+
{
|
|
21017
|
+
points.push(x1234, y1234);
|
|
21018
|
+
return;
|
|
21019
|
+
}
|
|
21020
|
+
}
|
|
21021
|
+
} else if (d3 > FLT_EPSILON) {
|
|
21022
|
+
// p1,p2,p4 are collinear, p3 is considerable
|
|
21023
|
+
// ----------------------
|
|
21024
|
+
if (d3 * d3 <= distanceTolerance * (dx * dx + dy * dy)) {
|
|
21025
|
+
{
|
|
21026
|
+
points.push(x1234, y1234);
|
|
21027
|
+
return;
|
|
21028
|
+
}
|
|
21029
|
+
}
|
|
21030
|
+
} else {
|
|
21031
|
+
// Collinear case
|
|
21032
|
+
// -----------------
|
|
21033
|
+
dx = x1234 - (x1 + x4) / 2;
|
|
21034
|
+
dy = y1234 - (y1 + y4) / 2;
|
|
21035
|
+
if (dx * dx + dy * dy <= distanceTolerance) {
|
|
21036
|
+
points.push(x1234, y1234);
|
|
21037
|
+
return;
|
|
21038
|
+
}
|
|
21039
|
+
}
|
|
21040
|
+
}
|
|
21041
|
+
// Continue subdivision
|
|
21042
|
+
// ----------------------
|
|
21043
|
+
recursive(x1, y1, x12, y12, x123, y123, x1234, y1234, points, distanceTolerance, level + 1);
|
|
21044
|
+
recursive(x1234, y1234, x234, y234, x34, y34, x4, y4, points, distanceTolerance, level + 1);
|
|
21045
|
+
}
|
|
21046
|
+
|
|
21047
|
+
var ShapePath = /*#__PURE__*/ function() {
|
|
21048
|
+
function ShapePath(graphicsPath) {
|
|
21049
|
+
this.graphicsPath = graphicsPath;
|
|
21050
|
+
this.currentPoly = null;
|
|
21051
|
+
this.shapePrimitives = [];
|
|
21052
|
+
}
|
|
21053
|
+
var _proto = ShapePath.prototype;
|
|
21054
|
+
/** Builds the path. */ _proto.buildPath = function buildPath() {
|
|
21055
|
+
this.currentPoly = null;
|
|
21056
|
+
this.shapePrimitives.length = 0;
|
|
21057
|
+
var path = this.graphicsPath;
|
|
21058
|
+
for(var _iterator = _create_for_of_iterator_helper_loose(path.instructions), _step; !(_step = _iterator()).done;){
|
|
21059
|
+
var instruction = _step.value;
|
|
21060
|
+
var action = instruction.action;
|
|
21061
|
+
var data = instruction.data;
|
|
21062
|
+
switch(action){
|
|
21063
|
+
case "bezierCurveTo":
|
|
21064
|
+
{
|
|
21065
|
+
this.bezierCurveTo(data[0], data[1], data[2], data[3], data[4], data[5], data[6]);
|
|
21066
|
+
break;
|
|
21067
|
+
}
|
|
21068
|
+
case "moveTo":
|
|
21069
|
+
{
|
|
21070
|
+
this.moveTo(data[0], data[1]);
|
|
21071
|
+
break;
|
|
21072
|
+
}
|
|
21073
|
+
}
|
|
21074
|
+
}
|
|
21075
|
+
this.endPoly();
|
|
21076
|
+
};
|
|
21077
|
+
/**
|
|
21078
|
+
* Adds a cubic Bezier curve to the path.
|
|
21079
|
+
* It requires three points: the first two are control points and the third one is the end point.
|
|
21080
|
+
* The starting point is the last point in the current path.
|
|
21081
|
+
* @param cp1x - The x-coordinate of the first control point.
|
|
21082
|
+
* @param cp1y - The y-coordinate of the first control point.
|
|
21083
|
+
* @param cp2x - The x-coordinate of the second control point.
|
|
21084
|
+
* @param cp2y - The y-coordinate of the second control point.
|
|
21085
|
+
* @param x - The x-coordinate of the end point.
|
|
21086
|
+
* @param y - The y-coordinate of the end point.
|
|
21087
|
+
* @param smoothness - Optional parameter to adjust the smoothness of the curve.
|
|
21088
|
+
* @returns The instance of the current object for chaining.
|
|
21089
|
+
*/ _proto.bezierCurveTo = function bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y, smoothness) {
|
|
21090
|
+
this.ensurePoly();
|
|
21091
|
+
var currentPoly = this.currentPoly;
|
|
21092
|
+
buildAdaptiveBezier(currentPoly.points, currentPoly.lastX, currentPoly.lastY, cp1x, cp1y, cp2x, cp2y, x, y, smoothness);
|
|
21093
|
+
return this;
|
|
21094
|
+
};
|
|
21095
|
+
_proto.moveTo = function moveTo(x, y) {
|
|
21096
|
+
this.startPoly(x, y);
|
|
21097
|
+
return this;
|
|
21098
|
+
};
|
|
21099
|
+
/**
|
|
21100
|
+
* Starts a new polygon path from the specified starting point.
|
|
21101
|
+
* This method initializes a new polygon or ends the current one if it exists.
|
|
21102
|
+
* @param x - The x-coordinate of the starting point of the new polygon.
|
|
21103
|
+
* @param y - The y-coordinate of the starting point of the new polygon.
|
|
21104
|
+
* @returns The instance of the current object for chaining.
|
|
21105
|
+
*/ _proto.startPoly = function startPoly(x, y) {
|
|
21106
|
+
var currentPoly = this.currentPoly;
|
|
21107
|
+
if (currentPoly) {
|
|
21108
|
+
this.endPoly();
|
|
21109
|
+
}
|
|
21110
|
+
currentPoly = new Polygon();
|
|
21111
|
+
currentPoly.points.push(x, y);
|
|
21112
|
+
this.currentPoly = currentPoly;
|
|
21113
|
+
return this;
|
|
21114
|
+
};
|
|
21115
|
+
/**
|
|
21116
|
+
* Ends the current polygon path. If `closePath` is set to true,
|
|
21117
|
+
* the path is closed by connecting the last point to the first one.
|
|
21118
|
+
* This method finalizes the current polygon and prepares it for drawing or adding to the shape primitives.
|
|
21119
|
+
* @param closePath - A boolean indicating whether to close the polygon by connecting the last point
|
|
21120
|
+
* back to the starting point. False by default.
|
|
21121
|
+
* @returns The instance of the current object for chaining.
|
|
21122
|
+
*/ _proto.endPoly = function endPoly(closePath) {
|
|
21123
|
+
if (closePath === void 0) closePath = false;
|
|
21124
|
+
var shape = this.currentPoly;
|
|
21125
|
+
if (shape && shape.points.length > 2) {
|
|
21126
|
+
shape.closePath = closePath;
|
|
21127
|
+
this.shapePrimitives.push({
|
|
21128
|
+
shape: shape
|
|
21129
|
+
});
|
|
21130
|
+
}
|
|
21131
|
+
this.currentPoly = null;
|
|
21132
|
+
return this;
|
|
21133
|
+
};
|
|
21134
|
+
_proto.ensurePoly = function ensurePoly(start) {
|
|
21135
|
+
if (this.currentPoly) {
|
|
21136
|
+
return;
|
|
21137
|
+
}
|
|
21138
|
+
this.currentPoly = new Polygon();
|
|
21139
|
+
this.currentPoly.points.push(0, 0);
|
|
21140
|
+
};
|
|
21141
|
+
return ShapePath;
|
|
21142
|
+
}();
|
|
21143
|
+
|
|
21144
|
+
var GraphicsPath = /*#__PURE__*/ function() {
|
|
21145
|
+
function GraphicsPath() {
|
|
21146
|
+
this.instructions = [];
|
|
21147
|
+
this.dirty = false;
|
|
21148
|
+
}
|
|
21149
|
+
var _proto = GraphicsPath.prototype;
|
|
21150
|
+
/**
|
|
21151
|
+
* Adds a cubic Bezier curve to the path.
|
|
21152
|
+
* It requires three points: the first two are control points and the third one is the end point.
|
|
21153
|
+
* The starting point is the last point in the current path.
|
|
21154
|
+
* @param cp1x - The x-coordinate of the first control point.
|
|
21155
|
+
* @param cp1y - The y-coordinate of the first control point.
|
|
21156
|
+
* @param cp2x - The x-coordinate of the second control point.
|
|
21157
|
+
* @param cp2y - The y-coordinate of the second control point.
|
|
21158
|
+
* @param x - The x-coordinate of the end point.
|
|
21159
|
+
* @param y - The y-coordinate of the end point.
|
|
21160
|
+
* @param smoothness - Optional parameter to adjust the smoothness of the curve.
|
|
21161
|
+
* @returns The instance of the current object for chaining.
|
|
21162
|
+
*/ _proto.bezierCurveTo = function bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y, smoothness) {
|
|
21163
|
+
this.instructions.push({
|
|
21164
|
+
action: "bezierCurveTo",
|
|
21165
|
+
data: [
|
|
21166
|
+
cp1x,
|
|
21167
|
+
cp1y,
|
|
21168
|
+
cp2x,
|
|
21169
|
+
cp2y,
|
|
21170
|
+
x,
|
|
21171
|
+
y,
|
|
21172
|
+
smoothness
|
|
21173
|
+
]
|
|
21174
|
+
});
|
|
21175
|
+
this.dirty = true;
|
|
21176
|
+
return this;
|
|
21177
|
+
};
|
|
21178
|
+
_proto.moveTo = function moveTo(x, y) {
|
|
21179
|
+
this.instructions.push({
|
|
21180
|
+
action: "moveTo",
|
|
21181
|
+
data: [
|
|
21182
|
+
x,
|
|
21183
|
+
y
|
|
21184
|
+
]
|
|
21185
|
+
});
|
|
21186
|
+
this.dirty = true;
|
|
21187
|
+
return this;
|
|
21188
|
+
};
|
|
21189
|
+
_proto.clear = function clear() {
|
|
21190
|
+
this.instructions.length = 0;
|
|
21191
|
+
this.dirty = true;
|
|
21192
|
+
return this;
|
|
21193
|
+
};
|
|
21194
|
+
_create_class(GraphicsPath, [
|
|
21195
|
+
{
|
|
21196
|
+
key: "shapePath",
|
|
21197
|
+
get: /**
|
|
21198
|
+
* Provides access to the internal shape path, ensuring it is up-to-date with the current instructions.
|
|
21199
|
+
* @returns The `ShapePath` instance associated with this `GraphicsPath`.
|
|
21200
|
+
*/ function get() {
|
|
21201
|
+
if (!this._shapePath) {
|
|
21202
|
+
this._shapePath = new ShapePath(this);
|
|
21203
|
+
}
|
|
21204
|
+
if (this.dirty) {
|
|
21205
|
+
this.dirty = false;
|
|
21206
|
+
this._shapePath.buildPath();
|
|
21207
|
+
}
|
|
21208
|
+
return this._shapePath;
|
|
21209
|
+
}
|
|
21210
|
+
}
|
|
21211
|
+
]);
|
|
21212
|
+
return GraphicsPath;
|
|
21213
|
+
}();
|
|
21214
|
+
|
|
21215
|
+
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
21216
|
+
|
|
21217
|
+
var libtess_min = {exports: {}};
|
|
21218
|
+
|
|
21219
|
+
/*
|
|
21220
|
+
|
|
21221
|
+
Copyright 2000, Silicon Graphics, Inc. All Rights Reserved.
|
|
21222
|
+
Copyright 2015, Google Inc. All Rights Reserved.
|
|
21223
|
+
|
|
21224
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
21225
|
+
of this software and associated documentation files (the "Software"), to
|
|
21226
|
+
deal in the Software without restriction, including without limitation the
|
|
21227
|
+
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
21228
|
+
sell copies of the Software, and to permit persons to whom the Software is
|
|
21229
|
+
furnished to do so, subject to the following conditions:
|
|
21230
|
+
|
|
21231
|
+
The above copyright notice including the dates of first publication and
|
|
21232
|
+
either this permission notice or a reference to http://oss.sgi.com/projects/FreeB/
|
|
21233
|
+
shall be included in all copies or substantial portions of the Software.
|
|
21234
|
+
|
|
21235
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
21236
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
21237
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
21238
|
+
SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
21239
|
+
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
|
|
21240
|
+
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
21241
|
+
|
|
21242
|
+
Original Code. The Original Code is: OpenGL Sample Implementation,
|
|
21243
|
+
Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
|
|
21244
|
+
Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
|
|
21245
|
+
Copyright in any portions created by third parties is as indicated
|
|
21246
|
+
elsewhere herein. All Rights Reserved.
|
|
21247
|
+
*/
|
|
21248
|
+
|
|
21249
|
+
(function (module) {
|
|
21250
|
+
var n;
|
|
21251
|
+
function t(a, b) {
|
|
21252
|
+
return a.b === b.b && a.a === b.a;
|
|
21253
|
+
}
|
|
21254
|
+
function u(a, b) {
|
|
21255
|
+
return a.b < b.b || a.b === b.b && a.a <= b.a;
|
|
21256
|
+
}
|
|
21257
|
+
function v(a, b, c) {
|
|
21258
|
+
var d = b.b - a.b, e = c.b - b.b;
|
|
21259
|
+
return 0 < d + e ? d < e ? b.a - a.a + d / (d + e) * (a.a - c.a) : b.a - c.a + e / (d + e) * (c.a - a.a) : 0;
|
|
21260
|
+
}
|
|
21261
|
+
function x(a, b, c) {
|
|
21262
|
+
var d = b.b - a.b, e = c.b - b.b;
|
|
21263
|
+
return 0 < d + e ? (b.a - c.a) * d + (b.a - a.a) * e : 0;
|
|
21264
|
+
}
|
|
21265
|
+
function z(a, b) {
|
|
21266
|
+
return a.a < b.a || a.a === b.a && a.b <= b.b;
|
|
21267
|
+
}
|
|
21268
|
+
function aa(a, b, c) {
|
|
21269
|
+
var d = b.a - a.a, e = c.a - b.a;
|
|
21270
|
+
return 0 < d + e ? d < e ? b.b - a.b + d / (d + e) * (a.b - c.b) : b.b - c.b + e / (d + e) * (c.b - a.b) : 0;
|
|
21271
|
+
}
|
|
21272
|
+
function ba(a, b, c) {
|
|
21273
|
+
var d = b.a - a.a, e = c.a - b.a;
|
|
21274
|
+
return 0 < d + e ? (b.b - c.b) * d + (b.b - a.b) * e : 0;
|
|
21275
|
+
}
|
|
21276
|
+
function ca(a) {
|
|
21277
|
+
return u(a.b.a, a.a);
|
|
21278
|
+
}
|
|
21279
|
+
function da(a) {
|
|
21280
|
+
return u(a.a, a.b.a);
|
|
21281
|
+
}
|
|
21282
|
+
function A(a, b, c, d) {
|
|
21283
|
+
a = 0 > a ? 0 : a;
|
|
21284
|
+
c = 0 > c ? 0 : c;
|
|
21285
|
+
return a <= c ? 0 === c ? (b + d) / 2 : b + a / (a + c) * (d - b) : d + c / (a + c) * (b - d);
|
|
21286
|
+
}
|
|
21287
|
+
function ea(a) {
|
|
21288
|
+
var b = B(a.b);
|
|
21289
|
+
C(b, a.c);
|
|
21290
|
+
C(b.b, a.c);
|
|
21291
|
+
D(b, a.a);
|
|
21292
|
+
return b;
|
|
21293
|
+
}
|
|
21294
|
+
function E(a, b) {
|
|
21295
|
+
var c = !1, d = !1;
|
|
21296
|
+
a !== b && (b.a !== a.a && (d = !0, F(b.a, a.a)), b.d !== a.d && (c = !0, G(b.d, a.d)), H(b, a), d || (C(b, a.a), a.a.c = a), c || (D(b, a.d), a.d.a = a));
|
|
21297
|
+
}
|
|
21298
|
+
function I(a) {
|
|
21299
|
+
var b = a.b, c = !1;
|
|
21300
|
+
a.d !== a.b.d && (c = !0, G(a.d, a.b.d));
|
|
21301
|
+
a.c === a ? F(a.a, null) : (a.b.d.a = J(a), a.a.c = a.c, H(a, J(a)), c || D(a, a.d));
|
|
21302
|
+
b.c === b ? (F(b.a, null), G(b.d, null)) : (a.d.a = J(b), b.a.c = b.c, H(b, J(b)));
|
|
21303
|
+
fa(a);
|
|
21304
|
+
}
|
|
21305
|
+
function K(a) {
|
|
21306
|
+
var b = B(a), c = b.b;
|
|
21307
|
+
H(b, a.e);
|
|
21308
|
+
b.a = a.b.a;
|
|
21309
|
+
C(c, b.a);
|
|
21310
|
+
b.d = c.d = a.d;
|
|
21311
|
+
b = b.b;
|
|
21312
|
+
H(a.b, J(a.b));
|
|
21313
|
+
H(a.b, b);
|
|
21314
|
+
a.b.a = b.a;
|
|
21315
|
+
b.b.a.c = b.b;
|
|
21316
|
+
b.b.d = a.b.d;
|
|
21317
|
+
b.f = a.f;
|
|
21318
|
+
b.b.f = a.b.f;
|
|
21319
|
+
return b;
|
|
21320
|
+
}
|
|
21321
|
+
function L(a, b) {
|
|
21322
|
+
var c = !1, d = B(a), e = d.b;
|
|
21323
|
+
b.d !== a.d && (c = !0, G(b.d, a.d));
|
|
21324
|
+
H(d, a.e);
|
|
21325
|
+
H(e, b);
|
|
21326
|
+
d.a = a.b.a;
|
|
21327
|
+
e.a = b.a;
|
|
21328
|
+
d.d = e.d = a.d;
|
|
21329
|
+
a.d.a = e;
|
|
21330
|
+
c || D(d, a.d);
|
|
21331
|
+
return d;
|
|
21332
|
+
}
|
|
21333
|
+
function B(a) {
|
|
21334
|
+
var b = new M, c = new M, d = a.b.h;
|
|
21335
|
+
c.h = d;
|
|
21336
|
+
d.b.h = b;
|
|
21337
|
+
b.h = a;
|
|
21338
|
+
a.b.h = c;
|
|
21339
|
+
b.b = c;
|
|
21340
|
+
b.c = b;
|
|
21341
|
+
b.e = c;
|
|
21342
|
+
c.b = b;
|
|
21343
|
+
c.c = c;
|
|
21344
|
+
return c.e = b;
|
|
21345
|
+
}
|
|
21346
|
+
function H(a, b) {
|
|
21347
|
+
var c = a.c, d = b.c;
|
|
21348
|
+
c.b.e = b;
|
|
21349
|
+
d.b.e = a;
|
|
21350
|
+
a.c = d;
|
|
21351
|
+
b.c = c;
|
|
21352
|
+
}
|
|
21353
|
+
function C(a, b) {
|
|
21354
|
+
var c = b.f, d = new N(b, c);
|
|
21355
|
+
c.e = d;
|
|
21356
|
+
b.f = d;
|
|
21357
|
+
c = d.c = a;
|
|
21358
|
+
do c.a = d, c = c.c;
|
|
21359
|
+
while (c !== a);
|
|
21360
|
+
}
|
|
21361
|
+
function D(a, b) {
|
|
21362
|
+
var c = b.d, d = new ga(b, c);
|
|
21363
|
+
c.b = d;
|
|
21364
|
+
b.d = d;
|
|
21365
|
+
d.a = a;
|
|
21366
|
+
d.c = b.c;
|
|
21367
|
+
c = a;
|
|
21368
|
+
do c.d = d, c = c.e;
|
|
21369
|
+
while (c !== a);
|
|
21370
|
+
}
|
|
21371
|
+
function fa(a) {
|
|
21372
|
+
var b = a.h;
|
|
21373
|
+
a = a.b.h;
|
|
21374
|
+
b.b.h = a;
|
|
21375
|
+
a.b.h = b;
|
|
21376
|
+
}
|
|
21377
|
+
function F(a, b) {
|
|
21378
|
+
var c = a.c, d = c;
|
|
21379
|
+
do d.a = b, d = d.c;
|
|
21380
|
+
while (d !== c);
|
|
21381
|
+
c = a.f;
|
|
21382
|
+
d = a.e;
|
|
21383
|
+
d.f = c;
|
|
21384
|
+
c.e = d;
|
|
21385
|
+
}
|
|
21386
|
+
function G(a, b) {
|
|
21387
|
+
var c = a.a, d = c;
|
|
21388
|
+
do d.d = b, d = d.e;
|
|
21389
|
+
while (d !== c);
|
|
21390
|
+
c = a.d;
|
|
21391
|
+
d = a.b;
|
|
21392
|
+
d.d = c;
|
|
21393
|
+
c.b = d;
|
|
21394
|
+
}
|
|
21395
|
+
function ha(a) {
|
|
21396
|
+
var b = 0;
|
|
21397
|
+
Math.abs(a[1]) > Math.abs(a[0]) && (b = 1);
|
|
21398
|
+
Math.abs(a[2]) > Math.abs(a[b]) && (b = 2);
|
|
21399
|
+
return b;
|
|
21400
|
+
}
|
|
21401
|
+
var O = 4 * 1E150;
|
|
21402
|
+
function P(a, b) {
|
|
21403
|
+
a.f += b.f;
|
|
21404
|
+
a.b.f += b.b.f;
|
|
21405
|
+
}
|
|
21406
|
+
function ia(a, b, c) {
|
|
21407
|
+
a = a.a;
|
|
21408
|
+
b = b.a;
|
|
21409
|
+
c = c.a;
|
|
21410
|
+
if (b.b.a === a) return c.b.a === a ? u(b.a, c.a) ? 0 >= x(c.b.a, b.a, c.a) : 0 <= x(b.b.a, c.a, b.a) : 0 >= x(c.b.a, a, c.a);
|
|
21411
|
+
if (c.b.a === a) return 0 <= x(b.b.a, a, b.a);
|
|
21412
|
+
b = v(b.b.a, a, b.a);
|
|
21413
|
+
a = v(c.b.a, a, c.a);
|
|
21414
|
+
return b >= a;
|
|
21415
|
+
}
|
|
21416
|
+
function Q(a) {
|
|
21417
|
+
a.a.i = null;
|
|
21418
|
+
var b = a.e;
|
|
21419
|
+
b.a.c = b.c;
|
|
21420
|
+
b.c.a = b.a;
|
|
21421
|
+
a.e = null;
|
|
21422
|
+
}
|
|
21423
|
+
function ja(a, b) {
|
|
21424
|
+
I(a.a);
|
|
21425
|
+
a.c = !1;
|
|
21426
|
+
a.a = b;
|
|
21427
|
+
b.i = a;
|
|
21428
|
+
}
|
|
21429
|
+
function ka(a) {
|
|
21430
|
+
var b = a.a.a;
|
|
21431
|
+
do a = R(a);
|
|
21432
|
+
while (a.a.a === b);
|
|
21433
|
+
a.c && (b = L(S(a).a.b, a.a.e), ja(a, b), a = R(a));
|
|
21434
|
+
return a;
|
|
21435
|
+
}
|
|
21436
|
+
function la(a, b, c) {
|
|
21437
|
+
var d = new ma;
|
|
21438
|
+
d.a = c;
|
|
21439
|
+
d.e = na(a.f, b.e, d);
|
|
21440
|
+
return c.i = d;
|
|
21441
|
+
}
|
|
21442
|
+
function oa(a, b) {
|
|
21443
|
+
switch(a.s){
|
|
21444
|
+
case 100130:
|
|
21445
|
+
return 0 !== (b & 1);
|
|
21446
|
+
case 100131:
|
|
21447
|
+
return 0 !== b;
|
|
21448
|
+
case 100132:
|
|
21449
|
+
return 0 < b;
|
|
21450
|
+
case 100133:
|
|
21451
|
+
return 0 > b;
|
|
21452
|
+
case 100134:
|
|
21453
|
+
return 2 <= b || -2 >= b;
|
|
21454
|
+
}
|
|
21455
|
+
return !1;
|
|
21456
|
+
}
|
|
21457
|
+
function pa(a) {
|
|
21458
|
+
var b = a.a, c = b.d;
|
|
21459
|
+
c.c = a.d;
|
|
21460
|
+
c.a = b;
|
|
21461
|
+
Q(a);
|
|
21462
|
+
}
|
|
21463
|
+
function T(a, b, c) {
|
|
21464
|
+
a = b;
|
|
21465
|
+
for(b = b.a; a !== c;){
|
|
21466
|
+
a.c = !1;
|
|
21467
|
+
var d = S(a), e = d.a;
|
|
21468
|
+
if (e.a !== b.a) {
|
|
21469
|
+
if (!d.c) {
|
|
21470
|
+
pa(a);
|
|
21471
|
+
break;
|
|
21472
|
+
}
|
|
21473
|
+
e = L(b.c.b, e.b);
|
|
21474
|
+
ja(d, e);
|
|
21475
|
+
}
|
|
21476
|
+
b.c !== e && (E(J(e), e), E(b, e));
|
|
21477
|
+
pa(a);
|
|
21478
|
+
b = d.a;
|
|
21479
|
+
a = d;
|
|
21480
|
+
}
|
|
21481
|
+
return b;
|
|
21482
|
+
}
|
|
21483
|
+
function U(a, b, c, d, e, f) {
|
|
21484
|
+
var g = !0;
|
|
21485
|
+
do la(a, b, c.b), c = c.c;
|
|
21486
|
+
while (c !== d);
|
|
21487
|
+
for(null === e && (e = S(b).a.b.c);;){
|
|
21488
|
+
d = S(b);
|
|
21489
|
+
c = d.a.b;
|
|
21490
|
+
if (c.a !== e.a) break;
|
|
21491
|
+
c.c !== e && (E(J(c), c), E(J(e), c));
|
|
21492
|
+
d.f = b.f - c.f;
|
|
21493
|
+
d.d = oa(a, d.f);
|
|
21494
|
+
b.b = !0;
|
|
21495
|
+
!g && qa(a, b) && (P(c, e), Q(b), I(e));
|
|
21496
|
+
g = !1;
|
|
21497
|
+
b = d;
|
|
21498
|
+
e = c;
|
|
21499
|
+
}
|
|
21500
|
+
b.b = !0;
|
|
21501
|
+
f && ra(a, b);
|
|
21502
|
+
}
|
|
21503
|
+
function sa(a, b, c, d, e) {
|
|
21504
|
+
var f = [
|
|
21505
|
+
b.g[0],
|
|
21506
|
+
b.g[1],
|
|
21507
|
+
b.g[2]
|
|
21508
|
+
];
|
|
21509
|
+
b.d = null;
|
|
21510
|
+
b.d = a.o ? a.o(f, c, d, a.c) || null : null;
|
|
21511
|
+
null === b.d && (e ? a.n || (V(a, 100156), a.n = !0) : b.d = c[0]);
|
|
21512
|
+
}
|
|
21513
|
+
function ta(a, b, c) {
|
|
21514
|
+
var d = [
|
|
21515
|
+
null,
|
|
21516
|
+
null,
|
|
21517
|
+
null,
|
|
21518
|
+
null
|
|
21519
|
+
];
|
|
21520
|
+
d[0] = b.a.d;
|
|
21521
|
+
d[1] = c.a.d;
|
|
21522
|
+
sa(a, b.a, d, [
|
|
21523
|
+
.5,
|
|
21524
|
+
.5,
|
|
21525
|
+
0,
|
|
21526
|
+
0
|
|
21527
|
+
], !1);
|
|
21528
|
+
E(b, c);
|
|
21529
|
+
}
|
|
21530
|
+
function ua(a, b, c, d, e) {
|
|
21531
|
+
var f = Math.abs(b.b - a.b) + Math.abs(b.a - a.a), g = Math.abs(c.b - a.b) + Math.abs(c.a - a.a), h = e + 1;
|
|
21532
|
+
d[e] = .5 * g / (f + g);
|
|
21533
|
+
d[h] = .5 * f / (f + g);
|
|
21534
|
+
a.g[0] += d[e] * b.g[0] + d[h] * c.g[0];
|
|
21535
|
+
a.g[1] += d[e] * b.g[1] + d[h] * c.g[1];
|
|
21536
|
+
a.g[2] += d[e] * b.g[2] + d[h] * c.g[2];
|
|
21537
|
+
}
|
|
21538
|
+
function qa(a, b) {
|
|
21539
|
+
var c = S(b), d = b.a, e = c.a;
|
|
21540
|
+
if (u(d.a, e.a)) {
|
|
21541
|
+
if (0 < x(e.b.a, d.a, e.a)) return !1;
|
|
21542
|
+
if (!t(d.a, e.a)) K(e.b), E(d, J(e)), b.b = c.b = !0;
|
|
21543
|
+
else if (d.a !== e.a) {
|
|
21544
|
+
var c = a.e, f = d.a.h;
|
|
21545
|
+
if (0 <= f) {
|
|
21546
|
+
var c = c.b, g = c.d, h = c.e, k = c.c, l = k[f];
|
|
21547
|
+
g[l] = g[c.a];
|
|
21548
|
+
k[g[l]] = l;
|
|
21549
|
+
l <= --c.a && (1 >= l ? W(c, l) : u(h[g[l >> 1]], h[g[l]]) ? W(c, l) : va(c, l));
|
|
21550
|
+
h[f] = null;
|
|
21551
|
+
k[f] = c.b;
|
|
21552
|
+
c.b = f;
|
|
21553
|
+
} else for(c.c[-(f + 1)] = null; 0 < c.a && null === c.c[c.d[c.a - 1]];)--c.a;
|
|
21554
|
+
ta(a, J(e), d);
|
|
21555
|
+
}
|
|
21556
|
+
} else {
|
|
21557
|
+
if (0 > x(d.b.a, e.a, d.a)) return !1;
|
|
21558
|
+
R(b).b = b.b = !0;
|
|
21559
|
+
K(d.b);
|
|
21560
|
+
E(J(e), d);
|
|
21561
|
+
}
|
|
21562
|
+
return !0;
|
|
21563
|
+
}
|
|
21564
|
+
function wa(a, b) {
|
|
21565
|
+
var c = S(b), d = b.a, e = c.a, f = d.a, g = e.a, h = d.b.a, k = e.b.a, l = new N;
|
|
21566
|
+
x(h, a.a, f);
|
|
21567
|
+
x(k, a.a, g);
|
|
21568
|
+
if (f === g || Math.min(f.a, h.a) > Math.max(g.a, k.a)) return !1;
|
|
21569
|
+
if (u(f, g)) {
|
|
21570
|
+
if (0 < x(k, f, g)) return !1;
|
|
21571
|
+
} else if (0 > x(h, g, f)) return !1;
|
|
21572
|
+
var r = h, p = f, q = k, y = g, m, w;
|
|
21573
|
+
u(r, p) || (m = r, r = p, p = m);
|
|
21574
|
+
u(q, y) || (m = q, q = y, y = m);
|
|
21575
|
+
u(r, q) || (m = r, r = q, q = m, m = p, p = y, y = m);
|
|
21576
|
+
u(q, p) ? u(p, y) ? (m = v(r, q, p), w = v(q, p, y), 0 > m + w && (m = -m, w = -w), l.b = A(m, q.b, w, p.b)) : (m = x(r, q, p), w = -x(r, y, p), 0 > m + w && (m = -m, w = -w), l.b = A(m, q.b, w, y.b)) : l.b = (q.b + p.b) / 2;
|
|
21577
|
+
z(r, p) || (m = r, r = p, p = m);
|
|
21578
|
+
z(q, y) || (m = q, q = y, y = m);
|
|
21579
|
+
z(r, q) || (m = r, r = q, q = m, m = p, p = y, y = m);
|
|
21580
|
+
z(q, p) ? z(p, y) ? (m = aa(r, q, p), w = aa(q, p, y), 0 > m + w && (m = -m, w = -w), l.a = A(m, q.a, w, p.a)) : (m = ba(r, q, p), w = -ba(r, y, p), 0 > m + w && (m = -m, w = -w), l.a = A(m, q.a, w, y.a)) : l.a = (q.a + p.a) / 2;
|
|
21581
|
+
u(l, a.a) && (l.b = a.a.b, l.a = a.a.a);
|
|
21582
|
+
r = u(f, g) ? f : g;
|
|
21583
|
+
u(r, l) && (l.b = r.b, l.a = r.a);
|
|
21584
|
+
if (t(l, f) || t(l, g)) return qa(a, b), !1;
|
|
21585
|
+
if (!t(h, a.a) && 0 <= x(h, a.a, l) || !t(k, a.a) && 0 >= x(k, a.a, l)) {
|
|
21586
|
+
if (k === a.a) return K(d.b), E(e.b, d), b = ka(b), d = S(b).a, T(a, S(b), c), U(a, b, J(d), d, d, !0), !0;
|
|
21587
|
+
if (h === a.a) {
|
|
21588
|
+
K(e.b);
|
|
21589
|
+
E(d.e, J(e));
|
|
21590
|
+
f = c = b;
|
|
21591
|
+
g = f.a.b.a;
|
|
21592
|
+
do f = R(f);
|
|
21593
|
+
while (f.a.b.a === g);
|
|
21594
|
+
b = f;
|
|
21595
|
+
f = S(b).a.b.c;
|
|
21596
|
+
c.a = J(e);
|
|
21597
|
+
e = T(a, c, null);
|
|
21598
|
+
U(a, b, e.c, d.b.c, f, !0);
|
|
21599
|
+
return !0;
|
|
21600
|
+
}
|
|
21601
|
+
0 <= x(h, a.a, l) && (R(b).b = b.b = !0, K(d.b), d.a.b = a.a.b, d.a.a = a.a.a);
|
|
21602
|
+
0 >= x(k, a.a, l) && (b.b = c.b = !0, K(e.b), e.a.b = a.a.b, e.a.a = a.a.a);
|
|
21603
|
+
return !1;
|
|
21604
|
+
}
|
|
21605
|
+
K(d.b);
|
|
21606
|
+
K(e.b);
|
|
21607
|
+
E(J(e), d);
|
|
21608
|
+
d.a.b = l.b;
|
|
21609
|
+
d.a.a = l.a;
|
|
21610
|
+
d.a.h = xa(a.e, d.a);
|
|
21611
|
+
d = d.a;
|
|
21612
|
+
e = [
|
|
21613
|
+
0,
|
|
21614
|
+
0,
|
|
21615
|
+
0,
|
|
21616
|
+
0
|
|
21617
|
+
];
|
|
21618
|
+
l = [
|
|
21619
|
+
f.d,
|
|
21620
|
+
h.d,
|
|
21621
|
+
g.d,
|
|
21622
|
+
k.d
|
|
21623
|
+
];
|
|
21624
|
+
d.g[0] = d.g[1] = d.g[2] = 0;
|
|
21625
|
+
ua(d, f, h, e, 0);
|
|
21626
|
+
ua(d, g, k, e, 2);
|
|
21627
|
+
sa(a, d, l, e, !0);
|
|
21628
|
+
R(b).b = b.b = c.b = !0;
|
|
21629
|
+
return !1;
|
|
21630
|
+
}
|
|
21631
|
+
function ra(a, b) {
|
|
21632
|
+
for(var c = S(b);;){
|
|
21633
|
+
for(; c.b;)b = c, c = S(c);
|
|
21634
|
+
if (!b.b && (c = b, b = R(b), null === b || !b.b)) break;
|
|
21635
|
+
b.b = !1;
|
|
21636
|
+
var d = b.a, e = c.a, f;
|
|
21637
|
+
if (f = d.b.a !== e.b.a) a: {
|
|
21638
|
+
f = b;
|
|
21639
|
+
var g = S(f), h = f.a, k = g.a, l = void 0;
|
|
21640
|
+
if (u(h.b.a, k.b.a)) {
|
|
21641
|
+
if (0 > x(h.b.a, k.b.a, h.a)) {
|
|
21642
|
+
f = !1;
|
|
21643
|
+
break a;
|
|
21644
|
+
}
|
|
21645
|
+
R(f).b = f.b = !0;
|
|
21646
|
+
l = K(h);
|
|
21647
|
+
E(k.b, l);
|
|
21648
|
+
l.d.c = f.d;
|
|
21649
|
+
} else {
|
|
21650
|
+
if (0 < x(k.b.a, h.b.a, k.a)) {
|
|
21651
|
+
f = !1;
|
|
21652
|
+
break a;
|
|
21653
|
+
}
|
|
21654
|
+
f.b = g.b = !0;
|
|
21655
|
+
l = K(k);
|
|
21656
|
+
E(h.e, k.b);
|
|
21657
|
+
l.b.d.c = f.d;
|
|
21658
|
+
}
|
|
21659
|
+
f = !0;
|
|
21660
|
+
}
|
|
21661
|
+
f && (c.c ? (Q(c), I(e), c = S(b), e = c.a) : b.c && (Q(b), I(d), b = R(c), d = b.a));
|
|
21662
|
+
if (d.a !== e.a) {
|
|
21663
|
+
if (d.b.a === e.b.a || b.c || c.c || d.b.a !== a.a && e.b.a !== a.a) qa(a, b);
|
|
21664
|
+
else if (wa(a, b)) break;
|
|
21665
|
+
}
|
|
21666
|
+
d.a === e.a && d.b.a === e.b.a && (P(e, d), Q(b), I(d), b = R(c));
|
|
21667
|
+
}
|
|
21668
|
+
}
|
|
21669
|
+
function ya(a, b) {
|
|
21670
|
+
a.a = b;
|
|
21671
|
+
for(var c = b.c; null === c.i;)if (c = c.c, c === b.c) {
|
|
21672
|
+
var c = a, d = b, e = new ma;
|
|
21673
|
+
e.a = d.c.b;
|
|
21674
|
+
var f = c.f, g = f.a;
|
|
21675
|
+
do g = g.a;
|
|
21676
|
+
while (null !== g.b && !f.c(f.b, e, g.b));
|
|
21677
|
+
var f = g.b, h = S(f), e = f.a, g = h.a;
|
|
21678
|
+
if (0 === x(e.b.a, d, e.a)) e = f.a, t(e.a, d) || t(e.b.a, d) || (K(e.b), f.c && (I(e.c), f.c = !1), E(d.c, e), ya(c, d));
|
|
21679
|
+
else {
|
|
21680
|
+
var k = u(g.b.a, e.b.a) ? f : h, h = void 0;
|
|
21681
|
+
f.d || k.c ? (k === f ? h = L(d.c.b, e.e) : h = L(g.b.c.b, d.c).b, k.c ? ja(k, h) : (e = c, f = la(c, f, h), f.f = R(f).f + f.a.f, f.d = oa(e, f.f)), ya(c, d)) : U(c, f, d.c, d.c, null, !0);
|
|
21682
|
+
}
|
|
21683
|
+
return;
|
|
21684
|
+
}
|
|
21685
|
+
c = ka(c.i);
|
|
21686
|
+
e = S(c);
|
|
21687
|
+
f = e.a;
|
|
21688
|
+
e = T(a, e, null);
|
|
21689
|
+
if (e.c === f) {
|
|
21690
|
+
var f = e, e = f.c, g = S(c), h = c.a, k = g.a, l = !1;
|
|
21691
|
+
h.b.a !== k.b.a && wa(a, c);
|
|
21692
|
+
t(h.a, a.a) && (E(J(e), h), c = ka(c), e = S(c).a, T(a, S(c), g), l = !0);
|
|
21693
|
+
t(k.a, a.a) && (E(f, J(k)), f = T(a, g, null), l = !0);
|
|
21694
|
+
l ? U(a, c, f.c, e, e, !0) : (u(k.a, h.a) ? d = J(k) : d = h, d = L(f.c.b, d), U(a, c, d, d.c, d.c, !1), d.b.i.c = !0, ra(a, c));
|
|
21695
|
+
} else U(a, c, e.c, f, f, !0);
|
|
21696
|
+
}
|
|
21697
|
+
function za(a, b) {
|
|
21698
|
+
var c = new ma, d = ea(a.b);
|
|
21699
|
+
d.a.b = O;
|
|
21700
|
+
d.a.a = b;
|
|
21701
|
+
d.b.a.b = -O;
|
|
21702
|
+
d.b.a.a = b;
|
|
21703
|
+
a.a = d.b.a;
|
|
21704
|
+
c.a = d;
|
|
21705
|
+
c.f = 0;
|
|
21706
|
+
c.d = !1;
|
|
21707
|
+
c.c = !1;
|
|
21708
|
+
c.h = !0;
|
|
21709
|
+
c.b = !1;
|
|
21710
|
+
d = a.f;
|
|
21711
|
+
d = na(d, d.a, c);
|
|
21712
|
+
c.e = d;
|
|
21713
|
+
}
|
|
21714
|
+
function Aa(a) {
|
|
21715
|
+
this.a = new Ba;
|
|
21716
|
+
this.b = a;
|
|
21717
|
+
this.c = ia;
|
|
21718
|
+
}
|
|
21719
|
+
function na(a, b, c) {
|
|
21720
|
+
do b = b.c;
|
|
21721
|
+
while (null !== b.b && !a.c(a.b, b.b, c));
|
|
21722
|
+
a = new Ba(c, b.a, b);
|
|
21723
|
+
b.a.c = a;
|
|
21724
|
+
return b.a = a;
|
|
21725
|
+
}
|
|
21726
|
+
function Ba(a, b, c) {
|
|
21727
|
+
this.b = a || null;
|
|
21728
|
+
this.a = b || this;
|
|
21729
|
+
this.c = c || this;
|
|
21730
|
+
}
|
|
21731
|
+
function X() {
|
|
21732
|
+
this.d = Y;
|
|
21733
|
+
this.p = this.b = this.q = null;
|
|
21734
|
+
this.j = [
|
|
21735
|
+
0,
|
|
21736
|
+
0,
|
|
21737
|
+
0
|
|
21738
|
+
];
|
|
21739
|
+
this.s = 100130;
|
|
21740
|
+
this.n = !1;
|
|
21741
|
+
this.o = this.a = this.e = this.f = null;
|
|
21742
|
+
this.m = !1;
|
|
21743
|
+
this.c = this.r = this.i = this.k = this.l = this.h = null;
|
|
21744
|
+
}
|
|
21745
|
+
var Y = 0;
|
|
21746
|
+
n = X.prototype;
|
|
21747
|
+
n.x = function() {
|
|
21748
|
+
Z(this, Y);
|
|
21749
|
+
};
|
|
21750
|
+
n.B = function(a, b) {
|
|
21751
|
+
switch(a){
|
|
21752
|
+
case 100142:
|
|
21753
|
+
return;
|
|
21754
|
+
case 100140:
|
|
21755
|
+
switch(b){
|
|
21756
|
+
case 100130:
|
|
21757
|
+
case 100131:
|
|
21758
|
+
case 100132:
|
|
21759
|
+
case 100133:
|
|
21760
|
+
case 100134:
|
|
21761
|
+
this.s = b;
|
|
21762
|
+
return;
|
|
21763
|
+
}
|
|
21764
|
+
break;
|
|
21765
|
+
case 100141:
|
|
21766
|
+
this.m = !!b;
|
|
21767
|
+
return;
|
|
21768
|
+
default:
|
|
21769
|
+
V(this, 100900);
|
|
21770
|
+
return;
|
|
21771
|
+
}
|
|
21772
|
+
V(this, 100901);
|
|
21773
|
+
};
|
|
21774
|
+
n.y = function(a) {
|
|
21775
|
+
switch(a){
|
|
21776
|
+
case 100142:
|
|
21777
|
+
return 0;
|
|
21778
|
+
case 100140:
|
|
21779
|
+
return this.s;
|
|
21780
|
+
case 100141:
|
|
21781
|
+
return this.m;
|
|
21782
|
+
default:
|
|
21783
|
+
V(this, 100900);
|
|
21784
|
+
}
|
|
21785
|
+
return !1;
|
|
21786
|
+
};
|
|
21787
|
+
n.A = function(a, b, c) {
|
|
21788
|
+
this.j[0] = a;
|
|
21789
|
+
this.j[1] = b;
|
|
21790
|
+
this.j[2] = c;
|
|
21791
|
+
};
|
|
21792
|
+
n.z = function(a, b) {
|
|
21793
|
+
var c = b ? b : null;
|
|
21794
|
+
switch(a){
|
|
21795
|
+
case 100100:
|
|
21796
|
+
case 100106:
|
|
21797
|
+
this.h = c;
|
|
21798
|
+
break;
|
|
21799
|
+
case 100104:
|
|
21800
|
+
case 100110:
|
|
21801
|
+
this.l = c;
|
|
21802
|
+
break;
|
|
21803
|
+
case 100101:
|
|
21804
|
+
case 100107:
|
|
21805
|
+
this.k = c;
|
|
21806
|
+
break;
|
|
21807
|
+
case 100102:
|
|
21808
|
+
case 100108:
|
|
21809
|
+
this.i = c;
|
|
21810
|
+
break;
|
|
21811
|
+
case 100103:
|
|
21812
|
+
case 100109:
|
|
21813
|
+
this.p = c;
|
|
21814
|
+
break;
|
|
21815
|
+
case 100105:
|
|
21816
|
+
case 100111:
|
|
21817
|
+
this.o = c;
|
|
21818
|
+
break;
|
|
21819
|
+
case 100112:
|
|
21820
|
+
this.r = c;
|
|
21821
|
+
break;
|
|
21822
|
+
default:
|
|
21823
|
+
V(this, 100900);
|
|
21824
|
+
}
|
|
21825
|
+
};
|
|
21826
|
+
n.C = function(a, b) {
|
|
21827
|
+
var c = !1, d = [
|
|
21828
|
+
0,
|
|
21829
|
+
0,
|
|
21830
|
+
0
|
|
21831
|
+
];
|
|
21832
|
+
Z(this, 2);
|
|
21833
|
+
for(var e = 0; 3 > e; ++e){
|
|
21834
|
+
var f = a[e];
|
|
21835
|
+
-1E150 > f && (f = -1E150, c = !0);
|
|
21836
|
+
1E150 < f && (f = 1E150, c = !0);
|
|
21837
|
+
d[e] = f;
|
|
21838
|
+
}
|
|
21839
|
+
c && V(this, 100155);
|
|
21840
|
+
c = this.q;
|
|
21841
|
+
null === c ? (c = ea(this.b), E(c, c.b)) : (K(c), c = c.e);
|
|
21842
|
+
c.a.d = b;
|
|
21843
|
+
c.a.g[0] = d[0];
|
|
21844
|
+
c.a.g[1] = d[1];
|
|
21845
|
+
c.a.g[2] = d[2];
|
|
21846
|
+
c.f = 1;
|
|
21847
|
+
c.b.f = -1;
|
|
21848
|
+
this.q = c;
|
|
21849
|
+
};
|
|
21850
|
+
n.u = function(a) {
|
|
21851
|
+
Z(this, Y);
|
|
21852
|
+
this.d = 1;
|
|
21853
|
+
this.b = new Ca;
|
|
21854
|
+
this.c = a;
|
|
21855
|
+
};
|
|
21856
|
+
n.t = function() {
|
|
21857
|
+
Z(this, 1);
|
|
21858
|
+
this.d = 2;
|
|
21859
|
+
this.q = null;
|
|
21860
|
+
};
|
|
21861
|
+
n.v = function() {
|
|
21862
|
+
Z(this, 2);
|
|
21863
|
+
this.d = 1;
|
|
21864
|
+
};
|
|
21865
|
+
n.w = function() {
|
|
21866
|
+
Z(this, 1);
|
|
21867
|
+
this.d = Y;
|
|
21868
|
+
var a = this.j[0], b = this.j[1], c = this.j[2], d = !1, e = [
|
|
21869
|
+
a,
|
|
21870
|
+
b,
|
|
21871
|
+
c
|
|
21872
|
+
];
|
|
21873
|
+
if (0 === a && 0 === b && 0 === c) {
|
|
21874
|
+
for(var b = [
|
|
21875
|
+
-2 * 1E150,
|
|
21876
|
+
-2 * 1E150,
|
|
21877
|
+
-2 * 1E150
|
|
21878
|
+
], f = [
|
|
21879
|
+
2 * 1E150,
|
|
21880
|
+
2 * 1E150,
|
|
21881
|
+
2 * 1E150
|
|
21882
|
+
], c = [], g = [], d = this.b.c, a = d.e; a !== d; a = a.e)for(var h = 0; 3 > h; ++h){
|
|
21883
|
+
var k = a.g[h];
|
|
21884
|
+
k < f[h] && (f[h] = k, g[h] = a);
|
|
21885
|
+
k > b[h] && (b[h] = k, c[h] = a);
|
|
21886
|
+
}
|
|
21887
|
+
a = 0;
|
|
21888
|
+
b[1] - f[1] > b[0] - f[0] && (a = 1);
|
|
21889
|
+
b[2] - f[2] > b[a] - f[a] && (a = 2);
|
|
21890
|
+
if (f[a] >= b[a]) e[0] = 0, e[1] = 0, e[2] = 1;
|
|
21891
|
+
else {
|
|
21892
|
+
b = 0;
|
|
21893
|
+
f = g[a];
|
|
21894
|
+
c = c[a];
|
|
21895
|
+
g = [
|
|
21896
|
+
0,
|
|
21897
|
+
0,
|
|
21898
|
+
0
|
|
21899
|
+
];
|
|
21900
|
+
f = [
|
|
21901
|
+
f.g[0] - c.g[0],
|
|
21902
|
+
f.g[1] - c.g[1],
|
|
21903
|
+
f.g[2] - c.g[2]
|
|
21904
|
+
];
|
|
21905
|
+
h = [
|
|
21906
|
+
0,
|
|
21907
|
+
0,
|
|
21908
|
+
0
|
|
21909
|
+
];
|
|
21910
|
+
for(a = d.e; a !== d; a = a.e)h[0] = a.g[0] - c.g[0], h[1] = a.g[1] - c.g[1], h[2] = a.g[2] - c.g[2], g[0] = f[1] * h[2] - f[2] * h[1], g[1] = f[2] * h[0] - f[0] * h[2], g[2] = f[0] * h[1] - f[1] * h[0], k = g[0] * g[0] + g[1] * g[1] + g[2] * g[2], k > b && (b = k, e[0] = g[0], e[1] = g[1], e[2] = g[2]);
|
|
21911
|
+
0 >= b && (e[0] = e[1] = e[2] = 0, e[ha(f)] = 1);
|
|
21912
|
+
}
|
|
21913
|
+
d = !0;
|
|
21914
|
+
}
|
|
21915
|
+
g = ha(e);
|
|
21916
|
+
a = this.b.c;
|
|
21917
|
+
b = (g + 1) % 3;
|
|
21918
|
+
c = (g + 2) % 3;
|
|
21919
|
+
g = 0 < e[g] ? 1 : -1;
|
|
21920
|
+
for(e = a.e; e !== a; e = e.e)e.b = e.g[b], e.a = g * e.g[c];
|
|
21921
|
+
if (d) {
|
|
21922
|
+
e = 0;
|
|
21923
|
+
d = this.b.a;
|
|
21924
|
+
for(a = d.b; a !== d; a = a.b)if (b = a.a, !(0 >= b.f)) {
|
|
21925
|
+
do e += (b.a.b - b.b.a.b) * (b.a.a + b.b.a.a), b = b.e;
|
|
21926
|
+
while (b !== a.a);
|
|
21927
|
+
}
|
|
21928
|
+
if (0 > e) for(e = this.b.c, d = e.e; d !== e; d = d.e)d.a = -d.a;
|
|
21929
|
+
}
|
|
21930
|
+
this.n = !1;
|
|
21931
|
+
e = this.b.b;
|
|
21932
|
+
for(a = e.h; a !== e; a = d)if (d = a.h, b = a.e, t(a.a, a.b.a) && a.e.e !== a && (ta(this, b, a), I(a), a = b, b = a.e), b.e === a) {
|
|
21933
|
+
if (b !== a) {
|
|
21934
|
+
if (b === d || b === d.b) d = d.h;
|
|
21935
|
+
I(b);
|
|
21936
|
+
}
|
|
21937
|
+
if (a === d || a === d.b) d = d.h;
|
|
21938
|
+
I(a);
|
|
21939
|
+
}
|
|
21940
|
+
this.e = e = new Da;
|
|
21941
|
+
d = this.b.c;
|
|
21942
|
+
for(a = d.e; a !== d; a = a.e)a.h = xa(e, a);
|
|
21943
|
+
Ea(e);
|
|
21944
|
+
this.f = new Aa(this);
|
|
21945
|
+
za(this, -O);
|
|
21946
|
+
for(za(this, O); null !== (e = Fa(this.e));){
|
|
21947
|
+
for(;;){
|
|
21948
|
+
a: if (a = this.e, 0 === a.a) d = Ga(a.b);
|
|
21949
|
+
else if (d = a.c[a.d[a.a - 1]], 0 !== a.b.a && (a = Ga(a.b), u(a, d))) {
|
|
21950
|
+
d = a;
|
|
21951
|
+
break a;
|
|
21952
|
+
}
|
|
21953
|
+
if (null === d || !t(d, e)) break;
|
|
21954
|
+
d = Fa(this.e);
|
|
21955
|
+
ta(this, e.c, d.c);
|
|
21956
|
+
}
|
|
21957
|
+
ya(this, e);
|
|
21958
|
+
}
|
|
21959
|
+
this.a = this.f.a.a.b.a.a;
|
|
21960
|
+
for(e = 0; null !== (d = this.f.a.a.b);)d.h || ++e, Q(d);
|
|
21961
|
+
this.f = null;
|
|
21962
|
+
e = this.e;
|
|
21963
|
+
e.b = null;
|
|
21964
|
+
e.d = null;
|
|
21965
|
+
this.e = e.c = null;
|
|
21966
|
+
e = this.b;
|
|
21967
|
+
for(a = e.a.b; a !== e.a; a = d)d = a.b, a = a.a, a.e.e === a && (P(a.c, a), I(a));
|
|
21968
|
+
if (!this.n) {
|
|
21969
|
+
e = this.b;
|
|
21970
|
+
if (this.m) for(a = e.b.h; a !== e.b; a = d)d = a.h, a.b.d.c !== a.d.c ? a.f = a.d.c ? 1 : -1 : I(a);
|
|
21971
|
+
else for(a = e.a.b; a !== e.a; a = d)if (d = a.b, a.c) {
|
|
21972
|
+
for(a = a.a; u(a.b.a, a.a); a = a.c.b);
|
|
21973
|
+
for(; u(a.a, a.b.a); a = a.e);
|
|
21974
|
+
b = a.c.b;
|
|
21975
|
+
for(c = void 0; a.e !== b;)if (u(a.b.a, b.a)) {
|
|
21976
|
+
for(; b.e !== a && (ca(b.e) || 0 >= x(b.a, b.b.a, b.e.b.a));)c = L(b.e, b), b = c.b;
|
|
21977
|
+
b = b.c.b;
|
|
21978
|
+
} else {
|
|
21979
|
+
for(; b.e !== a && (da(a.c.b) || 0 <= x(a.b.a, a.a, a.c.b.a));)c = L(a, a.c.b), a = c.b;
|
|
21980
|
+
a = a.e;
|
|
21981
|
+
}
|
|
21982
|
+
for(; b.e.e !== a;)c = L(b.e, b), b = c.b;
|
|
21983
|
+
}
|
|
21984
|
+
if (this.h || this.i || this.k || this.l) if (this.m) for(e = this.b, d = e.a.b; d !== e.a; d = d.b){
|
|
21985
|
+
if (d.c) {
|
|
21986
|
+
this.h && this.h(2, this.c);
|
|
21987
|
+
a = d.a;
|
|
21988
|
+
do this.k && this.k(a.a.d, this.c), a = a.e;
|
|
21989
|
+
while (a !== d.a);
|
|
21990
|
+
this.i && this.i(this.c);
|
|
21991
|
+
}
|
|
21992
|
+
}
|
|
21993
|
+
else {
|
|
21994
|
+
e = this.b;
|
|
21995
|
+
d = !!this.l;
|
|
21996
|
+
a = !1;
|
|
21997
|
+
b = -1;
|
|
21998
|
+
for(c = e.a.d; c !== e.a; c = c.d)if (c.c) {
|
|
21999
|
+
a || (this.h && this.h(4, this.c), a = !0);
|
|
22000
|
+
g = c.a;
|
|
22001
|
+
do d && (f = g.b.d.c ? 0 : 1, b !== f && (b = f, this.l && this.l(!!b, this.c))), this.k && this.k(g.a.d, this.c), g = g.e;
|
|
22002
|
+
while (g !== c.a);
|
|
22003
|
+
}
|
|
22004
|
+
a && this.i && this.i(this.c);
|
|
22005
|
+
}
|
|
22006
|
+
if (this.r) {
|
|
22007
|
+
e = this.b;
|
|
22008
|
+
for(a = e.a.b; a !== e.a; a = d)if (d = a.b, !a.c) {
|
|
22009
|
+
b = a.a;
|
|
22010
|
+
c = b.e;
|
|
22011
|
+
g = void 0;
|
|
22012
|
+
do g = c, c = g.e, g.d = null, null === g.b.d && (g.c === g ? F(g.a, null) : (g.a.c = g.c, H(g, J(g))), f = g.b, f.c === f ? F(f.a, null) : (f.a.c = f.c, H(f, J(f))), fa(g));
|
|
22013
|
+
while (g !== b);
|
|
22014
|
+
b = a.d;
|
|
22015
|
+
a = a.b;
|
|
22016
|
+
a.d = b;
|
|
22017
|
+
b.b = a;
|
|
22018
|
+
}
|
|
22019
|
+
this.r(this.b);
|
|
22020
|
+
this.c = this.b = null;
|
|
22021
|
+
return;
|
|
22022
|
+
}
|
|
22023
|
+
}
|
|
22024
|
+
this.b = this.c = null;
|
|
22025
|
+
};
|
|
22026
|
+
function Z(a, b) {
|
|
22027
|
+
if (a.d !== b) for(; a.d !== b;)if (a.d < b) switch(a.d){
|
|
22028
|
+
case Y:
|
|
22029
|
+
V(a, 100151);
|
|
22030
|
+
a.u(null);
|
|
22031
|
+
break;
|
|
22032
|
+
case 1:
|
|
22033
|
+
V(a, 100152), a.t();
|
|
22034
|
+
}
|
|
22035
|
+
else switch(a.d){
|
|
22036
|
+
case 2:
|
|
22037
|
+
V(a, 100154);
|
|
22038
|
+
a.v();
|
|
22039
|
+
break;
|
|
22040
|
+
case 1:
|
|
22041
|
+
V(a, 100153), a.w();
|
|
22042
|
+
}
|
|
22043
|
+
}
|
|
22044
|
+
function V(a, b) {
|
|
22045
|
+
a.p && a.p(b, a.c);
|
|
22046
|
+
}
|
|
22047
|
+
function ga(a, b) {
|
|
22048
|
+
this.b = a || this;
|
|
22049
|
+
this.d = b || this;
|
|
22050
|
+
this.a = null;
|
|
22051
|
+
this.c = !1;
|
|
22052
|
+
}
|
|
22053
|
+
function M() {
|
|
22054
|
+
this.h = this;
|
|
22055
|
+
this.i = this.d = this.a = this.e = this.c = this.b = null;
|
|
22056
|
+
this.f = 0;
|
|
22057
|
+
}
|
|
22058
|
+
function J(a) {
|
|
22059
|
+
return a.b.e;
|
|
22060
|
+
}
|
|
22061
|
+
function Ca() {
|
|
22062
|
+
this.c = new N;
|
|
22063
|
+
this.a = new ga;
|
|
22064
|
+
this.b = new M;
|
|
22065
|
+
this.d = new M;
|
|
22066
|
+
this.b.b = this.d;
|
|
22067
|
+
this.d.b = this.b;
|
|
22068
|
+
}
|
|
22069
|
+
function N(a, b) {
|
|
22070
|
+
this.e = a || this;
|
|
22071
|
+
this.f = b || this;
|
|
22072
|
+
this.d = this.c = null;
|
|
22073
|
+
this.g = [
|
|
22074
|
+
0,
|
|
22075
|
+
0,
|
|
22076
|
+
0
|
|
22077
|
+
];
|
|
22078
|
+
this.h = this.a = this.b = 0;
|
|
22079
|
+
}
|
|
22080
|
+
function Da() {
|
|
22081
|
+
this.c = [];
|
|
22082
|
+
this.d = null;
|
|
22083
|
+
this.a = 0;
|
|
22084
|
+
this.e = !1;
|
|
22085
|
+
this.b = new Ha;
|
|
22086
|
+
}
|
|
22087
|
+
function Ea(a) {
|
|
22088
|
+
a.d = [];
|
|
22089
|
+
for(var b = 0; b < a.a; b++)a.d[b] = b;
|
|
22090
|
+
a.d.sort(function(a) {
|
|
22091
|
+
return function(b, e) {
|
|
22092
|
+
return u(a[b], a[e]) ? 1 : -1;
|
|
22093
|
+
};
|
|
22094
|
+
}(a.c));
|
|
22095
|
+
a.e = !0;
|
|
22096
|
+
Ia(a.b);
|
|
22097
|
+
}
|
|
22098
|
+
function xa(a, b) {
|
|
22099
|
+
if (a.e) {
|
|
22100
|
+
var c = a.b, d = ++c.a;
|
|
22101
|
+
2 * d > c.f && (c.f *= 2, c.c = Ja(c.c, c.f + 1));
|
|
22102
|
+
var e;
|
|
22103
|
+
0 === c.b ? e = d : (e = c.b, c.b = c.c[c.b]);
|
|
22104
|
+
c.e[e] = b;
|
|
22105
|
+
c.c[e] = d;
|
|
22106
|
+
c.d[d] = e;
|
|
22107
|
+
c.h && va(c, d);
|
|
22108
|
+
return e;
|
|
22109
|
+
}
|
|
22110
|
+
c = a.a++;
|
|
22111
|
+
a.c[c] = b;
|
|
22112
|
+
return -(c + 1);
|
|
22113
|
+
}
|
|
22114
|
+
function Fa(a) {
|
|
22115
|
+
if (0 === a.a) return Ka(a.b);
|
|
22116
|
+
var b = a.c[a.d[a.a - 1]];
|
|
22117
|
+
if (0 !== a.b.a && u(Ga(a.b), b)) return Ka(a.b);
|
|
22118
|
+
do --a.a;
|
|
22119
|
+
while (0 < a.a && null === a.c[a.d[a.a - 1]]);
|
|
22120
|
+
return b;
|
|
22121
|
+
}
|
|
22122
|
+
function Ha() {
|
|
22123
|
+
this.d = Ja([
|
|
22124
|
+
0
|
|
22125
|
+
], 33);
|
|
22126
|
+
this.e = [
|
|
22127
|
+
null,
|
|
22128
|
+
null
|
|
22129
|
+
];
|
|
22130
|
+
this.c = [
|
|
22131
|
+
0,
|
|
22132
|
+
0
|
|
22133
|
+
];
|
|
22134
|
+
this.a = 0;
|
|
22135
|
+
this.f = 32;
|
|
22136
|
+
this.b = 0;
|
|
22137
|
+
this.h = !1;
|
|
22138
|
+
this.d[1] = 1;
|
|
22139
|
+
}
|
|
22140
|
+
function Ja(a, b) {
|
|
22141
|
+
for(var c = Array(b), d = 0; d < a.length; d++)c[d] = a[d];
|
|
22142
|
+
for(; d < b; d++)c[d] = 0;
|
|
22143
|
+
return c;
|
|
22144
|
+
}
|
|
22145
|
+
function Ia(a) {
|
|
22146
|
+
for(var b = a.a; 1 <= b; --b)W(a, b);
|
|
22147
|
+
a.h = !0;
|
|
22148
|
+
}
|
|
22149
|
+
function Ga(a) {
|
|
22150
|
+
return a.e[a.d[1]];
|
|
22151
|
+
}
|
|
22152
|
+
function Ka(a) {
|
|
22153
|
+
var b = a.d, c = a.e, d = a.c, e = b[1], f = c[e];
|
|
22154
|
+
0 < a.a && (b[1] = b[a.a], d[b[1]] = 1, c[e] = null, d[e] = a.b, a.b = e, 0 < --a.a && W(a, 1));
|
|
22155
|
+
return f;
|
|
22156
|
+
}
|
|
22157
|
+
function W(a, b) {
|
|
22158
|
+
for(var c = a.d, d = a.e, e = a.c, f = b, g = c[f];;){
|
|
22159
|
+
var h = f << 1;
|
|
22160
|
+
h < a.a && u(d[c[h + 1]], d[c[h]]) && (h += 1);
|
|
22161
|
+
var k = c[h];
|
|
22162
|
+
if (h > a.a || u(d[g], d[k])) {
|
|
22163
|
+
c[f] = g;
|
|
22164
|
+
e[g] = f;
|
|
22165
|
+
break;
|
|
22166
|
+
}
|
|
22167
|
+
c[f] = k;
|
|
22168
|
+
e[k] = f;
|
|
22169
|
+
f = h;
|
|
22170
|
+
}
|
|
22171
|
+
}
|
|
22172
|
+
function va(a, b) {
|
|
22173
|
+
for(var c = a.d, d = a.e, e = a.c, f = b, g = c[f];;){
|
|
22174
|
+
var h = f >> 1, k = c[h];
|
|
22175
|
+
if (0 === h || u(d[k], d[g])) {
|
|
22176
|
+
c[f] = g;
|
|
22177
|
+
e[g] = f;
|
|
22178
|
+
break;
|
|
22179
|
+
}
|
|
22180
|
+
c[f] = k;
|
|
22181
|
+
e[k] = f;
|
|
22182
|
+
f = h;
|
|
22183
|
+
}
|
|
22184
|
+
}
|
|
22185
|
+
function ma() {
|
|
22186
|
+
this.e = this.a = null;
|
|
22187
|
+
this.f = 0;
|
|
22188
|
+
this.c = this.b = this.h = this.d = !1;
|
|
22189
|
+
}
|
|
22190
|
+
function S(a) {
|
|
22191
|
+
return a.e.c.b;
|
|
22192
|
+
}
|
|
22193
|
+
function R(a) {
|
|
22194
|
+
return a.e.a.b;
|
|
22195
|
+
}
|
|
22196
|
+
commonjsGlobal.libtess = {
|
|
22197
|
+
GluTesselator: X,
|
|
22198
|
+
windingRule: {
|
|
22199
|
+
GLU_TESS_WINDING_ODD: 100130,
|
|
22200
|
+
GLU_TESS_WINDING_NONZERO: 100131,
|
|
22201
|
+
GLU_TESS_WINDING_POSITIVE: 100132,
|
|
22202
|
+
GLU_TESS_WINDING_NEGATIVE: 100133,
|
|
22203
|
+
GLU_TESS_WINDING_ABS_GEQ_TWO: 100134
|
|
22204
|
+
},
|
|
22205
|
+
primitiveType: {
|
|
22206
|
+
GL_LINE_LOOP: 2,
|
|
22207
|
+
GL_TRIANGLES: 4,
|
|
22208
|
+
GL_TRIANGLE_STRIP: 5,
|
|
22209
|
+
GL_TRIANGLE_FAN: 6
|
|
22210
|
+
},
|
|
22211
|
+
errorType: {
|
|
22212
|
+
GLU_TESS_MISSING_BEGIN_POLYGON: 100151,
|
|
22213
|
+
GLU_TESS_MISSING_END_POLYGON: 100153,
|
|
22214
|
+
GLU_TESS_MISSING_BEGIN_CONTOUR: 100152,
|
|
22215
|
+
GLU_TESS_MISSING_END_CONTOUR: 100154,
|
|
22216
|
+
GLU_TESS_COORD_TOO_LARGE: 100155,
|
|
22217
|
+
GLU_TESS_NEED_COMBINE_CALLBACK: 100156
|
|
22218
|
+
},
|
|
22219
|
+
gluEnum: {
|
|
22220
|
+
GLU_TESS_MESH: 100112,
|
|
22221
|
+
GLU_TESS_TOLERANCE: 100142,
|
|
22222
|
+
GLU_TESS_WINDING_RULE: 100140,
|
|
22223
|
+
GLU_TESS_BOUNDARY_ONLY: 100141,
|
|
22224
|
+
GLU_INVALID_ENUM: 100900,
|
|
22225
|
+
GLU_INVALID_VALUE: 100901,
|
|
22226
|
+
GLU_TESS_BEGIN: 100100,
|
|
22227
|
+
GLU_TESS_VERTEX: 100101,
|
|
22228
|
+
GLU_TESS_END: 100102,
|
|
22229
|
+
GLU_TESS_ERROR: 100103,
|
|
22230
|
+
GLU_TESS_EDGE_FLAG: 100104,
|
|
22231
|
+
GLU_TESS_COMBINE: 100105,
|
|
22232
|
+
GLU_TESS_BEGIN_DATA: 100106,
|
|
22233
|
+
GLU_TESS_VERTEX_DATA: 100107,
|
|
22234
|
+
GLU_TESS_END_DATA: 100108,
|
|
22235
|
+
GLU_TESS_ERROR_DATA: 100109,
|
|
22236
|
+
GLU_TESS_EDGE_FLAG_DATA: 100110,
|
|
22237
|
+
GLU_TESS_COMBINE_DATA: 100111
|
|
22238
|
+
}
|
|
22239
|
+
};
|
|
22240
|
+
X.prototype.gluDeleteTess = X.prototype.x;
|
|
22241
|
+
X.prototype.gluTessProperty = X.prototype.B;
|
|
22242
|
+
X.prototype.gluGetTessProperty = X.prototype.y;
|
|
22243
|
+
X.prototype.gluTessNormal = X.prototype.A;
|
|
22244
|
+
X.prototype.gluTessCallback = X.prototype.z;
|
|
22245
|
+
X.prototype.gluTessVertex = X.prototype.C;
|
|
22246
|
+
X.prototype.gluTessBeginPolygon = X.prototype.u;
|
|
22247
|
+
X.prototype.gluTessBeginContour = X.prototype.t;
|
|
22248
|
+
X.prototype.gluTessEndContour = X.prototype.v;
|
|
22249
|
+
X.prototype.gluTessEndPolygon = X.prototype.w;
|
|
22250
|
+
{
|
|
22251
|
+
module.exports = commonjsGlobal.libtess;
|
|
22252
|
+
}
|
|
22253
|
+
}(libtess_min));
|
|
22254
|
+
|
|
22255
|
+
var tessy = function initTesselator() {
|
|
22256
|
+
// function called for each vertex of tesselator output
|
|
22257
|
+
function vertexCallback(data, polyVertArray) {
|
|
22258
|
+
polyVertArray[polyVertArray.length] = data[0];
|
|
22259
|
+
polyVertArray[polyVertArray.length] = data[1];
|
|
22260
|
+
}
|
|
22261
|
+
function begincallback(type) {
|
|
22262
|
+
if (type !== libtess_min.exports.primitiveType.GL_TRIANGLES) {
|
|
22263
|
+
console.info("expected TRIANGLES but got type: " + type);
|
|
22264
|
+
}
|
|
22265
|
+
}
|
|
22266
|
+
function errorcallback(errno) {
|
|
22267
|
+
console.error("error callback, error number: " + errno);
|
|
22268
|
+
}
|
|
22269
|
+
// callback for when segments intersect and must be split
|
|
22270
|
+
function combinecallback(coords, data, weight) {
|
|
22271
|
+
// console.log('combine callback');
|
|
22272
|
+
return [
|
|
22273
|
+
coords[0],
|
|
22274
|
+
coords[1],
|
|
22275
|
+
coords[2]
|
|
22276
|
+
];
|
|
22277
|
+
}
|
|
22278
|
+
function edgeCallback(flag) {
|
|
22279
|
+
// don't really care about the flag, but need no-strip/no-fan behavior
|
|
22280
|
+
// console.log('edge flag: ' + flag);
|
|
22281
|
+
}
|
|
22282
|
+
var tessy = new libtess_min.exports.GluTesselator();
|
|
22283
|
+
// tessy.gluTessProperty(libtess.gluEnum.GLU_TESS_WINDING_RULE, libtess.windingRule.GLU_TESS_WINDING_POSITIVE);
|
|
22284
|
+
tessy.gluTessCallback(libtess_min.exports.gluEnum.GLU_TESS_VERTEX_DATA, vertexCallback);
|
|
22285
|
+
tessy.gluTessCallback(libtess_min.exports.gluEnum.GLU_TESS_BEGIN, begincallback);
|
|
22286
|
+
tessy.gluTessCallback(libtess_min.exports.gluEnum.GLU_TESS_ERROR, errorcallback);
|
|
22287
|
+
tessy.gluTessCallback(libtess_min.exports.gluEnum.GLU_TESS_COMBINE, combinecallback);
|
|
22288
|
+
tessy.gluTessCallback(libtess_min.exports.gluEnum.GLU_TESS_EDGE_FLAG, edgeCallback);
|
|
22289
|
+
return tessy;
|
|
22290
|
+
}();
|
|
22291
|
+
function triangulate(contours) {
|
|
22292
|
+
// libtess will take 3d verts and flatten to a plane for tesselation
|
|
22293
|
+
// since only doing 2d tesselation here, provide z=1 normal to skip
|
|
22294
|
+
// iterating over verts only to get the same answer.
|
|
22295
|
+
// comment out to test normal-generation code
|
|
22296
|
+
tessy.gluTessNormal(0, 0, 1);
|
|
22297
|
+
var triangleVerts = [];
|
|
22298
|
+
tessy.gluTessBeginPolygon(triangleVerts);
|
|
22299
|
+
for(var i = 0; i < contours.length; i++){
|
|
22300
|
+
tessy.gluTessBeginContour();
|
|
22301
|
+
var contour = contours[i];
|
|
22302
|
+
for(var j = 0; j < contour.length; j += 2){
|
|
22303
|
+
var coords = [
|
|
22304
|
+
contour[j],
|
|
22305
|
+
contour[j + 1],
|
|
22306
|
+
0
|
|
22307
|
+
];
|
|
22308
|
+
tessy.gluTessVertex(coords, coords);
|
|
22309
|
+
}
|
|
22310
|
+
tessy.gluTessEndContour();
|
|
22311
|
+
}
|
|
22312
|
+
// finish polygon
|
|
22313
|
+
tessy.gluTessEndPolygon();
|
|
22314
|
+
return triangleVerts;
|
|
22315
|
+
}
|
|
22316
|
+
|
|
22317
|
+
exports.ShapeComponent = /*#__PURE__*/ function(RendererComponent) {
|
|
22318
|
+
_inherits(ShapeComponent, RendererComponent);
|
|
22319
|
+
function ShapeComponent(engine) {
|
|
22320
|
+
var _this;
|
|
22321
|
+
_this = RendererComponent.call(this, engine) || this;
|
|
22322
|
+
_this.path = new GraphicsPath();
|
|
22323
|
+
_this.curveValues = [];
|
|
22324
|
+
_this.dirty = false;
|
|
22325
|
+
_this.vert = "\nprecision highp float;\n\nattribute vec3 aPos;//x y\n\nvarying vec4 vColor;\n\nuniform vec4 _Color;\nuniform mat4 effects_MatrixVP;\nuniform mat4 effects_MatrixInvV;\nuniform mat4 effects_ObjectToWorld;\n\nvoid main() {\n vColor = _Color;\n vec4 pos = vec4(aPos.xyz, 1.0);\n gl_Position = effects_MatrixVP * effects_ObjectToWorld * pos;\n}\n";
|
|
22326
|
+
_this.frag = "\nprecision highp float;\n\nvarying vec4 vColor;\n\nvoid main() {\n vec4 color = vec4(1.0,1.0,1.0,1.0);\n gl_FragColor = color;\n}\n";
|
|
22327
|
+
if (!_this.geometry) {
|
|
22328
|
+
_this.geometry = Geometry.create(engine, {
|
|
22329
|
+
attributes: {
|
|
22330
|
+
aPos: {
|
|
22331
|
+
type: glContext.FLOAT,
|
|
22332
|
+
size: 3,
|
|
22333
|
+
data: new Float32Array([
|
|
22334
|
+
-0.5,
|
|
22335
|
+
0.5,
|
|
22336
|
+
0,
|
|
22337
|
+
-0.5,
|
|
22338
|
+
-0.5,
|
|
22339
|
+
0,
|
|
22340
|
+
0.5,
|
|
22341
|
+
0.5,
|
|
22342
|
+
0,
|
|
22343
|
+
0.5,
|
|
22344
|
+
-0.5,
|
|
22345
|
+
0
|
|
22346
|
+
])
|
|
22347
|
+
},
|
|
22348
|
+
aUV: {
|
|
22349
|
+
type: glContext.FLOAT,
|
|
22350
|
+
size: 2,
|
|
22351
|
+
data: new Float32Array()
|
|
22352
|
+
}
|
|
22353
|
+
},
|
|
22354
|
+
mode: glContext.TRIANGLES,
|
|
22355
|
+
drawCount: 4
|
|
22356
|
+
});
|
|
22357
|
+
}
|
|
22358
|
+
if (!_this.material) {
|
|
22359
|
+
var materialProps = {
|
|
22360
|
+
shader: {
|
|
22361
|
+
vertex: _this.vert,
|
|
22362
|
+
fragment: _this.frag,
|
|
22363
|
+
glslVersion: exports.GLSLVersion.GLSL1
|
|
22364
|
+
}
|
|
22365
|
+
};
|
|
22366
|
+
_this.material = Material.create(engine, materialProps);
|
|
22367
|
+
_this.material.setColor("_Color", new Color(1, 1, 1, 1));
|
|
22368
|
+
_this.material.depthMask = true;
|
|
22369
|
+
_this.material.depthTest = true;
|
|
22370
|
+
_this.material.blending = true;
|
|
22371
|
+
}
|
|
22372
|
+
return _this;
|
|
22373
|
+
}
|
|
22374
|
+
var _proto = ShapeComponent.prototype;
|
|
22375
|
+
_proto.onUpdate = function onUpdate(dt) {
|
|
22376
|
+
if (this.dirty) {
|
|
22377
|
+
this.path.clear();
|
|
22378
|
+
this.path.moveTo(this.curveValues[this.curveValues.length - 1].point.x, this.curveValues[this.curveValues.length - 1].point.y);
|
|
22379
|
+
for(var _iterator = _create_for_of_iterator_helper_loose(this.curveValues), _step; !(_step = _iterator()).done;){
|
|
22380
|
+
var curveValue = _step.value;
|
|
22381
|
+
var point = curveValue.point;
|
|
22382
|
+
var control1 = curveValue.controlPoint1;
|
|
22383
|
+
var control2 = curveValue.controlPoint2;
|
|
22384
|
+
this.path.bezierCurveTo(control1.x, control1.y, control2.x, control2.y, point.x, point.y, 1);
|
|
22385
|
+
}
|
|
22386
|
+
this.buildGeometryFromPath(this.path.shapePath);
|
|
22387
|
+
this.dirty = false;
|
|
22388
|
+
}
|
|
22389
|
+
};
|
|
22390
|
+
_proto.render = function render(renderer) {
|
|
22391
|
+
if (renderer.renderingData.currentFrame.globalUniforms) {
|
|
22392
|
+
renderer.setGlobalMatrix("effects_ObjectToWorld", this.transform.getWorldMatrix());
|
|
22393
|
+
}
|
|
22394
|
+
renderer.drawGeometry(this.geometry, this.material);
|
|
22395
|
+
};
|
|
22396
|
+
_proto.buildGeometryFromPath = function buildGeometryFromPath(shapePath) {
|
|
22397
|
+
var shapePrimitives = shapePath.shapePrimitives;
|
|
22398
|
+
var vertices = [];
|
|
22399
|
+
// triangulate shapePrimitive
|
|
22400
|
+
for(var _iterator = _create_for_of_iterator_helper_loose(shapePrimitives), _step; !(_step = _iterator()).done;){
|
|
22401
|
+
var shapePrimitive = _step.value;
|
|
22402
|
+
var _vertices;
|
|
22403
|
+
var shape = shapePrimitive.shape;
|
|
22404
|
+
(_vertices = vertices).push.apply(_vertices, [].concat(triangulate([
|
|
22405
|
+
shape.points
|
|
22406
|
+
])));
|
|
22407
|
+
}
|
|
22408
|
+
// build vertices and uvs
|
|
22409
|
+
var vertexCount = vertices.length / 2;
|
|
22410
|
+
var positionArray = this.geometry.getAttributeData("aPos");
|
|
22411
|
+
var uvArray = this.geometry.getAttributeData("aUV");
|
|
22412
|
+
if (!positionArray || positionArray.length < vertexCount * 3) {
|
|
22413
|
+
positionArray = new Float32Array(vertexCount * 3);
|
|
22414
|
+
}
|
|
22415
|
+
if (!uvArray || uvArray.length < vertexCount * 2) {
|
|
22416
|
+
uvArray = new Float32Array(vertexCount * 2);
|
|
22417
|
+
}
|
|
22418
|
+
for(var i = 0; i < vertexCount; i++){
|
|
22419
|
+
var pointsOffset = i * 3;
|
|
22420
|
+
var positionArrayOffset = i * 2;
|
|
22421
|
+
var uvOffset = i * 2;
|
|
22422
|
+
positionArray[pointsOffset] = vertices[positionArrayOffset];
|
|
22423
|
+
positionArray[pointsOffset + 1] = vertices[positionArrayOffset + 1];
|
|
22424
|
+
positionArray[pointsOffset + 2] = 0;
|
|
22425
|
+
uvArray[uvOffset] = positionArray[pointsOffset];
|
|
22426
|
+
uvArray[uvOffset + 1] = positionArray[pointsOffset + 1];
|
|
22427
|
+
}
|
|
22428
|
+
this.geometry.setAttributeData("aPos", positionArray);
|
|
22429
|
+
this.geometry.setAttributeData("aUV", uvArray);
|
|
22430
|
+
this.geometry.setDrawCount(vertexCount);
|
|
22431
|
+
};
|
|
22432
|
+
_proto.fromData = function fromData(data) {
|
|
22433
|
+
RendererComponent.prototype.fromData.call(this, data);
|
|
22434
|
+
var points = data.param.points;
|
|
22435
|
+
var easingIns = data.param.easingIn;
|
|
22436
|
+
var easingOuts = data.param.easingOut;
|
|
22437
|
+
for(var _iterator = _create_for_of_iterator_helper_loose(data.param.shapes), _step; !(_step = _iterator()).done;){
|
|
22438
|
+
var shape = _step.value;
|
|
22439
|
+
var indices = shape.indexes;
|
|
22440
|
+
for(var i = 1; i < indices.length; i++){
|
|
22441
|
+
var pointIndex = indices[i];
|
|
22442
|
+
var lastPointIndex = indices[i - 1];
|
|
22443
|
+
this.curveValues.push({
|
|
22444
|
+
point: points[pointIndex.point],
|
|
22445
|
+
controlPoint1: easingOuts[lastPointIndex.easingOut],
|
|
22446
|
+
controlPoint2: easingIns[pointIndex.easingIn]
|
|
22447
|
+
});
|
|
22448
|
+
}
|
|
22449
|
+
// Push the last curve
|
|
22450
|
+
this.curveValues.push({
|
|
22451
|
+
point: points[indices[0].point],
|
|
22452
|
+
controlPoint1: easingOuts[indices[indices.length - 1].easingOut],
|
|
22453
|
+
controlPoint2: easingIns[indices[0].easingIn]
|
|
22454
|
+
});
|
|
22455
|
+
}
|
|
22456
|
+
this.dirty = true;
|
|
22457
|
+
};
|
|
22458
|
+
return ShapeComponent;
|
|
22459
|
+
}(RendererComponent);
|
|
22460
|
+
exports.ShapeComponent = __decorate([
|
|
22461
|
+
effectsClass("ShapeComponent")
|
|
22462
|
+
], exports.ShapeComponent);
|
|
22463
|
+
exports.ComponentShapeType = void 0;
|
|
22464
|
+
(function(ComponentShapeType) {
|
|
22465
|
+
/**
|
|
22466
|
+
* 自定义图形
|
|
22467
|
+
*/ ComponentShapeType[ComponentShapeType["CUSTOM"] = 0] = "CUSTOM";
|
|
22468
|
+
/**
|
|
22469
|
+
* 矩形
|
|
22470
|
+
*/ ComponentShapeType[ComponentShapeType["RECTANGLE"] = 1] = "RECTANGLE";
|
|
22471
|
+
/**
|
|
22472
|
+
* 椭圆
|
|
22473
|
+
*/ ComponentShapeType[ComponentShapeType["ELLIPSE"] = 2] = "ELLIPSE";
|
|
22474
|
+
/**
|
|
22475
|
+
* 多边形
|
|
22476
|
+
*/ ComponentShapeType[ComponentShapeType["POLYGON"] = 3] = "POLYGON";
|
|
22477
|
+
/**
|
|
22478
|
+
* 星形
|
|
22479
|
+
*/ ComponentShapeType[ComponentShapeType["STAR"] = 4] = "STAR";
|
|
22480
|
+
})(exports.ComponentShapeType || (exports.ComponentShapeType = {}));
|
|
22481
|
+
exports.ShapeConnectType = void 0;
|
|
22482
|
+
(function(ShapeConnectType) {})(exports.ShapeConnectType || (exports.ShapeConnectType = {}));
|
|
22483
|
+
exports.ShapePointType = void 0;
|
|
22484
|
+
(function(ShapePointType) {})(exports.ShapePointType || (exports.ShapePointType = {}));
|
|
22485
|
+
|
|
20822
22486
|
var EventEmitter = function EventEmitter() {
|
|
20823
22487
|
var _this = this;
|
|
20824
22488
|
var _this1 = this;
|
|
@@ -21188,21 +22852,21 @@ exports.VFXItem = /*#__PURE__*/ function(EffectsObject) {
|
|
|
21188
22852
|
return now - this.duration > 0.001;
|
|
21189
22853
|
};
|
|
21190
22854
|
_proto.find = function find(name) {
|
|
22855
|
+
var _queue;
|
|
21191
22856
|
if (this.name === name) {
|
|
21192
22857
|
return this;
|
|
21193
22858
|
}
|
|
21194
|
-
|
|
21195
|
-
|
|
21196
|
-
|
|
21197
|
-
|
|
21198
|
-
|
|
21199
|
-
|
|
21200
|
-
|
|
21201
|
-
|
|
21202
|
-
|
|
21203
|
-
if (res) {
|
|
21204
|
-
return res;
|
|
22859
|
+
var queue = [];
|
|
22860
|
+
(_queue = queue).push.apply(_queue, [].concat(this.children));
|
|
22861
|
+
var index = 0;
|
|
22862
|
+
while(index < queue.length){
|
|
22863
|
+
var _queue1;
|
|
22864
|
+
var item = queue[index];
|
|
22865
|
+
index++;
|
|
22866
|
+
if (item.name === name) {
|
|
22867
|
+
return item;
|
|
21205
22868
|
}
|
|
22869
|
+
(_queue1 = queue).push.apply(_queue1, [].concat(item.children));
|
|
21206
22870
|
}
|
|
21207
22871
|
return undefined;
|
|
21208
22872
|
};
|
|
@@ -23946,15 +25610,22 @@ function passRenderLevel(l, renderLevel) {
|
|
|
23946
25610
|
return false;
|
|
23947
25611
|
}
|
|
23948
25612
|
|
|
23949
|
-
|
|
23950
|
-
|
|
23951
|
-
|
|
23952
|
-
|
|
23953
|
-
|
|
23954
|
-
|
|
23955
|
-
|
|
23956
|
-
|
|
23957
|
-
|
|
25613
|
+
exports.Scene = void 0;
|
|
25614
|
+
(function(Scene) {
|
|
25615
|
+
function isJSONObject(scene) {
|
|
25616
|
+
return isObject(scene) && "jsonScene" in scene;
|
|
25617
|
+
}
|
|
25618
|
+
// JSON 对象
|
|
25619
|
+
Scene.isJSONObject = isJSONObject;
|
|
25620
|
+
function isURL(scene) {
|
|
25621
|
+
return isObject(scene) && "url" in scene;
|
|
25622
|
+
}
|
|
25623
|
+
Scene.isURL = isURL;
|
|
25624
|
+
function isWithOptions(scene) {
|
|
25625
|
+
return isObject(scene) && "options" in scene;
|
|
25626
|
+
}
|
|
25627
|
+
Scene.isWithOptions = isWithOptions;
|
|
25628
|
+
})(exports.Scene || (exports.Scene = {}));
|
|
23958
25629
|
|
|
23959
25630
|
function getBackgroundImage(template, variables) {
|
|
23960
25631
|
var templateBackground;
|
|
@@ -24079,13 +25750,12 @@ var seed$1 = 1;
|
|
|
24079
25750
|
*/ _proto.loadScene = function loadScene(url, renderer, options) {
|
|
24080
25751
|
var _this = this;
|
|
24081
25752
|
return _async_to_generator(function() {
|
|
24082
|
-
var
|
|
25753
|
+
var rawJSON, assetUrl, startTime, timeInfoMessages, gpuInstance, _gpuInstance_detail_compressedTexture, compressedTexture, timeInfos, loadTimer, cancelLoading, waitPromise, hookTimeInfo, loadResourcePromise;
|
|
24083
25754
|
return __generator(this, function(_state) {
|
|
24084
25755
|
assetUrl = isString(url) ? url : _this.id;
|
|
24085
25756
|
startTime = performance.now();
|
|
24086
25757
|
timeInfoMessages = [];
|
|
24087
25758
|
gpuInstance = renderer == null ? void 0 : renderer.engine.gpuCapability;
|
|
24088
|
-
asyncShaderCompile = (_gpuInstance_detail_asyncShaderCompile = gpuInstance == null ? void 0 : (_gpuInstance_detail = gpuInstance.detail) == null ? void 0 : _gpuInstance_detail.asyncShaderCompile) != null ? _gpuInstance_detail_asyncShaderCompile : false;
|
|
24089
25759
|
compressedTexture = (_gpuInstance_detail_compressedTexture = gpuInstance == null ? void 0 : gpuInstance.detail.compressedTexture) != null ? _gpuInstance_detail_compressedTexture : exports.COMPRESSED_TEXTURE.NONE;
|
|
24090
25760
|
timeInfos = {};
|
|
24091
25761
|
cancelLoading = false;
|
|
@@ -24138,81 +25808,55 @@ var seed$1 = 1;
|
|
|
24138
25808
|
});
|
|
24139
25809
|
});
|
|
24140
25810
|
loadResourcePromise = /*#__PURE__*/ _async_to_generator(function() {
|
|
24141
|
-
var scene,
|
|
25811
|
+
var scene, link, _ref, jsonScene, pluginSystem, _jsonScene_bins, bins, images, compositions, fonts, _ref1, loadedBins, loadedImages, i, i1, imageAsset, loadedTextures, totalTime;
|
|
24142
25812
|
return __generator(this, function(_state) {
|
|
24143
25813
|
switch(_state.label){
|
|
24144
25814
|
case 0:
|
|
24145
|
-
if (!
|
|
24146
|
-
3,
|
|
24147
|
-
1
|
|
24148
|
-
];
|
|
24149
|
-
// TODO: 原 JSONLoader contructor 判断是否兼容
|
|
24150
|
-
rawJSON = url;
|
|
24151
|
-
_this.baseUrl = location.href;
|
|
24152
|
-
return [
|
|
25815
|
+
if (!isString(url)) return [
|
|
24153
25816
|
3,
|
|
24154
|
-
|
|
25817
|
+
2
|
|
24155
25818
|
];
|
|
24156
|
-
case 1:
|
|
24157
25819
|
// 兼容相对路径
|
|
24158
|
-
|
|
24159
|
-
_this.baseUrl =
|
|
25820
|
+
link = new URL(url, location.href).href;
|
|
25821
|
+
_this.baseUrl = link;
|
|
24160
25822
|
return [
|
|
24161
25823
|
4,
|
|
24162
25824
|
hookTimeInfo("loadJSON", function() {
|
|
24163
|
-
return _this.loadJSON(
|
|
25825
|
+
return _this.loadJSON(link);
|
|
24164
25826
|
})
|
|
24165
25827
|
];
|
|
24166
|
-
case
|
|
25828
|
+
case 1:
|
|
24167
25829
|
rawJSON = _state.sent();
|
|
25830
|
+
return [
|
|
25831
|
+
3,
|
|
25832
|
+
3
|
|
25833
|
+
];
|
|
25834
|
+
case 2:
|
|
25835
|
+
// url 为 spec.JSONScene 或 Scene 对象
|
|
25836
|
+
rawJSON = url;
|
|
25837
|
+
_this.baseUrl = location.href;
|
|
24168
25838
|
_state.label = 3;
|
|
24169
25839
|
case 3:
|
|
24170
|
-
if (!
|
|
25840
|
+
if (!exports.Scene.isJSONObject(rawJSON)) return [
|
|
24171
25841
|
3,
|
|
24172
|
-
|
|
25842
|
+
4
|
|
24173
25843
|
];
|
|
24174
25844
|
// 已经加载过的 可能需要更新数据模板
|
|
24175
25845
|
scene = _extends({}, rawJSON);
|
|
24176
|
-
if (!(_this.options && _this.options.variables && Object.keys(_this.options.variables).length !== 0)) return [
|
|
24177
|
-
3,
|
|
24178
|
-
5
|
|
24179
|
-
];
|
|
24180
|
-
_rawJSON_jsonScene = rawJSON.jsonScene, rawImages = _rawJSON_jsonScene.images;
|
|
24181
|
-
images = scene.images;
|
|
24182
|
-
for(i = 0; i < rawImages.length; i++){
|
|
24183
|
-
// 仅重新加载数据模板对应的图片
|
|
24184
|
-
if (_instanceof1(images[i], HTMLCanvasElement)) {
|
|
24185
|
-
images[i] = rawImages[i];
|
|
24186
|
-
}
|
|
24187
|
-
}
|
|
24188
|
-
return [
|
|
24189
|
-
4,
|
|
24190
|
-
hookTimeInfo("processImages", function() {
|
|
24191
|
-
return _this.processImages(images, compressedTexture);
|
|
24192
|
-
})
|
|
24193
|
-
];
|
|
24194
|
-
case 4:
|
|
24195
|
-
scene.images = _state.sent();
|
|
24196
|
-
// 更新 TextureOptions 中的 image 指向
|
|
24197
|
-
for(i1 = 0; i1 < scene.images.length; i1++){
|
|
24198
|
-
scene.textureOptions[i1].image = scene.images[i1];
|
|
24199
|
-
}
|
|
24200
|
-
_state.label = 5;
|
|
24201
|
-
case 5:
|
|
24202
25846
|
return [
|
|
24203
25847
|
3,
|
|
24204
|
-
|
|
25848
|
+
9
|
|
24205
25849
|
];
|
|
24206
|
-
case
|
|
25850
|
+
case 4:
|
|
24207
25851
|
return [
|
|
24208
25852
|
4,
|
|
24209
25853
|
hookTimeInfo("processJSON", function() {
|
|
24210
25854
|
return _this.processJSON(rawJSON);
|
|
24211
25855
|
})
|
|
24212
25856
|
];
|
|
24213
|
-
case
|
|
24214
|
-
_ref = _state.sent(),
|
|
24215
|
-
_jsonScene_bins = jsonScene.bins, bins = _jsonScene_bins === void 0 ? [] : _jsonScene_bins,
|
|
25857
|
+
case 5:
|
|
25858
|
+
_ref = _state.sent(), jsonScene = _ref.jsonScene, pluginSystem = _ref.pluginSystem;
|
|
25859
|
+
_jsonScene_bins = jsonScene.bins, bins = _jsonScene_bins === void 0 ? [] : _jsonScene_bins, images = jsonScene.images, compositions = jsonScene.compositions, fonts = jsonScene.fonts;
|
|
24216
25860
|
return [
|
|
24217
25861
|
4,
|
|
24218
25862
|
Promise.all([
|
|
@@ -24220,38 +25864,36 @@ var seed$1 = 1;
|
|
|
24220
25864
|
return _this.processBins(bins);
|
|
24221
25865
|
}),
|
|
24222
25866
|
hookTimeInfo("processImages", function() {
|
|
24223
|
-
return _this.processImages(
|
|
25867
|
+
return _this.processImages(images, compressedTexture);
|
|
24224
25868
|
}),
|
|
24225
|
-
hookTimeInfo(""
|
|
25869
|
+
hookTimeInfo("precompile", function() {
|
|
24226
25870
|
return _this.precompile(compositions, pluginSystem, renderer, options);
|
|
25871
|
+
}),
|
|
25872
|
+
hookTimeInfo("processFontURL", function() {
|
|
25873
|
+
return _this.processFontURL(fonts);
|
|
24227
25874
|
})
|
|
24228
25875
|
])
|
|
24229
25876
|
];
|
|
24230
|
-
case
|
|
25877
|
+
case 6:
|
|
24231
25878
|
_ref1 = _state.sent(), loadedBins = _ref1[0], loadedImages = _ref1[1];
|
|
25879
|
+
for(i = 0; i < images.length; i++){
|
|
25880
|
+
_this.assets[images[i].id] = loadedImages[i];
|
|
25881
|
+
}
|
|
24232
25882
|
if (renderer) {
|
|
24233
|
-
for(
|
|
25883
|
+
for(i1 = 0; i1 < images.length; i1++){
|
|
24234
25884
|
imageAsset = new ImageAsset(renderer.engine);
|
|
24235
|
-
imageAsset.data = loadedImages[
|
|
24236
|
-
imageAsset.setInstanceId(
|
|
25885
|
+
imageAsset.data = loadedImages[i1];
|
|
25886
|
+
imageAsset.setInstanceId(images[i1].id);
|
|
24237
25887
|
renderer.engine.addInstance(imageAsset);
|
|
24238
25888
|
}
|
|
24239
25889
|
}
|
|
24240
|
-
return [
|
|
24241
|
-
4,
|
|
24242
|
-
hookTimeInfo("processFontURL", function() {
|
|
24243
|
-
return _this.processFontURL(fonts);
|
|
24244
|
-
})
|
|
24245
|
-
];
|
|
24246
|
-
case 9:
|
|
24247
|
-
_state.sent();
|
|
24248
25890
|
return [
|
|
24249
25891
|
4,
|
|
24250
25892
|
hookTimeInfo("processTextures", function() {
|
|
24251
|
-
return _this.processTextures(loadedImages, loadedBins, jsonScene
|
|
25893
|
+
return _this.processTextures(loadedImages, loadedBins, jsonScene);
|
|
24252
25894
|
})
|
|
24253
25895
|
];
|
|
24254
|
-
case
|
|
25896
|
+
case 7:
|
|
24255
25897
|
loadedTextures = _state.sent();
|
|
24256
25898
|
scene = {
|
|
24257
25899
|
timeInfos: timeInfos,
|
|
@@ -24260,7 +25902,6 @@ var seed$1 = 1;
|
|
|
24260
25902
|
storage: {},
|
|
24261
25903
|
pluginSystem: pluginSystem,
|
|
24262
25904
|
jsonScene: jsonScene,
|
|
24263
|
-
usedImages: usedImages,
|
|
24264
25905
|
images: loadedImages,
|
|
24265
25906
|
textureOptions: loadedTextures,
|
|
24266
25907
|
bins: loadedBins
|
|
@@ -24272,10 +25913,10 @@ var seed$1 = 1;
|
|
|
24272
25913
|
return pluginSystem.loadResources(scene, _this.options);
|
|
24273
25914
|
})
|
|
24274
25915
|
];
|
|
24275
|
-
case
|
|
25916
|
+
case 8:
|
|
24276
25917
|
_state.sent();
|
|
24277
|
-
_state.label =
|
|
24278
|
-
case
|
|
25918
|
+
_state.label = 9;
|
|
25919
|
+
case 9:
|
|
24279
25920
|
totalTime = performance.now() - startTime;
|
|
24280
25921
|
logger.info("Load asset: totalTime: " + totalTime.toFixed(4) + "ms " + timeInfoMessages.join(" ") + ", url: " + assetUrl + ".");
|
|
24281
25922
|
window.clearTimeout(loadTimer);
|
|
@@ -24303,7 +25944,6 @@ var seed$1 = 1;
|
|
|
24303
25944
|
};
|
|
24304
25945
|
_proto.precompile = function precompile(compositions, pluginSystem, renderer, options) {
|
|
24305
25946
|
return _async_to_generator(function() {
|
|
24306
|
-
var shaderLibrary;
|
|
24307
25947
|
return __generator(this, function(_state) {
|
|
24308
25948
|
switch(_state.label){
|
|
24309
25949
|
case 0:
|
|
@@ -24312,22 +25952,11 @@ var seed$1 = 1;
|
|
|
24312
25952
|
2
|
|
24313
25953
|
];
|
|
24314
25954
|
}
|
|
24315
|
-
shaderLibrary = renderer == null ? void 0 : renderer.getShaderLibrary();
|
|
24316
25955
|
return [
|
|
24317
25956
|
4,
|
|
24318
25957
|
pluginSystem == null ? void 0 : pluginSystem.precompile(compositions, renderer, options)
|
|
24319
25958
|
];
|
|
24320
25959
|
case 1:
|
|
24321
|
-
_state.sent();
|
|
24322
|
-
return [
|
|
24323
|
-
4,
|
|
24324
|
-
new Promise(function(resolve) {
|
|
24325
|
-
shaderLibrary == null ? void 0 : shaderLibrary.compileAllShaders(function() {
|
|
24326
|
-
resolve(null);
|
|
24327
|
-
});
|
|
24328
|
-
})
|
|
24329
|
-
];
|
|
24330
|
-
case 2:
|
|
24331
25960
|
_state.sent();
|
|
24332
25961
|
return [
|
|
24333
25962
|
2
|
|
@@ -24339,12 +25968,12 @@ var seed$1 = 1;
|
|
|
24339
25968
|
_proto.processJSON = function processJSON(json) {
|
|
24340
25969
|
var _this = this;
|
|
24341
25970
|
return _async_to_generator(function() {
|
|
24342
|
-
var jsonScene, _jsonScene_plugins, plugins,
|
|
25971
|
+
var jsonScene, _jsonScene_plugins, plugins, pluginSystem;
|
|
24343
25972
|
return __generator(this, function(_state) {
|
|
24344
25973
|
switch(_state.label){
|
|
24345
25974
|
case 0:
|
|
24346
25975
|
jsonScene = getStandardJSON(json);
|
|
24347
|
-
_jsonScene_plugins = jsonScene.plugins, plugins = _jsonScene_plugins === void 0 ? [] : _jsonScene_plugins
|
|
25976
|
+
_jsonScene_plugins = jsonScene.plugins, plugins = _jsonScene_plugins === void 0 ? [] : _jsonScene_plugins;
|
|
24348
25977
|
pluginSystem = new PluginSystem(plugins);
|
|
24349
25978
|
return [
|
|
24350
25979
|
4,
|
|
@@ -24352,20 +25981,9 @@ var seed$1 = 1;
|
|
|
24352
25981
|
];
|
|
24353
25982
|
case 1:
|
|
24354
25983
|
_state.sent();
|
|
24355
|
-
renderLevel = _this.options.renderLevel;
|
|
24356
|
-
usedImages = {};
|
|
24357
|
-
if (imgUsage) {
|
|
24358
|
-
// TODO: 考虑放到独立的 fix 文件
|
|
24359
|
-
fixOldImageUsage(usedImages, sceneCompositions, imgUsage, images, renderLevel);
|
|
24360
|
-
} else {
|
|
24361
|
-
images == null ? void 0 : images.forEach(function(_, i) {
|
|
24362
|
-
usedImages[i] = true;
|
|
24363
|
-
});
|
|
24364
|
-
}
|
|
24365
25984
|
return [
|
|
24366
25985
|
2,
|
|
24367
25986
|
{
|
|
24368
|
-
usedImages: usedImages,
|
|
24369
25987
|
jsonScene: jsonScene,
|
|
24370
25988
|
pluginSystem: pluginSystem
|
|
24371
25989
|
}
|
|
@@ -24437,7 +26055,6 @@ var seed$1 = 1;
|
|
|
24437
26055
|
];
|
|
24438
26056
|
case 2:
|
|
24439
26057
|
_state.sent();
|
|
24440
|
-
//@ts-expect-error
|
|
24441
26058
|
document.fonts.add(fontFace);
|
|
24442
26059
|
AssetManager.fonts.add(font.fontFamily);
|
|
24443
26060
|
return [
|
|
@@ -24519,6 +26136,10 @@ var seed$1 = 1;
|
|
|
24519
26136
|
3,
|
|
24520
26137
|
3
|
|
24521
26138
|
];
|
|
26139
|
+
_this.assets[idx] = {
|
|
26140
|
+
url: resultImage.src,
|
|
26141
|
+
type: exports.TextureSourceType.video
|
|
26142
|
+
};
|
|
24522
26143
|
return [
|
|
24523
26144
|
2,
|
|
24524
26145
|
resultImage
|
|
@@ -24528,6 +26149,10 @@ var seed$1 = 1;
|
|
|
24528
26149
|
if (background && Array.isArray(url) && variables) {
|
|
24529
26150
|
variables[background.name] = resultImage.src;
|
|
24530
26151
|
}
|
|
26152
|
+
_this.assets[idx] = {
|
|
26153
|
+
url: resultImage.src,
|
|
26154
|
+
type: exports.TextureSourceType.image
|
|
26155
|
+
};
|
|
24531
26156
|
return [
|
|
24532
26157
|
4,
|
|
24533
26158
|
combineImageTemplate(resultImage, template, variables)
|
|
@@ -24570,12 +26195,6 @@ var seed$1 = 1;
|
|
|
24570
26195
|
_this.loadBins(bufferURL)
|
|
24571
26196
|
];
|
|
24572
26197
|
}
|
|
24573
|
-
} else if ("sourceType" in img) {
|
|
24574
|
-
// TODO: 确定是否有用
|
|
24575
|
-
return [
|
|
24576
|
-
2,
|
|
24577
|
-
img
|
|
24578
|
-
];
|
|
24579
26198
|
} else if (_instanceof1(img, HTMLImageElement) || _instanceof1(img, HTMLCanvasElement) || _instanceof1(img, HTMLVideoElement) || _instanceof1(img, Texture)) {
|
|
24580
26199
|
return [
|
|
24581
26200
|
2,
|
|
@@ -24626,7 +26245,7 @@ var seed$1 = 1;
|
|
|
24626
26245
|
});
|
|
24627
26246
|
})();
|
|
24628
26247
|
};
|
|
24629
|
-
_proto.processTextures = function processTextures(images, bins, jsonScene
|
|
26248
|
+
_proto.processTextures = function processTextures(images, bins, jsonScene) {
|
|
24630
26249
|
var _this = this;
|
|
24631
26250
|
return _async_to_generator(function() {
|
|
24632
26251
|
var _jsonScene_textures, textures, jobs;
|
|
@@ -24637,7 +26256,7 @@ var seed$1 = 1;
|
|
|
24637
26256
|
};
|
|
24638
26257
|
});
|
|
24639
26258
|
jobs = textures.map(/*#__PURE__*/ _async_to_generator(function(textureOptions, idx) {
|
|
24640
|
-
var e, source, image, texture;
|
|
26259
|
+
var e, source, id, image, texture;
|
|
24641
26260
|
return __generator(this, function(_state) {
|
|
24642
26261
|
switch(_state.label){
|
|
24643
26262
|
case 0:
|
|
@@ -24661,7 +26280,7 @@ var seed$1 = 1;
|
|
|
24661
26280
|
]);
|
|
24662
26281
|
return [
|
|
24663
26282
|
4,
|
|
24664
|
-
deserializeMipmapTexture(textureOptions, bins,
|
|
26283
|
+
deserializeMipmapTexture(textureOptions, bins, _this.assets, jsonScene.bins)
|
|
24665
26284
|
];
|
|
24666
26285
|
case 2:
|
|
24667
26286
|
return [
|
|
@@ -24672,12 +26291,12 @@ var seed$1 = 1;
|
|
|
24672
26291
|
e = _state.sent();
|
|
24673
26292
|
throw new Error("Load texture " + idx + " fails, error message: " + e + ".");
|
|
24674
26293
|
case 4:
|
|
24675
|
-
source = textureOptions.source;
|
|
26294
|
+
source = textureOptions.source, id = textureOptions.id;
|
|
24676
26295
|
if (!isObject(source)) return [
|
|
24677
26296
|
3,
|
|
24678
26297
|
5
|
|
24679
26298
|
];
|
|
24680
|
-
image =
|
|
26299
|
+
image = _this.assets[source.id];
|
|
24681
26300
|
return [
|
|
24682
26301
|
3,
|
|
24683
26302
|
7
|
|
@@ -24696,9 +26315,7 @@ var seed$1 = 1;
|
|
|
24696
26315
|
_state.label = 7;
|
|
24697
26316
|
case 7:
|
|
24698
26317
|
if (image) {
|
|
24699
|
-
texture = createTextureOptionsBySource(image, _this.assets[idx]);
|
|
24700
|
-
texture.id = textureOptions.id;
|
|
24701
|
-
texture.dataType = DataType.Texture;
|
|
26318
|
+
texture = createTextureOptionsBySource(image, _this.assets[idx], id);
|
|
24702
26319
|
return [
|
|
24703
26320
|
2,
|
|
24704
26321
|
texture.sourceType === exports.TextureSourceType.compressed ? texture : _extends({}, texture, textureOptions)
|
|
@@ -24759,11 +26376,6 @@ var seed$1 = 1;
|
|
|
24759
26376
|
return window.clearTimeout(id);
|
|
24760
26377
|
});
|
|
24761
26378
|
}
|
|
24762
|
-
for(var key in this.assets){
|
|
24763
|
-
var _asset_dispose;
|
|
24764
|
-
var asset = this.assets[key];
|
|
24765
|
-
asset == null ? void 0 : (_asset_dispose = asset.dispose) == null ? void 0 : _asset_dispose.call(asset);
|
|
24766
|
-
}
|
|
24767
26379
|
this.assets = {};
|
|
24768
26380
|
this.timers = [];
|
|
24769
26381
|
};
|
|
@@ -24772,55 +26384,44 @@ var seed$1 = 1;
|
|
|
24772
26384
|
/**
|
|
24773
26385
|
* 自定义文本缓存,随页面销毁而销毁
|
|
24774
26386
|
*/ AssetManager.fonts = new Set();
|
|
24775
|
-
function
|
|
24776
|
-
|
|
24777
|
-
|
|
24778
|
-
|
|
24779
|
-
|
|
24780
|
-
for(var j = 0; j < ids.length; j++){
|
|
24781
|
-
var id1 = ids[j];
|
|
24782
|
-
var tag = images[id1].renderLevel;
|
|
24783
|
-
if (passRenderLevel(tag, renderLevel)) {
|
|
24784
|
-
usedImages[id1] = true;
|
|
24785
|
-
}
|
|
24786
|
-
}
|
|
24787
|
-
}
|
|
24788
|
-
}
|
|
24789
|
-
}
|
|
24790
|
-
function createTextureOptionsBySource(image, sourceFrom) {
|
|
26387
|
+
function createTextureOptionsBySource(image, sourceFrom, id) {
|
|
26388
|
+
var options = {
|
|
26389
|
+
id: id,
|
|
26390
|
+
dataType: DataType.Texture
|
|
26391
|
+
};
|
|
24791
26392
|
if (_instanceof1(image, Texture)) {
|
|
24792
|
-
return image.source;
|
|
26393
|
+
return _extends({}, image.source, options);
|
|
24793
26394
|
} else if (_instanceof1(image, HTMLImageElement) || isCanvas(image)) {
|
|
24794
|
-
return {
|
|
26395
|
+
return _extends({
|
|
24795
26396
|
image: image,
|
|
24796
26397
|
sourceType: exports.TextureSourceType.image,
|
|
24797
26398
|
sourceFrom: sourceFrom,
|
|
24798
26399
|
keepImageSource: true,
|
|
24799
26400
|
minFilter: glContext.LINEAR,
|
|
24800
26401
|
magFilter: glContext.LINEAR
|
|
24801
|
-
};
|
|
26402
|
+
}, options);
|
|
24802
26403
|
} else if (_instanceof1(image, HTMLVideoElement)) {
|
|
24803
26404
|
// 视频
|
|
24804
|
-
return {
|
|
26405
|
+
return _extends({
|
|
24805
26406
|
sourceType: exports.TextureSourceType.video,
|
|
24806
26407
|
video: image,
|
|
24807
26408
|
minFilter: glContext.LINEAR,
|
|
24808
26409
|
magFilter: glContext.LINEAR
|
|
24809
|
-
};
|
|
26410
|
+
}, options);
|
|
24810
26411
|
} else if (_instanceof1(image, ArrayBuffer)) {
|
|
24811
26412
|
// 压缩纹理
|
|
24812
26413
|
return _extends({}, getKTXTextureOptions(image), {
|
|
24813
26414
|
sourceFrom: sourceFrom
|
|
24814
|
-
});
|
|
26415
|
+
}, options);
|
|
24815
26416
|
} else if ("width" in image && "height" in image && "data" in image) {
|
|
24816
|
-
return {
|
|
26417
|
+
return _extends({
|
|
24817
26418
|
sourceType: exports.TextureSourceType.data,
|
|
24818
26419
|
data: image,
|
|
24819
26420
|
wrapS: glContext.CLAMP_TO_EDGE,
|
|
24820
26421
|
wrapT: glContext.CLAMP_TO_EDGE,
|
|
24821
26422
|
minFilter: glContext.NEAREST,
|
|
24822
26423
|
magFilter: glContext.NEAREST
|
|
24823
|
-
};
|
|
26424
|
+
}, options);
|
|
24824
26425
|
}
|
|
24825
26426
|
throw new Error("Invalid texture options.");
|
|
24826
26427
|
}
|
|
@@ -25124,11 +26725,12 @@ var listOrder = 0;
|
|
|
25124
26725
|
function CompositionSourceManager(scene, engine) {
|
|
25125
26726
|
this.refCompositions = new Map();
|
|
25126
26727
|
this.refCompositionProps = new Map();
|
|
26728
|
+
this.imgUsage = {};
|
|
25127
26729
|
this.mask = 0;
|
|
25128
26730
|
this.engine = engine;
|
|
25129
26731
|
// 资源
|
|
25130
26732
|
var jsonScene = scene.jsonScene, renderLevel = scene.renderLevel, textureOptions = scene.textureOptions, pluginSystem = scene.pluginSystem, totalTime = scene.totalTime;
|
|
25131
|
-
var compositions = jsonScene.compositions,
|
|
26733
|
+
var compositions = jsonScene.compositions, compositionId = jsonScene.compositionId;
|
|
25132
26734
|
if (!textureOptions) {
|
|
25133
26735
|
throw new Error("scene.textures expected.");
|
|
25134
26736
|
}
|
|
@@ -25148,7 +26750,6 @@ var listOrder = 0;
|
|
|
25148
26750
|
this.renderLevel = renderLevel;
|
|
25149
26751
|
this.pluginSystem = pluginSystem;
|
|
25150
26752
|
this.totalTime = totalTime != null ? totalTime : 0;
|
|
25151
|
-
this.imgUsage = imgUsage != null ? imgUsage : {};
|
|
25152
26753
|
this.textures = cachedTextures;
|
|
25153
26754
|
listOrder = 0;
|
|
25154
26755
|
this.sourceContent = this.getContent(this.composition);
|
|
@@ -25169,11 +26770,12 @@ var listOrder = 0;
|
|
|
25169
26770
|
});
|
|
25170
26771
|
};
|
|
25171
26772
|
_proto.assembleItems = function assembleItems(composition) {
|
|
26773
|
+
var _this_jsonScene;
|
|
25172
26774
|
var items = [];
|
|
25173
|
-
this.mask++;
|
|
25174
26775
|
var componentMap = {};
|
|
25175
|
-
|
|
25176
|
-
|
|
26776
|
+
this.mask++;
|
|
26777
|
+
var _this_jsonScene_components;
|
|
26778
|
+
for(var _iterator = _create_for_of_iterator_helper_loose((_this_jsonScene_components = (_this_jsonScene = this.jsonScene) == null ? void 0 : _this_jsonScene.components) != null ? _this_jsonScene_components : []), _step; !(_step = _iterator()).done;){
|
|
25177
26779
|
var component = _step.value;
|
|
25178
26780
|
componentMap[component.id] = component;
|
|
25179
26781
|
}
|
|
@@ -25210,19 +26812,24 @@ var listOrder = 0;
|
|
|
25210
26812
|
_proto.preProcessItemContent = function preProcessItemContent(renderContent) {
|
|
25211
26813
|
if (renderContent.renderer) {
|
|
25212
26814
|
renderContent.renderer = this.changeTex(renderContent.renderer);
|
|
25213
|
-
if (!renderContent.renderer
|
|
26815
|
+
if (!("mask" in renderContent.renderer)) {
|
|
25214
26816
|
this.processMask(renderContent.renderer);
|
|
25215
26817
|
}
|
|
25216
|
-
var split = renderContent.splits && !renderContent.textureSheetAnimation
|
|
25217
|
-
|
|
26818
|
+
var split = renderContent.splits && !renderContent.textureSheetAnimation ? renderContent.splits[0] : undefined;
|
|
26819
|
+
var shape = renderContent.renderer.shape;
|
|
26820
|
+
var shapeData;
|
|
26821
|
+
if (Number.isInteger(shape)) {
|
|
25218
26822
|
var _this_jsonScene;
|
|
25219
|
-
|
|
25220
|
-
|
|
25221
|
-
|
|
25222
|
-
|
|
26823
|
+
shapeData = (_this_jsonScene = this.jsonScene) == null ? void 0 : _this_jsonScene.shapes[shape];
|
|
26824
|
+
} else {
|
|
26825
|
+
shapeData = shape;
|
|
26826
|
+
}
|
|
26827
|
+
if (shapeData !== undefined) {
|
|
26828
|
+
// @ts-expect-error 类型转换问题
|
|
26829
|
+
renderContent.renderer.shape = getGeometryByShape(shapeData, split);
|
|
25223
26830
|
}
|
|
25224
26831
|
}
|
|
25225
|
-
if (renderContent.trails) {
|
|
26832
|
+
if ("trails" in renderContent && renderContent.trails !== undefined) {
|
|
25226
26833
|
renderContent.trails = this.changeTex(renderContent.trails);
|
|
25227
26834
|
}
|
|
25228
26835
|
};
|
|
@@ -25230,22 +26837,17 @@ var listOrder = 0;
|
|
|
25230
26837
|
if (!renderer.texture) {
|
|
25231
26838
|
return renderer;
|
|
25232
26839
|
}
|
|
25233
|
-
//@ts-expect-error
|
|
25234
26840
|
var texIdx = renderer.texture.id;
|
|
25235
26841
|
if (texIdx !== undefined) {
|
|
25236
|
-
|
|
25237
|
-
this.addTextureUsage(texIdx) || texIdx;
|
|
26842
|
+
this.addTextureUsage(texIdx);
|
|
25238
26843
|
}
|
|
25239
26844
|
return renderer;
|
|
25240
26845
|
};
|
|
25241
|
-
_proto.addTextureUsage = function addTextureUsage(
|
|
25242
|
-
var texId = texIdx;
|
|
26846
|
+
_proto.addTextureUsage = function addTextureUsage(texId) {
|
|
25243
26847
|
var _this_imgUsage;
|
|
25244
|
-
// FIXME: imageUsage 取自 scene.imgUsage,类型为 Record<string, number[]>,这里给的 number,类型对不上
|
|
25245
26848
|
var imageUsage = (_this_imgUsage = this.imgUsage) != null ? _this_imgUsage : {};
|
|
25246
26849
|
if (texId && imageUsage) {
|
|
25247
|
-
|
|
25248
|
-
if (!imageUsage.hasOwnProperty(texId)) {
|
|
26850
|
+
if (!Object.prototype.hasOwnProperty.call(imageUsage, texId)) {
|
|
25249
26851
|
imageUsage[texId] = 0;
|
|
25250
26852
|
}
|
|
25251
26853
|
imageUsage[texId]++;
|
|
@@ -25416,7 +27018,6 @@ var LateUpdateTickData = /*#__PURE__*/ function(TickData) {
|
|
|
25416
27018
|
_this.lastVideoUpdateTime = 0;
|
|
25417
27019
|
var _props_reusable = props.reusable, reusable = _props_reusable === void 0 ? false : _props_reusable, _props_speed = props.speed, speed = _props_speed === void 0 ? 1 : _props_speed, _props_baseRenderOrder = props.baseRenderOrder, baseRenderOrder = _props_baseRenderOrder === void 0 ? 0 : _props_baseRenderOrder, renderer = props.renderer, event = props.event, width = props.width, height = props.height, handleItemMessage = props.handleItemMessage;
|
|
25418
27020
|
_this.compositionSourceManager = new CompositionSourceManager(scene, renderer.engine);
|
|
25419
|
-
scene.jsonScene.imgUsage = undefined;
|
|
25420
27021
|
if (reusable) {
|
|
25421
27022
|
_this.keepResource = true;
|
|
25422
27023
|
scene.textures = undefined;
|
|
@@ -25435,24 +27036,23 @@ var LateUpdateTickData = /*#__PURE__*/ function(TickData) {
|
|
|
25435
27036
|
_this.rootComposition.data = sourceContent;
|
|
25436
27037
|
_this.rootComposition.item = _this.rootItem;
|
|
25437
27038
|
_this.rootItem.components.push(_this.rootComposition);
|
|
25438
|
-
var imageUsage = !reusable && imgUsage;
|
|
25439
27039
|
_this.width = width;
|
|
25440
27040
|
_this.height = height;
|
|
25441
27041
|
_this.renderOrder = baseRenderOrder;
|
|
25442
27042
|
_this.id = sourceContent.id;
|
|
25443
27043
|
_this.renderer = renderer;
|
|
25444
|
-
_this.texInfo =
|
|
27044
|
+
_this.texInfo = !reusable ? imgUsage : {};
|
|
25445
27045
|
_this.event = event;
|
|
25446
|
-
var _scene_startTime
|
|
27046
|
+
var _scene_startTime;
|
|
25447
27047
|
_this.statistic = {
|
|
25448
|
-
loadTime: totalTime != null ? totalTime : 0,
|
|
25449
27048
|
loadStart: (_scene_startTime = scene.startTime) != null ? _scene_startTime : 0,
|
|
25450
|
-
|
|
25451
|
-
|
|
27049
|
+
loadTime: totalTime != null ? totalTime : 0,
|
|
27050
|
+
compileTime: 0,
|
|
27051
|
+
firstFrameTime: 0
|
|
25452
27052
|
};
|
|
25453
27053
|
_this.reusable = reusable;
|
|
25454
27054
|
_this.speed = speed;
|
|
25455
|
-
_this.autoRefTex = !_this.keepResource &&
|
|
27055
|
+
_this.autoRefTex = !_this.keepResource && _this.texInfo && _this.rootItem.endBehavior !== EndBehavior.restart;
|
|
25456
27056
|
_this.name = sourceContent.name;
|
|
25457
27057
|
_this.pluginSystem = pluginSystem;
|
|
25458
27058
|
_this.pluginSystem.initializeComposition(_assert_this_initialized(_this), scene);
|
|
@@ -25624,6 +27224,7 @@ var LateUpdateTickData = /*#__PURE__*/ function(TickData) {
|
|
|
25624
27224
|
*/ _proto.reset = function reset() {
|
|
25625
27225
|
this.rendererOptions = null;
|
|
25626
27226
|
this.rootItem.ended = false;
|
|
27227
|
+
this.rootComposition.time = 0;
|
|
25627
27228
|
this.pluginSystem.resetComposition(this, this.renderFrame);
|
|
25628
27229
|
};
|
|
25629
27230
|
_proto.prepareRender = function prepareRender() {
|
|
@@ -28148,7 +29749,7 @@ __decorate([
|
|
|
28148
29749
|
serialize()
|
|
28149
29750
|
], exports.BinaryAsset.prototype, "buffer", void 0);
|
|
28150
29751
|
exports.BinaryAsset = __decorate([
|
|
28151
|
-
effectsClass(
|
|
29752
|
+
effectsClass(DataType.BinaryAsset)
|
|
28152
29753
|
], exports.BinaryAsset);
|
|
28153
29754
|
|
|
28154
29755
|
registerPlugin("camera", CameraVFXItemLoader, exports.VFXItem, true);
|
|
@@ -28157,7 +29758,7 @@ registerPlugin("sprite", SpriteLoader, exports.VFXItem, true);
|
|
|
28157
29758
|
registerPlugin("particle", ParticleLoader, exports.VFXItem, true);
|
|
28158
29759
|
registerPlugin("cal", CalculateLoader, exports.VFXItem, true);
|
|
28159
29760
|
registerPlugin("interact", InteractLoader, exports.VFXItem, true);
|
|
28160
|
-
var version$1 = "2.1.0-alpha.
|
|
29761
|
+
var version$1 = "2.1.0-alpha.6";
|
|
28161
29762
|
logger.info("Core version: " + version$1 + ".");
|
|
28162
29763
|
|
|
28163
29764
|
var _obj;
|
|
@@ -29556,13 +31157,14 @@ var ThreeRenderer = /*#__PURE__*/ function(Renderer) {
|
|
|
29556
31157
|
opts = _extends({
|
|
29557
31158
|
autoplay: true
|
|
29558
31159
|
}, options);
|
|
29559
|
-
|
|
29560
|
-
|
|
29561
|
-
if (
|
|
31160
|
+
source = url;
|
|
31161
|
+
if (exports.Scene.isURL(url)) {
|
|
31162
|
+
if (!exports.Scene.isJSONObject(url)) {
|
|
31163
|
+
source = url.url;
|
|
31164
|
+
}
|
|
31165
|
+
if (exports.Scene.isWithOptions(url)) {
|
|
29562
31166
|
opts = _extends({}, opts, url.options || {});
|
|
29563
31167
|
}
|
|
29564
|
-
} else {
|
|
29565
|
-
source = url;
|
|
29566
31168
|
}
|
|
29567
31169
|
if (_this.assetManager) {
|
|
29568
31170
|
_this.assetManager.updateOptions(opts);
|
|
@@ -29838,7 +31440,7 @@ setMaxSpriteMeshItemCount(8);
|
|
|
29838
31440
|
*/ Mesh.create = function(engine, props) {
|
|
29839
31441
|
return new ThreeMesh(engine, props);
|
|
29840
31442
|
};
|
|
29841
|
-
var version = "2.1.0-alpha.
|
|
31443
|
+
var version = "2.1.0-alpha.6";
|
|
29842
31444
|
logger.info("THREEJS plugin version: " + version + ".");
|
|
29843
31445
|
|
|
29844
31446
|
exports.AbstractPlugin = AbstractPlugin;
|
|
@@ -30027,9 +31629,6 @@ exports.isIOS = isIOS;
|
|
|
30027
31629
|
exports.isIOSByUA = isIOSByUA;
|
|
30028
31630
|
exports.isMiniProgram = isMiniProgram;
|
|
30029
31631
|
exports.isObject = isObject;
|
|
30030
|
-
exports.isSceneJSON = isSceneJSON;
|
|
30031
|
-
exports.isSceneURL = isSceneURL;
|
|
30032
|
-
exports.isSceneWithOptions = isSceneWithOptions;
|
|
30033
31632
|
exports.isSimulatorCellPhone = isSimulatorCellPhone;
|
|
30034
31633
|
exports.isString = isString;
|
|
30035
31634
|
exports.isUniformStruct = isUniformStruct;
|