first commit
This commit is contained in:
87
node_modules/lottie-web/player/js/elements/helpers/RenderableElement.js
generated
vendored
Normal file
87
node_modules/lottie-web/player/js/elements/helpers/RenderableElement.js
generated
vendored
Normal file
@@ -0,0 +1,87 @@
|
||||
function RenderableElement() {
|
||||
|
||||
}
|
||||
|
||||
RenderableElement.prototype = {
|
||||
initRenderable: function () {
|
||||
// layer's visibility related to inpoint and outpoint. Rename isVisible to isInRange
|
||||
this.isInRange = false;
|
||||
// layer's display state
|
||||
this.hidden = false;
|
||||
// If layer's transparency equals 0, it can be hidden
|
||||
this.isTransparent = false;
|
||||
// list of animated components
|
||||
this.renderableComponents = [];
|
||||
},
|
||||
addRenderableComponent: function (component) {
|
||||
if (this.renderableComponents.indexOf(component) === -1) {
|
||||
this.renderableComponents.push(component);
|
||||
}
|
||||
},
|
||||
removeRenderableComponent: function (component) {
|
||||
if (this.renderableComponents.indexOf(component) !== -1) {
|
||||
this.renderableComponents.splice(this.renderableComponents.indexOf(component), 1);
|
||||
}
|
||||
},
|
||||
prepareRenderableFrame: function (num) {
|
||||
this.checkLayerLimits(num);
|
||||
},
|
||||
checkTransparency: function () {
|
||||
if (this.finalTransform.mProp.o.v <= 0) {
|
||||
if (!this.isTransparent && this.globalData.renderConfig.hideOnTransparent) {
|
||||
this.isTransparent = true;
|
||||
this.hide();
|
||||
}
|
||||
} else if (this.isTransparent) {
|
||||
this.isTransparent = false;
|
||||
this.show();
|
||||
}
|
||||
},
|
||||
/**
|
||||
* @function
|
||||
* Initializes frame related properties.
|
||||
*
|
||||
* @param {number} num
|
||||
* current frame number in Layer's time
|
||||
*
|
||||
*/
|
||||
checkLayerLimits: function (num) {
|
||||
if (this.data.ip - this.data.st <= num && this.data.op - this.data.st > num) {
|
||||
if (this.isInRange !== true) {
|
||||
this.globalData._mdf = true;
|
||||
this._mdf = true;
|
||||
this.isInRange = true;
|
||||
this.show();
|
||||
}
|
||||
} else if (this.isInRange !== false) {
|
||||
this.globalData._mdf = true;
|
||||
this.isInRange = false;
|
||||
this.hide();
|
||||
}
|
||||
},
|
||||
renderRenderable: function () {
|
||||
var i;
|
||||
var len = this.renderableComponents.length;
|
||||
for (i = 0; i < len; i += 1) {
|
||||
this.renderableComponents[i].renderFrame(this._isFirstFrame);
|
||||
}
|
||||
/* this.maskManager.renderFrame(this.finalTransform.mat);
|
||||
this.renderableEffectsManager.renderFrame(this._isFirstFrame); */
|
||||
},
|
||||
sourceRectAtTime: function () {
|
||||
return {
|
||||
top: 0,
|
||||
left: 0,
|
||||
width: 100,
|
||||
height: 100,
|
||||
};
|
||||
},
|
||||
getLayerSize: function () {
|
||||
if (this.data.ty === 5) {
|
||||
return { w: this.data.textData.width, h: this.data.textData.height };
|
||||
}
|
||||
return { w: this.data.width, h: this.data.height };
|
||||
},
|
||||
};
|
||||
|
||||
export default RenderableElement;
|
Reference in New Issue
Block a user