Пример #1
0
        public void ShowMapWithPointLayerBasedOnFeatureDataTable()
        {
            var table = new FeatureDataTable();

            table.Columns.Add("X", typeof(double));
            table.Columns.Add("Y", typeof(double));
            table.Columns.Add("Category", typeof(string));
            DataRow row = table.NewRow();

            table.Rows.Add(row);
            row.ItemArray = new object[] { 100000, 400000, "testCategory" };
            row           = table.NewRow();
            table.Rows.Add(row);
            row.ItemArray = new object[] { 200000, 400000, "TestCategory" };

            var dataTablePoint = new DataTablePoint(table, "Category", "X", "Y");
            var vectorLayer    = new VectorLayer("test", dataTablePoint);

            vectorLayer.Theme = ThemeFactory.CreateSingleFeatureTheme(vectorLayer.Style.GeometryType, Color.Blue, 10);
            var map = new Map {
                Name = "testmap"
            };

            map.Layers.Add(vectorLayer);
            map.Center = new Coordinate(150000, 400000);

            map.Zoom = 200000;
            //map.ZoomToExtents();
            //map.ZoomToFit(map.Envelope);

            MapTestHelper.ShowModal(map);
        }
Пример #2
0
        private static ITheme CreateCategorialTheme(Legend legend, Ranges <int> ranges)
        {
            int numberOfClasses = ranges.ranges.Count; //legend.ranges.Count;

            Color[]            colors       = new Color[numberOfClasses];
            float[]            positions    = new float[numberOfClasses];
            List <IComparable> values       = new List <IComparable>();
            string             attribute    = legend.columnName;
            VectorStyle        defaultStyle = null;
            List <string>      categories   = new List <string>();

            int i = 0;

            foreach (Range <int> range in ranges.ranges)
            {
                categories.Add(range.description);
                colors[i]    = range.color;
                positions[i] = ((float)i) / (numberOfClasses - 1);
                values.Add(range.intMaxValue);
                i++;
            }
            ColorBlend      blend = new ColorBlend(colors, positions);
            CategorialTheme theme = ThemeFactory.CreateCategorialTheme(attribute, defaultStyle, blend, numberOfClasses,
                                                                       values, categories);

            return(theme);
        }
        public void ShowRegularGridWithQuantityThemeOnMap()
        {
            IRegularGridCoverage grid2D = new RegularGridCoverage(200, 200, 10, 10)
            {
                Name = "pressure"
            };

            double[] values = new double[grid2D.SizeX * grid2D.SizeY];

            double min = 0;
            double max = 0;

            for (int i = 0; i < values.Length; i++)
            {
                values[i] = i;
                if (values[i] > max)
                {
                    max = values[i];
                }
                if (values[i] < min)
                {
                    min = values[i];
                }
            }

            grid2D.SetValues(values);

            var map = new Map();

            var rasterLayer = new RegularGridCoverageLayer {
                Grid = grid2D
            };

            var defaultStyle = new VectorStyle {
                GeometryType = typeof(IPolygon), Line = Pens.SeaGreen
            };

            double interval     = (max - min) / 10;
            var    intervalList = new List <Interval>();

            double start = min;
            double stop  = min + interval;

            for (int i = 0; i < 10; i++)
            {
                intervalList.Add(new Interval(start, stop));
                start = stop;
                stop += interval;
            }

            QuantityTheme quantityTheme = ThemeFactory.CreateQuantityTheme(grid2D.Components[0].Name, defaultStyle,
                                                                           ColorBlend.BlueToGreen, 10, intervalList
                                                                           );

            rasterLayer.Theme = quantityTheme;

            map.Layers.Add(rasterLayer);

            MapTestHelper.ShowModal(map);
        }
