MCPcopy Index your code
hub / github.com/SuperMap/iClient-JavaScript / _toShaders

Method _toShaders

src/common/style/CartoCSS.js:999–1021  ·  view source on GitHub ↗
(shaders, keys,defs)

Source from the content-addressed store, hash-verified

997 }
998
999 _toShaders(shaders, keys,defs) {
1000 for (let i = 0, len0 = defs.length; i < len0; ++i) {
1001 let def = defs[i];
1002 let element_str = [];
1003 for (let j = 0, len1 = def.elements.length; j < len1; j++) {
1004 element_str.push(def.elements[j]);
1005 }
1006 let filters = def.filters.filters;
1007 let filterStr = [];
1008 for (let attr in filters) {
1009 filterStr.push(filters[attr].id);
1010 }
1011 let key = element_str.join("/") + "::" + def.attachment + "_" + filterStr.join("_");
1012 keys.push(key);
1013 let shader = shaders[key] = (shaders[key] || {});
1014 //shader.frames = [];
1015 shader.zoom = CartoCSS.Tree.Zoom.all;
1016 let props = def.toJS(this.env);
1017 for (let v in props) {
1018 (shader[v] = (shader[v] || [])).push(props[v].join('\n'))
1019 }
1020 }
1021 }
1022 /**
1023 * @function CartoCSS.prototype.getShaders
1024 * @description 获取 CartoCSS 着色器。

Callers 1

toShadersMethod · 0.95

Calls 2

pushMethod · 0.80
toJSMethod · 0.45

Tested by

no test coverage detected