public CalculateProductForm(KrigingInputField field, Map map)
        {
            _field = field;
            _map = map;

            InitializeComponent();
        }
示例#2
0
        private void InitKriging(KrigingInputField field)
        {
            field.Folder = CreateKrigingFolder(field.ID);

            groupBox1.Controls.Clear();

            if (_krigingControl != null)
            {
                _krigingControl.DeleteKriging();
                _krigingControl.Dispose();
            }

            _krigingControl = new KrigingOutput(map, field, _config.Ext, Convert.ToInt32(txtPixel.Text));
            _krigingControl.Width = groupBox1.Width;
            _krigingControl.OnProcessComplete += krigingControl_OnProcessComplete;

            groupBox1.Controls.Add(_krigingControl);

        }
示例#3
0
        private void LoadGridFileClick(object sender, EventArgs e, KrigingInputField field)
        {
            var polygonFile = Path.Combine(field.Folder, "grid_points.shp");

            if (File.Exists(polygonFile))
            {
                map.Layers.Add(polygonFile);
            }
            else
                MessageBox.Show("No grid file found.");
        }
示例#4
0
 private void CalculateProductClick(object sender, EventArgs e, KrigingInputField field)
 {
     new CalculateProductForm(field, map).ShowDialog();
 }
示例#5
0
        private string getMapImage(KrigingInputField field)
        {

            try
            {
                var map = PluginExtension.MyAppManager.Map;
                var fileName = Path.Combine(field.Folder, string.Format(@"{0}.png", DateTime.Now.Ticks));

                using (Bitmap b = new Bitmap(map.Width, map.Height))
                {
                    Rectangle r = new Rectangle(0, 0, map.Width, map.Height);
                    Graphics g = Graphics.FromImage(b);
                    map.MapFrame.Print(g, r);
                    b.Save(fileName);
                }

                return fileName;
            }
            catch (Exception)
            {
                return string.Empty;
            }
        }
示例#6
0
        public List<KrigingInputField> GenerateInputData()
        {
            LoadSelectedFields();

            var resultList = new List<KrigingInputField>();

            if (this._selectedFieldsList.Count > 0)
            {
                int count = 1;

                foreach (var item in this._selectedFieldsList)
                {
                    var r = new KrigingInputField();
                    r.Field = item;
                    r.InputData = ExtractZValues(item);
                    r.ID = string.Format("{0}-{1:N}", count, Guid.NewGuid());
                    resultList.Add(r);

                    count++;
                }
            }

            return resultList;
        }
示例#7
0
        private void SetInputData(KrigingInputField field)
        {
            if (field.InputData.Count >= GlMaxCount)
            {
                System.Windows.Forms.MessageBox.Show("Too many points (" + Convert.ToString(GlMaxCount) + "is max)");
                return;
            }


            var nCount = 0;

            foreach (var item in field.InputData)
            {
                GlardX[nCount] = Convert.ToDouble(item.Long);
                GlardY[nCount] = Convert.ToDouble(item.Lat);
                GlardZ[nCount] = Convert.ToDouble(item.Z);
                nCount++;
            }

            GlnCount = nCount;

            return;
        }
示例#8
0
        public KrigingOutput(Map map, KrigingInputField input, Extent extent, int pixelSize)
        {
            this._krigingField = input;
            this._extent = extent;
            this._pixelSize = pixelSize > 0 ? pixelSize : 1;
            this._map = map;

            InitializeComponent();
        }