Пример #4
0
        private static ITheme CreateDefaultGradientTheme(string columnName, Tuple <double, double> tuple)
        {
            double minValue        = tuple.value1;
            double maxValue        = tuple.value2;
            string attribute       = columnName;
            int    numberOfClasses = 10;

            // use polygon for grids so style will be shown nicely in dialog
            var defaultStyle = new VectorStyle {
                GeometryType = typeof(IPolygon)
            };
            var blend = new ColorBlend(new Color[] { Color.Black, Color.White }, new float[] { 0, 1 });
            int size  = (int)defaultStyle.SymbolScale;

            GradientTheme gradientTheme = ThemeFactory.CreateGradientTheme(attribute, defaultStyle,
                                                                           blend,
                                                                           (float)Convert.ChangeType(minValue, typeof(float)),
                                                                           (float)Convert.ChangeType(maxValue, typeof(float)),
                                                                           size,
                                                                           size,
                                                                           false,
                                                                           false);

            return(gradientTheme);
        }
Пример #5
0
        private FormsContext()
        {
            var provider = new XmlDataProvider <SettingsModel>("settings.xml", null);

            Settings     = provider.Load() ?? new SettingsModel();
            CurrentTheme = ThemeFactory.GetCurrent();
        }
Пример #6
0
    // Start is called before the first frame update
    void Start()
    {
        theme = ThemeFactory.CreateTheme(GameManager.instance.theme);
        endGame.SetActive(false);

        qtdWords = theme.QtdWords;

        //colore as palavras com a cor determinada
        for (int i = 0; i < words.Length; i++)
        {
            words[i].text = theme.SelectedWords[i];
            Color newColor = new Color();
            ColorUtility.TryParseHtmlString(theme.SelectedColors[i], out newColor);
            words[i].color = newColor;
        }


        //inicializa lista de palavras marcadas
        for (int i = 0; i < words.Length; i++)
        {
            GameManager.instance.markedWords.Add(new List <string>()
            {
                "", "", "", "", "", "", "", "", "", ""
            });
        }

        txtTheme.text = "Theme: " + GameManager.instance.theme;
        txtWords.text = "Words: " + qtdWords;
    }
Пример #7
0
        private void ChangeColor(object sender, RoutedEventArgs e)
        {
            Color c = (Color)ColorConverter.ConvertFromString(((MenuItem)sender).Header.ToString());

            ThemeFactory.ChangeColors(c);
            //this.treeView1.Background = new LinearGradientBrush(c, Color.FromRgb(255, 255, 255),45);
        }
        private void InitTable()
        {
            _adapter = new TableLayoutAdapter <Control>(tableLayoutPanel1, false);

            foreach (var theme in _themes.ThemesList)
            {
                var label = new Label()
                {
                    Text      = theme.Title,
                    BackColor = theme.MainPanelBackgroundColor,
                    ForeColor = theme.SidePanelMainTextColor,
                    Margin    = new Padding(3, 3, 3, 3),
                    Dock      = DockStyle.Fill,
                    Height    = 45
                };

                label.Click += (sender, args) =>
                {
                    _dataProvider.Item.SelectedTheme = label.Text;
                    _dataProvider.Save();

                    FormsContext.Instance.CurrentTheme = ThemeFactory.GetCurrent();
                    SideMenuBuilder.GetInstance().ChangeTheme(FormsContext.Instance.CurrentTheme);

                    FormsContext.Instance.CurrentActiveForm?.Close();
                };

                _adapter.Add(label);
            }
        }
Пример #9
0
        private void ThemeComboBoxSelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            try
            {
                var comboitem = this.themeComboBox.SelectedItem as ComboBoxItem;

                switch (this.themeComboBox.SelectedIndex)
                {
                case 0:
                case 2:
                case 3:
                    ThemeFactory.ChangeTheme(new Uri(comboitem.Tag.ToString(), UriKind.RelativeOrAbsolute));
                    break;

                case 1:
                case 4:
                case 5:
                case 6:
                    ThemeFactory.ChangeTheme(comboitem.Tag.ToString());
                    break;
                }
            }

            catch (Exception error)
            {
                Framework.EventBus.Publish(error);
            }
        }
Пример #10
0
        public void Should_save_new_theme()
        {
            var newTheme = ThemeFactory.Theme(Guid.NewGuid(), "Name 3", "Description 3", "Folder 3");

            _sut.Create(newTheme);

            var actual = _sut.GetById(newTheme.Id);

            Assert.NotNull(actual);
        }
