private void updateRadarAreaShow(PlottingArea radarArea) { if ((IsMask && radarArea.RadarArea.IsMask) || (ManualExtract && radarArea.RadarArea.ManualIdenfity) || (SimuVoyage && radarArea.RadarArea.PassThrough)) { radarArea.OnRefreshed(); RadarAreaMaskColor colorMuxer = new RadarAreaMaskColor() { Opacity = 0, FillColor = (Color)ColorConverter.ConvertFromString("#00000000"), StrokeColor = (Color)ColorConverter.ConvertFromString("#00000000"), }; if (IsMask && radarArea.RadarArea.IsMask) { updateMuxerColor(ref colorMuxer, _radarAreaColors[0]); } if (ManualExtract && radarArea.RadarArea.ManualIdenfity) { updateMuxerColor(ref colorMuxer, _radarAreaColors[1]); } if (SimuVoyage && radarArea.RadarArea.PassThrough) { updateMuxerColor(ref colorMuxer, _radarAreaColors[2]); } radarArea.PolygonOpacity = colorMuxer.Opacity; radarArea.FillColor = colorMuxer.FillColor; radarArea.StrokeColor = colorMuxer.StrokeColor; } else { radarArea.Visibility = System.Windows.Visibility.Hidden; } }
private void _listPlottingArea_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) { if (e.PropertyName == "重置标绘区选择项") { _plottingArea = _plottingInfomation.PlotPres; } }
public void Add(PlottingArea pa) { LockPrevPlottingStatus(); _plottingAreas.Add(pa); _presIndex = Count - 1; PlotPres = _plottingAreas[Count - 1]; this.Children.Add(_plottingAreas[Count - 1]); updateRadarAreaShow(_plottingAreas[Count - 1]); }
private void updateRegion(string radarName, RadarRegion region) { for (int i = 0; i < Data.Count; i++) { if (Data.PlottingAreas[i].RadarArea.Name == region.Name) { Data.PlottingAreas[i].AddConfigRadar(radarName);//关联 return; } } //未找到 int selectedIndex = SelectedIndex; var plotArea = new PlottingArea(Locator, region); plotArea.AddConfigRadar(radarName); Add(plotArea); SelectedIndex = selectedIndex; }
private void onRestFeatureSelect(string shape) { if (_seaCheatAnalyzeArea != null) { this.Children.Remove(_seaCheatAnalyzeArea); } _seaCheatAnalyzeArea = null; if (!string.IsNullOrWhiteSpace(shape))//无效字符,表示无区域 { var region = RadarRegionFromString.GetRegion(shape); _seaCheatAnalyzeArea = new PlottingArea(_locatorBorder.Locator, region); _seaCheatAnalyzeArea.PolygonOpacity = 0.5; _seaCheatAnalyzeArea.PlotStatus = PlottingStatus.锁定模式; _seaCheatAnalyzeArea.MoveToCentered(); this.Children.Add(_seaCheatAnalyzeArea); } }
public void Add(PlottingArea pa) { Data.Add(pa); SelectedIndex = Data.Count - 1; FirePropertyChanged("新增标绘区"); }
private void addRadarRegion(RadarRegion region) { var plotArea = new PlottingArea(_radarAreas.Locator, region); _radarAreas.Add(plotArea); }