private void FindCellsCoverPoints(List<UNet.NE.Interface.Transceiver> cells, List<List<GeoXYPoint>> cellsPoints, ValueMatrixShortCollection bestservervalues, List<LTECalcCellsInfoCollection> infos) { foreach (Transceiver tranceiver in cells) { this.FindOneCellCoverPoints(cellsPoints, bestservervalues, infos, tranceiver); } }
private void FindOneCellOneCoverRegionPoints(ValueMatrixShortCollection bestservervalues, List<LTECalcCellsInfoCollection> infos, Transceiver cell, List<GeoXYPoint> points, int infoIndex) { LTECalcCellsInfoCollection infos2 = infos[infoIndex]; ValueMatrixShort onepolygonvalues = bestservervalues.Values[infoIndex]; foreach (LTECellCalcInfo info in infos2.TranceiverInfos) { this.FindCoverPoints(onepolygonvalues, cell, points, info); } }
private void FindOneCellCoverPoints(List<List<GeoXYPoint>> cellsPoints, ValueMatrixShortCollection bestservervalues, List<LTECalcCellsInfoCollection> infos, Transceiver cell) { List<GeoXYPoint> points = new List<GeoXYPoint>(); for (int i = 0; i < infos.Count; i++) { this.FindOneCellOneCoverRegionPoints(bestservervalues, infos, cell, points, i); } cellsPoints.Add(points); }
private bool ValidateShortCollection(double x, double y, ref GeoXYPoint gPoint, ValueMatrixShortCollection valueMatrixShortCollection) { if (((valueMatrixShortCollection != null) && (valueMatrixShortCollection.Values != null)) && (valueMatrixShortCollection.Values.Count > 0)) { gPoint = this.getBinXy(x, y, valueMatrixShortCollection.Values[0].Resolution); if (this.IsInRectangle(gPoint, valueMatrixShortCollection.Values[0].Resolution, valueMatrixShortCollection.Values[0].NorthwestY, valueMatrixShortCollection.Values[0].NorthwestX, valueMatrixShortCollection.Values[0].ColumnsCount, valueMatrixShortCollection.Values[0].RowsCount)) { return true; } } return false; }
private bool Validate(double x, double y, ref GeoXYPoint gPoint, ValueMatrixIntCollection valueMatrixIntCollection, ValueMatrixShortCollection valueMatrixShortCollection) { return (this.ValidateIntCollection(x, y, ref gPoint, valueMatrixIntCollection) || this.ValidateShortCollection(x, y, ref gPoint, valueMatrixShortCollection)); }
private void InitialValueCollections() { this.m_OverlappingZoness = new ValueMatrixShortCollection(); this.m_BestServerRSRPs = new ValueMatrixShortCollection(); this.m_SymbolRSRPs = new ValueMatrixShortCollection(); this.m_DLRSSIs = new ValueMatrixShortCollection(); this.m_DLRSSINRValues = new ValueMatrixShortCollection(); this.m_GeometryValues = new ValueMatrixShortCollection(); this.m_PDSCHSINRValues = new ValueMatrixShortCollection(); this.m_PUSCHSINRValues = new ValueMatrixShortCollection(); this.m_HandOvers = new ValueMatrixShortCollection(); this.m_BestServerCellIDs = new ValueMatrixShortCollection(); this.m_BestServerCarrierIDs = new ValueMatrixShortCollection(); this.m_PDSCHMCSValues = new ValueMatrixShortCollection(); this.m_PUSCHMCSValues = new ValueMatrixShortCollection(); this.m_DLPEAKValues = new ValueMatrixIntCollection(); this.m_ULPEAKValues = new ValueMatrixIntCollection(); this.m_DLAPPLICATIONPEAKValues = new ValueMatrixIntCollection(); this.m_ULAPPLICATIONPEAKValues = new ValueMatrixIntCollection(); this.m_DL_PBCH_RPValues = new ValueMatrixShortCollection(); this.m_PBCH_SINRValues = new ValueMatrixShortCollection(); this.m_DL_SCH_RPValues = new ValueMatrixShortCollection(); this.m_SCH_SINRValues = new ValueMatrixShortCollection(); this.m_ULRSRPValues = new ValueMatrixShortCollection(); this.m_DLRSRQValues = new ValueMatrixShortCollection(); this.m_DL_PDCCH_LevelValues = new ValueMatrixShortCollection(); this.m_PDCCH_SINRValues = new ValueMatrixShortCollection(); this.m_DL_PCFICH_LevelValues = new ValueMatrixShortCollection(); this.m_PCFICH_SINRValues = new ValueMatrixShortCollection(); this.m_DL_PHICH_LevelValues = new ValueMatrixShortCollection(); this.m_PHICH_SINRValues = new ValueMatrixShortCollection(); this.m_PUCCH_LevelValues = new ValueMatrixShortCollection(); this.m_PUCCH_SINRValues = new ValueMatrixShortCollection(); this.m_PRACH_LevelValues = new ValueMatrixShortCollection(); this.m_PRACH_SINRValues = new ValueMatrixShortCollection(); }
private void GeoInteralValueShow(PredictionGroup pg, PredictionStudy ps) { this.ClearIntervalMapLayer(ps); this.m_ValueCollectionShort = ps.StudyValueMatrix as ValueMatrixShortCollection; this.m_ValueCollectionShort.Open(this.m_SubSysInterface.ProjectManager); this.m_DefaultColor = Color.FromArgb(0, Color.White); ValueIntervalsLegend legend = ps.StudyLegend.ValueIntervals[ps.StudyLegend.FieldItem[ps.StudyLegend.DisplayTypeIndex]]; Dictionary<MaxMinValue, Color> valueIntervalsField = legend.ValueIntervalsField; List<MaxMinValue> list = new List<MaxMinValue>(valueIntervalsField.Keys); foreach (MaxMinValue value2 in list) { valueIntervalsField[value2] = CheckColorTransparence.CheckColor(valueIntervalsField[value2], ps.StudyLegend.Transparence); } string str = Enum.GetName(typeof(PredictionStudyType), ps.StudyType).Replace('_', ' '); foreach (ValueMatrixShort @short in this.m_ValueCollectionShort.Values) { GeoIntervalEventArgs args = new GeoIntervalEventArgs(@short, valueIntervalsField, this.m_DefaultColor); args.m_PolygonRegion = this.m_PredictionGroup.Region; int layerId = this.m_SubSysInterface.AnalyDispEvent.AnalyGeoIntervalLayerMsgChanged(args); ps.StudyLegend.MapLever = layerId; this.UpdateTreeNodeTag(pg, ps, layerId); } this.m_ValueCollectionShort.Close(false); }
private void GeoDiscreteShow(PredictionGroup pg, PredictionStudy ps) { this.m_ValueCollectionShort = ps.StudyValueMatrix as ValueMatrixShortCollection; this.m_ValueCollectionShort.Open(this.m_SubSysInterface.ProjectManager); this.m_DefaultColor = Color.FromArgb(0, Color.White); if (ps.StudyType == PredictionStudyType.Best_Server) { this.GeoBestServerShow(pg, ps, this.m_DefaultColor); } else { this.ClearDiscreteMapLayer(ps); DiscreteValueLegend legend = ps.StudyLegend.DiscreteValue[ps.StudyLegend.FieldItem[ps.StudyLegend.DisplayTypeIndex]]; Dictionary<short, Color> discreteValueField = legend.DiscreteValueField; List<short> list = new List<short>(discreteValueField.Keys); foreach (short num in list) { discreteValueField[num] = CheckColorTransparence.CheckColor(discreteValueField[num], ps.StudyLegend.Transparence); } string str = Enum.GetName(typeof(PredictionStudyType), ps.StudyType).Replace('_', ' '); foreach (ValueMatrixShort @short in this.m_ValueCollectionShort.Values) { GeoDiscreteEventArgs args = new GeoDiscreteEventArgs(@short, discreteValueField, this.m_DefaultColor); args.m_PolygonRegion = this.m_PredictionGroup.Region; int layerId = this.m_SubSysInterface.AnalyDispEvent.AnalyGeoDiscreteLayerMsgChanged(args); ps.StudyLegend.MapLever = layerId; this.UpdateTreeNodeTag(pg, ps, layerId); } this.m_ValueCollectionShort.Close(false); } }
private void GetShortCountDic(ValueMatrixShortCollection valuematrix, ref Dictionary<MaxMinValue, int> intCountDic, List<MaxMinValue> MaxMinList, StatisticType statType, GeoPolygonRegion polygon) { if (this.m_NeedSolveFloatMaxShortMin[0]) { this.m_ActualMinValue = 0x7fffffff; } if (this.m_NeedSolveFloatMaxShortMin[1]) { this.m_ActualMaxValue = -32768f; } this.m_ValidPoint = 0.0; foreach (short num in valuematrix.GetValidPointsValue(polygon, this.m_PredictionGroup.Resolution)) { if (num != -32768) { if (num > this.m_ActualMaxValue) { this.m_ActualMaxValue = num; } if (num < this.m_ActualMinValue) { this.m_ActualMinValue = num; } double powervalue = num; this.GetGeneralCountDic(powervalue, ref intCountDic, MaxMinList, statType); } } }
public Dictionary<MaxMinValue, int> CalculateShortValue(List<MaxMinValue> MaxMinList, StatisticType statType, ValueMatrixShortCollection valuematrix, GeoPolygonRegion polygon) { Dictionary<MaxMinValue, int> intCountDic = new Dictionary<MaxMinValue, int>(); this.m_NeedSolveFloatMaxShortMin = this.NeedSolveFloatMaxShortMinValue(MaxMinList); valuematrix.Open(this.m_SubSysInterface.ProjectManager); foreach (MaxMinValue value2 in MaxMinList) { intCountDic[value2] = 0; } this.GetShortCountDic(valuematrix, ref intCountDic, MaxMinList, statType, polygon); valuematrix.Close(false); return intCountDic; }