Пример #11
0
        private void UpdateTheme()
        {
            // If there was no theme attached to the layer yet, generate a default theme
            if (featureCoverage == null || featureCoverage.Features == null || featureCoverage.Features.Count == 0)
            {
                return;
            }

            Style.GeometryType = GetFeatureGeometryType(featureCoverage.Features[0] as IFeature);

            // Values to base the theme on
            //List<IVariableFilter> filters = new List<IVariableFilter>();
            if (Coverage.Time != null)
            {
                if (CurrentTime == null && Coverage.Time.Values.Count != 0)
                {
                    CurrentTime = Coverage.Time.Values[0];
                }
                //filters.Add(new VariableValueFilter(featureCoverage.Time, CurrentTime));
            }
            IMultiDimensionalArray <double> values = featureCoverage.GetValues <double>();

            if (null == values)
            {
                return;
            }
            // NOTE: we're getting all values here!

            var featureValues = new List <double>(values.Where(v => !double.IsNaN(v)));

            if (0 == featureValues.Count)
            {
                log.Error("Unable to generate default theme; no values available");
                return;
                //throw new ArgumentException();
            }

            featureValues.Sort();
            double minValue = featureValues.Min();
            double maxValue = featureValues.Max();

            if (minValue == maxValue)
            {
                // Only a single value, so no gradient theme needed/wanted: create a 'blue' single feature theme
                Theme = ThemeFactory.CreateSingleFeatureTheme(Style.GeometryType, Color.Blue, 10);
            }
            else
            {
                // Create 'green to blue' gradient theme
                Theme = ThemeFactory.CreateGradientTheme(Coverage.Components[0].Name, Style,
                                                         new ColorBlend(new Color[] { Color.Green, Color.Blue },
                                                                        new float[] { 0f, 1f }),
                                                         (float)minValue, (float)maxValue, 1, 1, false, true);
            }
        }
Пример #12
0
        protected override void OnStartup(StartupEventArgs _e)
        {
            InitInternalServer();
            base.OnStartup(_e);

            ThemeFactory.ChangeTheme("luna.normalcolor");

            var main = new MainWindow();

            main.Show();
        }
Пример #13
0
        public void Should_update_theme()
        {
            var newThemeDescription = "New Description 1";

            var themeToUpdate = ThemeFactory.Theme(_themeId1, "Name 1", newThemeDescription, "Folder 1");

            _sut.Update(themeToUpdate);

            var updatedTheme = _sut.GetById(_themeId1);

            Assert.AreEqual(newThemeDescription, updatedTheme.Description);
        }
Пример #14
0
 public void SetTheme(string themeName)
 {
     try
     {
         if (themeName == "dev2010")
         {
             string uri = "/AvalonDock.Themes;component/themes/dev2010.xaml";
             ThemeFactory.ChangeTheme(new Uri(uri, UriKind.RelativeOrAbsolute));
         }
         else if (themeName == "dev2010green")
         {
             string uri = "/AvalonDock.Themes;component/themes/dev2010green.xaml";
             ThemeFactory.ChangeTheme(new Uri(uri, UriKind.RelativeOrAbsolute));
         }
         else if (themeName == "dev2010red")
         {
             string uri = "/AvalonDock.Themes;component/themes/dev2010red.xaml";
             ThemeFactory.ChangeTheme(new Uri(uri, UriKind.RelativeOrAbsolute));
         }
         else if (themeName == "ExpressionDark")
         {
             string uri = "/AvalonDock.Themes;component/themes/ExpressionDark.xaml";
             ThemeFactory.ChangeTheme(new Uri(uri, UriKind.RelativeOrAbsolute));
         }
         else if (themeName == "ExpressionLight")
         {
             string uri = "/AvalonDock.Themes;component/themes/ExpressionLight.xaml";
             ThemeFactory.ChangeTheme(new Uri(uri, UriKind.RelativeOrAbsolute));
         }
         else if (themeName == "classic" || themeName == "generic" || themeName == "luna.normalcolor" || themeName == "aero.normalcolor")
         {
             ThemeFactory.ChangeTheme(themeName);
         }
         else if (themeName.StartsWith("#"))
         {
             //System.Windows.Forms.MessageBox.Show(themeName);
             byte a = byte.Parse(themeName.Substring(1, 2), NumberStyles.HexNumber);
             byte r = byte.Parse(themeName.Substring(3, 2), NumberStyles.HexNumber);
             byte g = byte.Parse(themeName.Substring(5, 2), NumberStyles.HexNumber);
             byte b = byte.Parse(themeName.Substring(7, 2), NumberStyles.HexNumber);
             ThemeFactory.ChangeColors(System.Windows.Media.Color.FromArgb(a, r, g, b));
         }
         else if (themeName == "default")
         {
             ThemeFactory.ResetTheme();
         }
     }
     catch            // (Exception ex)
     {
         //System.Windows.Forms.MessageBox.Show(ex.ToString(), "At ToolSettings.SetTheme()");
     }
 }
