Пример #1
0
        public void UpdateSelectedTarget(Point point, SelectedTargetDraw selectedTargetDraw)
        {
            string id         = null;
            double dist       = selectedTargetDraw.SelectedDistance;
            double lengthPrev = selectedTargetDraw.SelectedDistance;

            foreach (var key in _dynamicObjectEvent.Keys.ToArray())
            {
                if (isNeerPoint(key, point, ref lengthPrev))
                {
                    if (dist > lengthPrev)
                    {
                        id   = key;
                        dist = lengthPrev;
                    }
                }
            }
            if (dist < selectedTargetDraw.SelectedDistance)
            {
                selectedTargetDraw.SelectedDistance = dist;
                selectedTargetDraw.SelectedTrack    = _dynamicObjectEvent[id];
                SelectedId = id;
            }
            else
            {
                SelectedId = null;
            }
        }
Пример #2
0
 public TracksCanvasDrawer(LocatorAndBorder locator)
 {
     _locator    = locator;
     _tracksData = new TracksCanvas(_locator);
     _tracksShow = _tracksData;
     if (IsVisibility)
     {
         addChildren(_tracksShow);
     }
     _tracksData.SetColor(_fill, _stroke);
     _locator.OnMapRefreshed       += OnMapRefreshed;
     _menuBarsInfo                  = MenuBarsBaseInfo.Instance;
     _menuBarsInfo.PropertyChanged += menuBarsInfo_PropertyChanged;
     _timer = new System.Threading.Timer(callbackUpdateTimeOutTracks, null, 1000, 1000);
     OnMapRefreshed();
     _selectedTargetDraw = SelectedTargetDraw.Instance;
 }
Пример #3
0
        public TracksDraws(ILocator locator)
        {
            LogService.Info("初始化信号源配置");
            string path = System.IO.Directory.GetParent(System.Windows.Forms.Application.LocalUserAppDataPath).FullName;

            _locatorAndLimit = LocatorAndBorder.Instance;
            ConfigPath       = System.IO.Path.Combine(path, "信号源配置.xml");
            loadConfig();
            cctv = new CCTVNodeShow(_locatorAndLimit);
            this.Children.Add(cctv);
            _selectedTargetDraw = SelectedTargetDraw.Instance;
            _selectedTargetDraw.Init(_locatorAndLimit);
            this.Children.Add(_selectedTargetDraw);
            Canvas.SetZIndex(cctv, 0);
            Canvas.SetZIndex(_selectedTargetDraw, 1000);
            MenuBarsBaseInfo.Instance.PropertyChanged += _menuBarsInfo_PropertyChanged;
            LogService.Info("初始化信号源配置完毕");
        }
Пример #4
0
 static SelectedTargetDraw()
 {
     Instance = new SelectedTargetDraw();
 }