コード例 #1
0
 public static ParameterBase Create(ParameterConfig config, Map map)
 {
     switch (config.Type)
     {
         case GPParameterType.Boolean:
             return new BooleanParameter() { Config = config, Value = config.DefaultValue as GPParameter };
         case GPParameterType.Double:
         case GPParameterType.Long:
         case GPParameterType.String:
         case GPParameterType.RecordSet:
         case GPParameterType.DataFile:
             return new SimpleParameter() { Config = config, Value = config.DefaultValue as GPParameter };
         case GPParameterType.RasterData:
         case GPParameterType.RasterDataLayer:
             return new RasterParameter() { Config = config, Value = config.DefaultValue as GPParameter };
         case GPParameterType.Date:
             return new DateParameter() { Config = config, Value = config.DefaultValue as GPParameter };
         case GPParameterType.LinearUnit:
             return new LinearUnitParameter() { Config = config, Value = config.DefaultValue as GPParameter };
         case GPParameterType.MultiValueString:
             var m = new MultiValueStringParameter();
             return m.SetConfiguration(config as MultiValueStringConfig) ? m : null;
         case GPParameterType.FeatureLayer:
             FeatureLayerParameterConfig flConfig = config as FeatureLayerParameterConfig;
             switch (flConfig.Mode)
             {
                 case FeatureLayerParameterConfig.InputMode.SketchLayer:
                     return new SketchLayerParameter() { Config = config, Value = config.DefaultValue as GPParameter, Map = map };
                 case FeatureLayerParameterConfig.InputMode.SelectExistingLayer:
                     return new SelectExistingLayerParameter() { Config = config, Value = config.DefaultValue as GPParameter, Map = map };
                 case FeatureLayerParameterConfig.InputMode.Url:
                     return new SimpleParameter() { Config = config, Value = config.DefaultValue as GPParameter };
                 case FeatureLayerParameterConfig.InputMode.CurrentExtent:
                     return new CurrentExtentLayerParameter() { Config = config, Value = config.DefaultValue as GPParameter, Map = map };
             }
             break;
     }
     return null;
 }
コード例 #2
0
        public static ParameterBase Create(ParameterConfig config, Map map)
        {
            switch (config.Type)
            {
            case GPParameterType.Boolean:
                return(new BooleanParameter()
                {
                    Config = config, Value = config.DefaultValue as GPParameter
                });

            case GPParameterType.Double:
            case GPParameterType.Long:
            case GPParameterType.String:
            case GPParameterType.RecordSet:
            case GPParameterType.DataFile:
                return(new SimpleParameter()
                {
                    Config = config, Value = config.DefaultValue as GPParameter
                });

            case GPParameterType.RasterData:
            case GPParameterType.RasterDataLayer:
                return(new RasterParameter()
                {
                    Config = config, Value = config.DefaultValue as GPParameter
                });

            case GPParameterType.Date:
                return(new DateParameter()
                {
                    Config = config, Value = config.DefaultValue as GPParameter
                });

            case GPParameterType.LinearUnit:
                return(new LinearUnitParameter()
                {
                    Config = config, Value = config.DefaultValue as GPParameter
                });

            case GPParameterType.MultiValueString:
                var m = new MultiValueStringParameter();
                return(m.SetConfiguration(config as MultiValueStringConfig) ? m : null);

            case GPParameterType.FeatureLayer:
                FeatureLayerParameterConfig flConfig = config as FeatureLayerParameterConfig;
                switch (flConfig.Mode)
                {
                case FeatureLayerParameterConfig.InputMode.SketchLayer:
                    return(new SketchLayerParameter()
                    {
                        Config = config, Value = config.DefaultValue as GPParameter, Map = map
                    });

                case FeatureLayerParameterConfig.InputMode.SelectExistingLayer:
                    return(new SelectExistingLayerParameter()
                    {
                        Config = config, Value = config.DefaultValue as GPParameter, Map = map
                    });

                case FeatureLayerParameterConfig.InputMode.Url:
                    return(new SimpleParameter()
                    {
                        Config = config, Value = config.DefaultValue as GPParameter
                    });

                case FeatureLayerParameterConfig.InputMode.CurrentExtent:
                    return(new CurrentExtentLayerParameter()
                    {
                        Config = config, Value = config.DefaultValue as GPParameter, Map = map
                    });
                }
                break;
            }
            return(null);
        }