Пример #15
0
        private void button2_Click(object sender, EventArgs e)
        {
            _dataProvider = ThemeFactory.ThemesProvider;

            if (!_isEdit)
            {
                if (Instance.Title.Trim().ToLower() == "default")
                {
                    MessageBox.Show("You can't add a theme with a title of default");
                }

                Instance = new ThemeModel()
                {
                    Title = textBox1.Text,
                    SidePanelMainColorStr        = textBox2.Text,
                    SidePanelMainTextColorStr    = textBox3.Text,
                    SidePanelSubMenuColorStr     = textBox4.Text,
                    SidePanelSubMenuTextColorStr = textBox5.Text,
                    MainPanelBackgroundColorStr  = textBox6.Text
                };

                if (_dataProvider.Item == null)
                {
                    _dataProvider.Item = ThemeFactory.NewInstance();
                }

                _dataProvider.Item.ThemesList.Add(Instance);
            }

            else
            {
                var saved = _dataProvider.Item.ThemesList.FirstOrDefault(t => t.Title == EditInstance.Title);

                saved.SidePanelMainColorStr        = textBox2.Text;
                saved.SidePanelMainTextColorStr    = textBox3.Text;
                saved.SidePanelSubMenuColorStr     = textBox4.Text;
                saved.SidePanelSubMenuTextColorStr = textBox5.Text;
                saved.MainPanelBackgroundColorStr  = textBox6.Text;
            }

            _dataProvider.Save();

            Instance     = null;
            EditInstance = null;

            FormsContext.Instance.CurrentTheme = ThemeFactory.GetCurrent();
            SideMenuBuilder.GetInstance().ChangeTheme(FormsContext.Instance.CurrentTheme);
            this.Close();
        }
Пример #16
0
        /// <summary>
        ///   Constructor for panels
        /// </summary>
        public Panels()
        {
            try
            {
                this.InitializeComponent();
                this.SideBarExplorer.Hide();
                this.BottomBar.Hide();

                ThemeFactory.ChangeTheme(new Uri("LGP.Components.Panels;component/Themes/lgp.xaml", UriKind.RelativeOrAbsolute));
            }
            catch (Exception error)
            {
                Framework.EventBus.Publish(error);
            }
        }
Пример #17
0
        public void SetUp()
        {
            var optionsBuilder = new DbContextOptionsBuilder <WeapsyDbContext>();

            optionsBuilder.UseInMemoryDatabase();
            _dbContext = new WeapsyDbContext(optionsBuilder.Options);

            _themeId1 = Guid.NewGuid();
            _themeId2 = Guid.NewGuid();

            _dbContext.Set <ThemeDbEntity>().AddRange
            (
                new ThemeDbEntity
            {
                Id          = _themeId1,
                Name        = "Name 1",
                Description = "Description 1",
                Folder      = "Folder 1",
                Status      = ThemeStatus.Active
            },
                new ThemeDbEntity
            {
                Id          = _themeId2,
                Name        = "Name 2",
                Description = "Description 2",
                Folder      = "Folder 2",
                Status      = ThemeStatus.Active
            },
                new ThemeDbEntity
            {
                Status = ThemeStatus.Deleted
            }
            );

            _dbContext.SaveChanges();

            var mapperMock = new Mock <AutoMapper.IMapper>();

            mapperMock.Setup(x => x.Map <ThemeDbEntity>(It.IsAny <Theme>())).Returns(new ThemeDbEntity());
            mapperMock.Setup(x => x.Map <Theme>(It.IsAny <ThemeDbEntity>())).Returns(new Theme());
            mapperMock.Setup(x => x.Map <ICollection <Theme> >(It.IsAny <ICollection <ThemeDbEntity> >())).Returns(new List <Theme>
            {
                ThemeFactory.Theme(_themeId1, "Name", "Description", "Folder"),
                ThemeFactory.Theme(_themeId2, "Name", "Description", "Folder")
            });

            _sut = new ThemeRepository(_dbContext, mapperMock.Object);
        }
