cione-comp-lib
Version:
`$ yarn add cione-comp-lib` 或者 `$ npm i cione-comp-lib -S`
2 lines (1 loc) • 1.22 kB
JavaScript
;Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var e=require("../core/Base.js"),t=require("./CompositorNode.js"),n=e.default.extend((function(){return{nodes:[]}}),{dirty:function(){this._dirty=!0},addNode:function(e){this.nodes.indexOf(e)>=0||(this.nodes.push(e),this._dirty=!0)},removeNode:function(e){"string"==typeof e&&(e=this.getNodeByName(e));var t=this.nodes.indexOf(e);t>=0&&(this.nodes.splice(t,1),this._dirty=!0)},getNodeByName:function(e){for(var t=0;t<this.nodes.length;t++)if(this.nodes[t].name===e)return this.nodes[t]},update:function(){for(var e=0;e<this.nodes.length;e++)this.nodes[e].clear();for(e=0;e<this.nodes.length;e++){var t=this.nodes[e];if(t.inputs)for(var n in t.inputs)if(t.inputs[n]&&(!t.pass||t.pass.material.isUniformEnabled(n))){var i=t.inputs[n],s=this.findPin(i);s&&t.link(n,s.node,s.pin)}}},findPin:function(e){var n;if(("string"==typeof e||e instanceof t.default)&&(e={node:e}),"string"==typeof e.node)for(var i=0;i<this.nodes.length;i++){var s=this.nodes[i];s.name===e.node&&(n=s)}else n=e.node;if(n){var o=e.pin;if(o||n.outputs&&(o=Object.keys(n.outputs)[0]),n.outputs[o])return{node:n,pin:o}}}});exports.default=n;