| New file |
| | |
| | | define([ |
| | | "esri/symbols/SimpleFillSymbol", |
| | | "esri/Color", |
| | | "esri/renderers/SimpleRenderer", |
| | | "esri/symbols/SimpleMarkerSymbol", |
| | | "esri/symbols/SimpleLineSymbol", |
| | | "esri/symbols/PictureMarkerSymbol" |
| | | ], |
| | | function(SimpleFillSymbol, |
| | | Color, |
| | | SimpleRenderer, |
| | | SimpleMarkerSymbol, |
| | | SimpleLineSymbol, |
| | | PictureMarkerSymbol){ |
| | | var privateValue = 0; |
| | | return { |
| | | createRenderer:function(rendererConfig){ |
| | | var renderer = null; |
| | | if(rendererConfig != undefined && rendererConfig != null && rendererConfig != "default") |
| | | { |
| | | switch(rendererConfig.type) |
| | | { |
| | | case "SimpleRenderer": |
| | | var symbol = this.createSymbol(rendererConfig.symbol); |
| | | renderer = new SimpleRenderer(symbol); |
| | | break; |
| | | } |
| | | } |
| | | return renderer; |
| | | }, |
| | | createSymbol:function(symbolConfig) |
| | | { |
| | | var symbol = null; |
| | | switch(symbolConfig.type) |
| | | { |
| | | case "SimpleMarkerSymbol": |
| | | symbol = this.createSimpleMarkerSymbol(symbolConfig); |
| | | break; |
| | | case "PictureMarkerSymbol": |
| | | symbol = this.createPictureMarkerSymbol(symbolConfig); |
| | | break; |
| | | case "SimpleLineSymbol": |
| | | symbol = this.createLineSymbol(symbolConfig); |
| | | break; |
| | | case "SimpleFillSymbol": |
| | | symbol = this.creatFillSymbol(symbolConfig); |
| | | break; |
| | | } |
| | | return symbol; |
| | | }, |
| | | creatFillSymbol:function(symbolConfig) |
| | | { |
| | | var style; |
| | | var symbol=null; |
| | | var lineSymbol = this.createLineSymbol(symbolConfig.outline); |
| | | switch(symbolConfig.style) |
| | | { |
| | | case "solid": |
| | | style = SimpleFillSymbol.STYLE_SOLID; |
| | | break; |
| | | case "null": |
| | | style = SimpleFillSymbol.STYLE_NULL; |
| | | break; |
| | | case "cross": |
| | | style = SimpleFillSymbol.STYLE_CROSS; |
| | | break; |
| | | case "diagonal_cross": |
| | | style = SimpleFillSymbol.STYLE_DIAGONAL_CROSS; |
| | | break; |
| | | case "backward_diagonal": |
| | | style = SimpleFillSymbol.STYLE_BACKWARD_DIAGONAL; |
| | | break; |
| | | case "forward_diagonal": |
| | | style = SimpleFillSymbol.STYLE_FORWARD_DIAGONAL; |
| | | break; |
| | | case "horizontal": |
| | | style = SimpleFillSymbol.STYLE_HORIZONTAL; |
| | | break; |
| | | case "vertical": |
| | | style = SimpleFillSymbol.STYLE_VERTICAL; |
| | | break; |
| | | } |
| | | var color = new Color(symbolConfig.color); |
| | | color.a=symbolConfig.alpha; |
| | | symbol = new SimpleFillSymbol(style, lineSymbol,color); |
| | | return symbol; |
| | | }, |
| | | createSimpleMarkerSymbol:function(symbolConfig) |
| | | { |
| | | var style; |
| | | var symbol = null; |
| | | var lineSymbol = this.createLineSymbol(symbolConfig.outline); |
| | | switch(symbolConfig.style) |
| | | { |
| | | case "circle": |
| | | style = SimpleMarkerSymbol.STYLE_CIRCLE; |
| | | break; |
| | | case "cross": |
| | | style = SimpleMarkerSymbol.STYLE_CROSS; |
| | | break; |
| | | case "diamond": |
| | | style = SimpleMarkerSymbol.STYLE_DIAMOND; |
| | | break; |
| | | case "path": |
| | | style = SimpleMarkerSymbol.STYLE_PATH; |
| | | break; |
| | | case "square": |
| | | style = SimpleMarkerSymbol.STYLE_SQUARE; |
| | | break; |
| | | case "STYLE_X": |
| | | style = SimpleMarkerSymbol.STYLE_X; |
| | | break; |
| | | default: |
| | | style = SimpleMarkerSymbol.STYLE_CIRCLE; |
| | | break; |
| | | } |
| | | symbol = new SimpleMarkerSymbol(style,symbolConfig.size,lineSymbol,new Color(symbolConfig.color)); |
| | | return symbol; |
| | | }, |
| | | createLineSymbol:function(config) |
| | | { |
| | | var symbol=null; |
| | | if(config != undefined && config != null) |
| | | { |
| | | switch(config.type) |
| | | { |
| | | case "SimpleLineSymbol": |
| | | var style = this.parseLineStyle(config.style); |
| | | symbol = new SimpleLineSymbol(style, |
| | | new Color(config.color), |
| | | config.width); |
| | | break; |
| | | } |
| | | } |
| | | return symbol; |
| | | }, |
| | | parseLineStyle:function(style) |
| | | { |
| | | var returnStyle; |
| | | switch(style) |
| | | { |
| | | case "solid": |
| | | returnStyle = SimpleLineSymbol.STYLE_SOLID; |
| | | break; |
| | | case "dashdot": |
| | | returnStyle = SimpleLineSymbol.STYLE_DASHDOT; |
| | | break; |
| | | case "dashdotdot": |
| | | returnStyle = SimpleLineSymbol.STYLE_DASHDOT; |
| | | break; |
| | | case "dot": |
| | | returnStyle = SimpleLineSymbol.STYLE_DOT; |
| | | break; |
| | | case "longdash": |
| | | returnStyle = SimpleLineSymbol.STYLE_LONGDASH; |
| | | break; |
| | | case "longdashdot": |
| | | returnStyle = SimpleLineSymbol.STYLE_LONGDASHDOT; |
| | | break; |
| | | case "null": |
| | | returnStyle = SimpleLineSymbol.STYLE_NULL; |
| | | break; |
| | | case "shortdash": |
| | | returnStyle = SimpleLineSymbol.STYLE_SHORTDASH; |
| | | break; |
| | | case "shortdashdot": |
| | | returnStyle = SimpleLineSymbol.STYLE_SHORTDASHDOT; |
| | | break; |
| | | default: |
| | | returnStyle = SimpleLineSymbol.STYLE_SOLID; |
| | | break; |
| | | } |
| | | return returnStyle; |
| | | }, |
| | | createPictureMarkerSymbol:function(config) |
| | | { |
| | | var symbol = new PictureMarkerSymbol(config.url, config.width, config.height); |
| | | symbol.xoffset=config.xoffset; |
| | | symbol.yoffset=config.yoffset; |
| | | return symbol; |
| | | } |
| | | }; |
| | | }); |