Пример #18
0
        public void LayersWithThemeGroupShareMinMax()
        {
            var table = new FeatureDataTable();

            table.Columns.Add("Id", typeof(int));
            table.Columns.Add("X", typeof(double));
            table.Columns.Add("Y", typeof(double));
            table.Columns.Add("Value", typeof(double));
            AddRow(table, new object[] { 0, 5.0, 5.0, 0.0 });
            AddRow(table, new object[] { 1, 10.0, 10.0, 10.0 });
            var dataSource = new DataTablePoint(table, "Id", "X", "Y");

            var table2 = new FeatureDataTable();

            table2.Columns.Add("Id", typeof(int));
            table2.Columns.Add("X", typeof(double));
            table2.Columns.Add("Y", typeof(double));
            table2.Columns.Add("Value", typeof(double));
            AddRow(table2, new object[] { 0, 5.0, 2.0, 0.0 });
            AddRow(table2, new object[] { 1, 10.0, 4.0, 10.0 });
            AddRow(table2, new object[] { 2, 7.0, 10.0, 20.0 });
            var dataSource2 = new DataTablePoint(table2, "Id", "X", "Y");

            var basicTheme = ThemeFactory.CreateGradientTheme("Value", null, ColorBlend.Rainbow7, 0.0, 5.0, 3, 3, false, true, 3);

            var layer = new VectorLayer {
                AutoUpdateThemeOnDataSourceChanged = true, ThemeGroup = "group1", DataSource = dataSource, Theme = basicTheme
            };
            var layer2 = new VectorLayer {
                AutoUpdateThemeOnDataSourceChanged = true, ThemeGroup = "group1", DataSource = dataSource2, Theme = basicTheme
            };

            var map = new Map();

            map.Layers.Add(layer);
            Assert.AreEqual(10.0, ((GradientTheme)layer.Theme).Max); // refresh on add

            map.Layers.Add(layer2);

            Assert.AreEqual(20.0, ((GradientTheme)layer.Theme).Max); // both to max of the group
            Assert.AreEqual(20.0, ((GradientTheme)layer2.Theme).Max);

            map.Layers.Remove(layer2);

            Assert.AreEqual(10.0, ((GradientTheme)layer.Theme).Max); // refresh on remove
        }
Пример #19
0
                    public static ThemeFactory FromBaseObject(BaseObject baseObj)
                    {
                        if (baseObj == null || baseObj.NativeObject == IntPtr.Zero)
                        {
                            return(null);
                        }
                        ThemeFactory obj = baseObj as  ThemeFactory;

                        if (object.Equals(obj, null))
                        {
                            obj = new ThemeFactory(CreatedWhenConstruct.CWC_NotToCreate);
                            obj.BindNativeObject(baseObj.NativeObject, "CThemeFactory");
                            obj.IncreaseCast();
                        }

                        return(obj);
                    }
Пример #20
0
        private async Task <HueTheme> LoadThemeFromFile(StorageFile file)
        {
            try
            {
                string content = await FileIO.ReadTextAsync(file);

                HueTheme theme = ThemeFactory.CreateThemeFromJson(content);
                theme.FileName = file.Name;

                return(theme);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
                return(null);
            }
        }
Пример #21
0
        public void Should_save_new_theme()
        {
            var newTheme = ThemeFactory.Theme(Guid.NewGuid(), "Name 3", "Description 3", "Folder 3");

            using (var context = new WeapsyDbContext(_contextOptions))
            {
                var repository = new ThemeRepository(Shared.CreateNewContextFactory(context), Shared.CreateNewMapper());
                repository.Create(newTheme);
            }

            using (var context = new WeapsyDbContext(_contextOptions))
            {
                var repository = new ThemeRepository(Shared.CreateNewContextFactory(context), Shared.CreateNewMapper());
                var theme      = repository.GetById(newTheme.Id);

                Assert.NotNull(theme);
            }
        }
