()
| 775 | } |
| 776 | |
| 777 | _createLegendInfo() { |
| 778 | const { catalogs = [] } = this._mapResourceInfo; |
| 779 | const originLayers = getLayerInfosFromCatalogs(catalogs, 'catalogType'); |
| 780 | for (const layer of originLayers) { |
| 781 | const { renderer, label } = layer.visualization || {}; |
| 782 | if (!renderer) { |
| 783 | continue; |
| 784 | } |
| 785 | const layerFromMapInfo = getMainLayerFromCatalog(layer.layersContent, layer.id, this._mapInfo.layers); |
| 786 | let themeField; |
| 787 | const sourceInfo = this._mapInfo.sources[layerFromMapInfo.source]; |
| 788 | if ('clusterField' in sourceInfo) { |
| 789 | themeField = sourceInfo.clusterField; |
| 790 | } |
| 791 | const nextLayer = Object.assign({}, layerFromMapInfo, { title: layer.title, themeField }); |
| 792 | const styleSettings = this._parseRendererStyleData(renderer); |
| 793 | // 线面文本标签 |
| 794 | if (label) { |
| 795 | styleSettings.push({...label, type: 'text'}); |
| 796 | if (label.symbolsContent && label.symbolsContent.value.symbolId) { |
| 797 | styleSettings.push({...label, type: 'symbol'}); |
| 798 | } |
| 799 | } |
| 800 | // 点文本标签 |
| 801 | if (styleSettings[0].textField && styleSettings[0].textField.value) { |
| 802 | styleSettings.push({ |
| 803 | ...styleSettings[0], |
| 804 | type: 'text' |
| 805 | }); |
| 806 | } |
| 807 | const layerLegends = styleSettings.reduce((legends, styleSetting) => { |
| 808 | const legendItems = this._createLayerLegendList(nextLayer, styleSetting); |
| 809 | legendItems && legends.push(...legendItems); |
| 810 | return legends; |
| 811 | }, []); |
| 812 | this._legendList.push(...layerLegends); |
| 813 | } |
| 814 | } |
| 815 | |
| 816 | _getAliasKey(renderType, key) { |
| 817 | if (renderType === 'isoline3D' && key === 'dashArray') { |
no test coverage detected