(ecModel: GlobalModel)
| 34 | export const graphEdgeVisualStageHandler = createSimpleOverallStageHandler(SERIES_TYPE_GRAPH, graphEdgeVisual); |
| 35 | |
| 36 | function graphEdgeVisual(ecModel: GlobalModel) { |
| 37 | ecModel.eachSeriesByType(SERIES_TYPE_GRAPH, function (seriesModel: GraphSeriesModel) { |
| 38 | const graph = seriesModel.getGraph(); |
| 39 | const edgeData = seriesModel.getEdgeData(); |
| 40 | const symbolType = normalize(seriesModel.get('edgeSymbol')); |
| 41 | const symbolSize = normalize(seriesModel.get('edgeSymbolSize')); |
| 42 | |
| 43 | // const colorQuery = ['lineStyle', 'color'] as const; |
| 44 | // const opacityQuery = ['lineStyle', 'opacity'] as const; |
| 45 | |
| 46 | edgeData.setVisual('fromSymbol', symbolType && symbolType[0]); |
| 47 | edgeData.setVisual('toSymbol', symbolType && symbolType[1]); |
| 48 | edgeData.setVisual('fromSymbolSize', symbolSize && symbolSize[0]); |
| 49 | edgeData.setVisual('toSymbolSize', symbolSize && symbolSize[1]); |
| 50 | |
| 51 | edgeData.setVisual('style', seriesModel.getModel('lineStyle').getLineStyle()); |
| 52 | |
| 53 | edgeData.each(function (idx) { |
| 54 | const itemModel = edgeData.getItemModel<GraphEdgeItemOption>(idx); |
| 55 | const edge = graph.getEdgeByIndex(idx); |
| 56 | const symbolType = normalize(itemModel.getShallow('symbol', true)); |
| 57 | const symbolSize = normalize(itemModel.getShallow('symbolSize', true)); |
| 58 | // Edge visual must after node visual |
| 59 | const style = itemModel.getModel('lineStyle').getLineStyle(); |
| 60 | |
| 61 | const existsStyle = edgeData.ensureUniqueItemVisual(idx, 'style'); |
| 62 | extend(existsStyle, style); |
| 63 | |
| 64 | switch (existsStyle.stroke) { |
| 65 | case 'source': { |
| 66 | const nodeStyle = edge.node1.getVisual('style'); |
| 67 | existsStyle.stroke = nodeStyle && nodeStyle.fill; |
| 68 | break; |
| 69 | } |
| 70 | case 'target': { |
| 71 | const nodeStyle = edge.node2.getVisual('style'); |
| 72 | existsStyle.stroke = nodeStyle && nodeStyle.fill; |
| 73 | break; |
| 74 | } |
| 75 | } |
| 76 | |
| 77 | symbolType[0] && edge.setVisual('fromSymbol', symbolType[0]); |
| 78 | symbolType[1] && edge.setVisual('toSymbol', symbolType[1]); |
| 79 | symbolSize[0] && edge.setVisual('fromSymbolSize', symbolSize[0]); |
| 80 | symbolSize[1] && edge.setVisual('toSymbolSize', symbolSize[1]); |
| 81 | }); |
| 82 | }); |
| 83 | } |
nothing calls this directly
no test coverage detected
searching dependent graphs…