Пример #22
0
        public CreateThemeForm(bool isEdit)
        {
            _isEdit = isEdit;
            InitializeComponent();

            if (isEdit && ThemeFactory.GetCurrent().Title.Trim().ToLower() == "default")
            {
                MessageBox.Show("You can't edit the default template");
                return;
            }

            if (isEdit)
            {
                EditInstance     = ThemeFactory.GetCurrent();
                textBox1.Enabled = false;
            }

            InitializeTextBoxes();
        }
Пример #23
0
 /// <summary>
 ///     Constructor sets up the menu and sets the required properties
 ///     in order thay this may be displayed over the top of it's parent
 ///     form.
 /// </summary>
 private ActiveMenuImpl(Form form)
 {
     InitializeComponent();
     items = new ActiveItemsImpl();
     items.CollectionModified += ItemsCollectionModified;
     parentForm = form;
     Show(form);
     parentForm.Disposed += ParentFormDisposed;
     Visible              = false;
     isActivated          = form.WindowState != FormWindowState.Minimized;
     themeFactory         = new ThemeFactory(form);
     theme           = themeFactory.GetTheme();
     originalMinSize = form.MinimumSize;
     AttachHandlers();
     ToolTip.ShowAlways = true;
     TopMost            = form.TopMost;
     TopMost            = false;
     spillOverMode      = SpillOverMode.IncreaseSize;
 }
Пример #24
0
        public void Should_update_theme()
        {
            const string newThemeDescription = "New Description 1";

            var themeToUpdate = ThemeFactory.Theme(_themeId1, "Name 1", newThemeDescription, "Folder 1");

            using (var context = new WeapsyDbContext(_contextOptions))
            {
                var repository = new ThemeRepository(Shared.CreateNewContextFactory(context), Shared.CreateNewMapper());
                repository.Update(themeToUpdate);
            }

            using (var context = new WeapsyDbContext(_contextOptions))
            {
                var repository   = new ThemeRepository(Shared.CreateNewContextFactory(context), Shared.CreateNewMapper());
                var updatedTheme = repository.GetById(_themeId1);

                Assert.AreEqual(newThemeDescription, updatedTheme.Description);
            }
        }
        protected override void CreateDefaultTheme()
        {
            // If there was no theme attached to the layer yet, generate a default theme
            if (Theme != null)
            {
                return;
            }

            //looks like min/max should suffice
            var minMaxValue = GetMinMaxValue();

            if (minMaxValue != null && minMaxValue.First != double.MaxValue && minMaxValue.Second != double.MaxValue)
            {
                const int numberOfClasses = 12;
                Theme = ThemeFactory.CreateGradientTheme(Coverage.Components[0].Name, Style,
                                                         ColorBlend.Rainbow7,
                                                         (float)minMaxValue.First, (float)minMaxValue.Second,
                                                         12, 25, false, false, numberOfClasses);
            }
            AutoUpdateThemeOnDataSourceChanged = true;
        }
