Разработка специализированной системы визуализации и анализа городской среды

Автор работы: Пользователь скрыл имя, 06 Января 2013 в 23:20, реферат

Краткое описание

Цель работы – анализ методов информационной визуализации и визуального анализа и применение их для разработки прототипа системы поддержки конечного пользователя.
В процессе работы проводился анализ возможностей географических информационных систем как средств визуализации и анализа данных, исследовались различные методы представления географических и семантических данных.

Вложенные файлы: 1 файл

Tekst.docx

— 2.90 Мб (Скачать файл)

                e.Map.MapFrame.View = r;

                e.Map.MapFrame.ResetExtents();

            }

            else

            {

                r.Inflate((int)(r.Width / 10), (int)(r.Height / 10));

                e.Map.MapFrame.View = r;

                e.Map.MapFrame.ResetExtents();

            }

 

            base.OnMouseUp(e);

 

        }

Класс MyZoomInFunction

 

protected override void OnMouseUp(GeoMouseArgs e)

        {

            _currentPoint = e.Location;

          

            Map.Invalidate();

           

            Rectangle r = e.Map.MapFrame.View;

            int w = r.Width;

            int h = r.Height;

 

            if (e.Button == MouseButtons.Left)

            {                  

                r.Inflate((int)(r.Width / 10),(int)( r.Height / 10));            

                e.Map.MapFrame.View = r;

                e.Map.MapFrame.ResetExtents();

            }

            else

            {

                r.Inflate(-r.Width / 10, -r.Height / 10);              

                e.Map.MapFrame.View = r;

                e.Map.MapFrame.ResetExtents();

            }           

            base.OnMouseUp(e);

 

        }

Класс SelectInfoFunction

 

protected override void OnMouseDoubleClick(GeoMouseArgs e)

        {

 

            Coordinate c1 = e.Map.PixelToProj(new System.Drawing.Point(e.X - 2, e.Y - 2));

            Coordinate c2 = e.Map.PixelToProj(new System.Drawing.Point(e.X + 2, e.Y + 2));

            Coordinate s1 = e.Map.PixelToProj(new System.Drawing.Point(e.X - 1, e.Y - 1));

            Coordinate s2 = e.Map.PixelToProj(new System.Drawing.Point(e.X + 1, e.Y + 1));

            Coordinate center = e.Map.PixelToProj(new System.Drawing.Point(e.X, e.Y));

            IEnvelope tolerant = new Envelope(c1, c2);

            IEnvelope strict = new Envelope(s1, s2);

 

 

            HandleSelection(tolerant, strict);

 

            if (frmFeatureIdentifier == null)

            {

                frmFeatureIdentifier = new MyFeatureIdentifier();

            }

 

 

            if (Identify(e.Map.MapFrame.GetLayers(), strict, tolerant))

            {

                frmFeatureIdentifier.SuspendLayout();

                System.Console.Out.WriteLine(e.Map.MapFrame.GetLayers().Count);

                frmFeatureIdentifier.ResumeLayout();

                frmFeatureIdentifier.Show();

                base.OnMouseDoubleClick(e);

            }

 

            else System.Console.Out.WriteLine("1213");

        }

 

        private bool Identify(IEnumerable<ILayer> layers, IEnvelope strict, IEnvelope tolerant)

        {

            foreach (IMapLayer layer in layers)

            {         

                IMapFeatureLayer gfl = layer as IMapFeatureLayer;

 

                if (gfl != null)

                {

                    if (gfl.SelectionEnabled)

                    {

                        IFeature ff = new Feature();

                        List<IFeature> result = gfl.Selection.ToFeatureList();

                        if (result.Count > 0)

                        {

                            ff = result[0];

                            frmFeatureIdentifier.Add(gfl, ff);

                            return true;

                        }

                    }

                }

            }

            return false;

        }

 

        private void HandleSelection(IEnvelope tolerant, IEnvelope strict)

        {

 

            Map.Select(tolerant, strict);               

            Map.MapFrame.ResetExtents();

        }

}

 


Информация о работе Разработка специализированной системы визуализации и анализа городской среды