Пример #26
0
        private void InitializePanel(Panel panel)
        {
            var modelsFactory = SubMenuItemFactory.Instance;
            var builder       = SideMenuBuilder.GetInstance();

            builder.MenuModels = new List <SubMenuModel>()
            {
                modelsFactory.CreateOpenFormMenuModel("My Notes", (() => new Form1()), panelChildForm),
                modelsFactory.CreateMainMenuModel("Settings", new List <SubMenuModel>()
                {
                    modelsFactory.CreateOpenFormMenuModel("General",
                                                          () => new SettingsForm(),
                                                          panelChildForm),

                    modelsFactory.CreateOpenFormMenuModel("Theme",
                                                          () => new ThemesIndexForm(),
                                                          panelChildForm),

                    modelsFactory.CreateOpenFormMenuModel(
                        "Create new",
                        () => new CreateThemeForm(false),
                        panelChildForm),

                    modelsFactory.CreateOpenFormMenuModel(
                        "Edit",
                        () =>
                    {
                        if (ThemeFactory.GetCurrent().Title.Trim().ToLower() != "default")
                        {
                            return(new CreateThemeForm(true));
                        }
                        MessageBox.Show("You cannot edit the default theme");
                        return(null);
                    },
                        panelChildForm),
                })
            };

            builder.Build(panel, panelChildForm);
        }
        protected static ITheme GenerateDefaultTheme(string name, IList noDataValues, object minValue, object maxValue)
        {
            double min = Convert.ToDouble(minValue);
            double max = Convert.ToDouble(maxValue);

            if (double.IsInfinity(min) || double.IsNaN(min))
            {
                log.Debug("Nan or infinity is invalid as minvalue for theme. Changed it to lowest possible value");
                min = double.MinValue;
            }
            if (double.IsInfinity(max) || double.IsNaN(max))
            {
                log.Debug("Nan or infinity is invalid as maxvalue for theme. Changed it to highest possible value");
                max = double.MaxValue;
            }

            var theme = ThemeFactory.CreateGradientTheme(name, null, Thematics.ColorBlend.GreenToBlue, min, max, 1, 1, false, true);

            theme.NoDataValues = noDataValues;

            return(theme);
        }
        /// <summary>
        /// Win main
        /// </summary>
        public winMain()
        {
            ThemeFactory.ChangeTheme("classic");
            InitializeComponent();
            //Select Template In Template Explorer
            this.lucTemplatesExplorer.SelectTemplateNode += new TemplateHander(lucTemplatesExplorer_SelectTemplateNode);
            //Select File In Solution Explorer
            this.lucSolutionExplorer.SelectFileNode += new ViewCodeHander(lucSolutionExplorer_SelectFileNode);
            //
            this.lucServerExplorer.SelectServerObject += new SelectedServerObjectHander(lucServerExplorer_SelectServerObject);
            //
            this.InitNewDocument.LoadProperties(this.lucDocumentProperties);

            //CodeGenerateHelper cghelper = new CodeGenerateHelper();
            //SqlDBHelper sqlHelper = new SqlDBHelper( "Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=srmgateway;Data Source=EBIZSQLD3.amer.corp.eds.com");
            //DataTable dt = sqlHelper.GetTables("select * from SRM_ErrorLog");
            //DataType          System.String
            //DataTypeName      String
            //ColumnSize
            //IsKey
            //AllowDBNull        False/True
            //ColumnName
        }
Пример #29
0
        protected override void CreateDefaultTheme()
        {
            // If there was no theme attached to the layer yet, generate a default theme
            if (Theme != null)
            {
                return;
            }

            //looks like min/max should suffice
            var minMaxValue = GetMinMaxValue();

            if (minMaxValue != null)
            {
                var attributeName = ((INetworkCoverage)Coverage).SegmentGenerationMethod == SegmentGenerationMethod.SegmentPerLocation
                                        ? Coverage.Components[0].Name
                                        : "Chainage";

                Theme = ThemeFactory.CreateGradientTheme(attributeName, Style, ColorBlend.Rainbow7,
                                                         (float)minMaxValue.First, (float)minMaxValue.Second,
                                                         10, 25, false, false, 12);
            }
            AutoUpdateThemeOnDataSourceChanged = true;
        }
Пример #30
0
        public void ClonePerformanceTest()
        {
            var table = new FeatureDataTable();

            table.Columns.Add("Id", typeof(int));
            table.Columns.Add("X", typeof(double));
            table.Columns.Add("Y", typeof(double));
            table.Columns.Add("Value", typeof(double));
            AddRow(table, new object[] { 0, 5.0, 5.0, 0.0 });
            AddRow(table, new object[] { 1, 10.0, 10.0, 10.0 });
            var dataSource = new DataTablePoint(table, "Id", "X", "Y");

            var basicTheme = ThemeFactory.CreateGradientTheme("Value", null, ColorBlend.Rainbow7, 0.0, 5.0, 3, 3, false, true, 8);

            var layer = new VectorLayer
            {
                AutoUpdateThemeOnDataSourceChanged = true,
                Theme      = basicTheme,
                DataSource = dataSource
            };

            TestHelper.AssertIsFasterThan(230, () => layer.Clone());
        }