private void ConvertBLToXY(RelayNode relayNode) { double num; double num2; this.m_GeoInfo.TransformBLToXY(relayNode.Latitude, relayNode.Longitude, out num, out num2); relayNode.X = num; relayNode.Y = num2; }
protected override void Add(RelayNode rn) { if (!base.m_GroupKeys.ContainsKey(string.Empty)) { base.m_GroupKeys.Add(string.Empty, new List<short>()); } base.m_GroupKeys[string.Empty].Add(rn.ID); }
private void ConvertXYToBL(RelayNode relayNode) { double num; double num2; this.m_GeoInfo.TransformXYToBL(relayNode.X, relayNode.Y, out num, out num2); relayNode.Latitude = num; relayNode.Longitude = num2; }
private LTECellCollection m_LteCellCollection;//add by lw 3.31 public RelayNodeDesc(CollectionsModel collModel, RelayNode relayNode, GeoInfoObserver geoInfo) { this.m_CollectionsModel = collModel; this.m_Entity = relayNode; this.m_RNCollection = collModel.RNColl; this.m_GeoInfo = geoInfo; this.m_BtsCollection = collModel.BtsEquipColl; this.m_LteCellCollection = collModel.LTECellColl;//add by lw 3.31 }
public static RelayNode CreatRelayNode() { RelayNode relayNode = new RelayNode(); relayNode.X = 110; relayNode.Y = 110; BtsEquipment Equipment = new BtsEquipment(); relayNode.Equipment = Equipment; RelayCell relayCell1 = MockLTECell.CreatRelayCell(); relayCell1.ParentRN = relayNode; relayCell1.Tran.Parent = relayCell1.ParentRN; //relayCell1.Parent = relayNode; relayNode.RCList.Add(relayCell1); return relayNode; }
public CarrierVGridModule(CollectionsModel model, Transceiver tranceiver, NetWorkType netType,RelayNode rn) { this.m_Parent = tranceiver; this.m_CollecitonModel = model; this.m_NetType = netType; if (rn!=null) { this.GenerateVGridModelRelayCell(model, rn); this.m_ParentRN = rn; } this.InitCarrierModelCreateDic(); this.InitAddNewCarrierCreateDic(); if (rn !=null) { m_CarrierVModel = new CarrierVGridModelRelayCell(model, rn); } else { this.m_CarrierVModel = this.carrierModelCreateDic[netType](model, tranceiver); } }
/// <summary> /// relayTrans¹¹Ô캯Êý /// </summary> /// <param name="rn"></param> /// <param name="antCofigExList"></param> public LTETransceiverEX(RelayNode rn, List<AntConfigEx> antCofigExList, Transceiver tran) { //Transceiver tran = new Transceiver(); //tran.ID = id; this.m_Transceiver = tran; foreach (RelayCell cell in rn.RCList) { RelayCellEx item = new RelayCellEx(cell, antCofigExList); this.m_RelayCellExList.Add(item); IACell iaCell = cell; this.m_Transceiver.Cells.Add(iaCell); } this.InitLTETransExBound(antCofigExList); int count = antCofigExList.Count; this.m_AntLinkLoss=new double[count][]; this.m_RatioArr = new double[count]; for (int i = 0; i < count; i++) { this.m_RatioArr[i] = antCofigExList[i].AntConfig.TxPowerRatio; this.m_AntLinkLoss[i] = new double[2]; } }
private void ConfigSubFrames(RelayNode rn) { m_AccessHelper.OpenConnection(); string commandText = "SELECT * FROM SubFrameType"; using (DataTable table = m_AccessHelper.ExecuteDataset(commandText, null)) { for (int i = 0; i < table.Rows.Count; i++) { int j = int.Parse(table.Rows[i]["ID"].ToString()) - 1; rn.SubFrameMatrix[j, 0] = int.Parse(table.Rows[i]["SubFrame_1"].ToString()); rn.SubFrameMatrix[j, 1] = int.Parse(table.Rows[i]["SubFrame_2"].ToString()); rn.SubFrameMatrix[j, 2] = int.Parse(table.Rows[i]["SubFrame_3"].ToString()); rn.SubFrameMatrix[j, 3] = int.Parse(table.Rows[i]["SubFrame_4"].ToString()); rn.SubFrameMatrix[j, 4] = int.Parse(table.Rows[i]["SubFrame_5"].ToString()); rn.SubFrameMatrix[j, 5] = int.Parse(table.Rows[i]["SubFrame_6"].ToString()); rn.SubFrameMatrix[j, 6] = int.Parse(table.Rows[i]["SubFrame_7"].ToString()); rn.SubFrameMatrix[j, 7] = int.Parse(table.Rows[i]["SubFrame_8"].ToString()); rn.SubFrameMatrix[j, 8] = int.Parse(table.Rows[i]["SubFrame_9"].ToString()); rn.SubFrameMatrix[j, 9] = int.Parse(table.Rows[i]["SubFrame_10"].ToString()); } } }
public void SetParent(RelayNode rn) { this.ParentRN = rn; if (!rn.RCList.Contains(this)) { rn.RCList.Add(this); } }
public RelayCell(RelayNode parent) : this() { m_parentRN = parent; m_RCToCellAnt.Latitude = parent.Latitude; m_RCToCellAnt.Longitude = parent.Longitude; m_RCToCellAnt.DX = (float)parent.X; m_RCToCellAnt.DY = (float)parent.Y; }
protected override string GetValue(RelayNode rn) { return string.Empty; }
private void GetRelayNodeList(AlloteAddRelayNodeEventArgs args, List<RelayNode> rnList) { List<string> candidateSiteName = new List<string>(); List<short> candidateSiteID = new List<short>(); List<RelayCell> commitCarrierList = new List<RelayCell>(); foreach (RelayNode rn in m_RNCollection.RNList) { candidateSiteName.Add(rn.Name); } List<double> listX = args.XList; List<double> listY = args.YList; for (int i = 0; i < listX.Count; i++) { double num4; double num5; LTECell parentCell; if (m_Model.LTECellColl.CellList == null || m_Model.LTECellColl.CellList.Count == 0) { return ; } else { List<LTECell> nearestLTECellList = new List<LTECell>(); float distance = float.MaxValue; LTECell nearestLTECell = new LTECell(); foreach (LTECell cell in m_Model.LTECellColl.CellList) { double dic = Math.Pow((cell.Parent.X - listX[i]), 2) + Math.Pow((cell.Parent.Y - listY[i]), 2); if (dic < distance) { distance = (float)dic; nearestLTECell = cell; } } foreach (LTECell cell in m_Model.LTECellColl.CellList) { double dic = Math.Pow((cell.Parent.X - listX[i]), 2) + Math.Pow((cell.Parent.Y - listY[i]), 2); if (Math.Abs(dic - distance) / distance < 0.0001) { nearestLTECellList.Add(cell); } } List<double> angleList = new List<double>(); foreach (LTECell cell in nearestLTECellList) { double rc_Angle = CalcAngle(listX[i] - cell.Parent.X, listY[i] - cell.Parent.Y); double intersectionAngle = Math.Abs(rc_Angle - cell.Parent.AntConfiguration[0].Azimuth); if (intersectionAngle > 180) { intersectionAngle = 360 - intersectionAngle; } angleList.Add(intersectionAngle); } LTECell[] cellArray = new LTECell[angleList.Count]; double[] angleArray = new double[angleList.Count]; for (int j = 0; j < angleList.Count; j++) { cellArray[j] = nearestLTECellList[j]; angleArray[j] = angleList[j]; } Array.Sort(angleArray, cellArray); parentCell = cellArray[0]; } RelayNode rn = new RelayNode(); rn.X = listX[i]; rn.Y = listY[i]; this.m_GeoObserver.TransformXYToBL(listX[i], listY[i], out num4, out num5); rn.Latitude = num4; rn.Longitude = num5; rn.Altitude = this.m_GeoObserver.GetDTM(rn.X, rn.Y);//获得海拔高度 rn.Name = this.GetNewRelayNodeName(candidateSiteName); rn.Active = true; rn.Visible = true; rn.Equipment = this.m_BTSCol.BtsEquipmentList[0]; rn.Parent = parentCell; rn.ID = this.GetNewRelayNodeID(candidateSiteID); parentCell.RNList.Add(rn); candidateSiteName.Add(rn.Name); candidateSiteID.Add(rn.ID); rnList.Add(rn); RelayCell rc = new RelayCell(rn); rc.Name = this.m_RCCollection.GetValidCellName(rn.Name); commitCarrierList.Add(rc); this.m_RCCollection.AddRelayCell("GIS", commitCarrierList, rn); rc.Reception = this.m_ReceptionEquip[0]; rc.CellToUEAnt.OutdoorAntenna = m_Antenna.FindAntennaByName(m_tplRelayCol.TplRC.AntennaName); rc.RCToCellAnt.OutdoorAntenna = m_Antenna.FindAntennaByName(m_tplRelayCol.TplRN.AntennaName); PropModelConfig item = new PropModelConfig(); item.CalcRadius = (int)(m_tplRelayCol.TplRC.MainCalcRidius); item.CalcResolution = (int)(m_tplRelayCol.TplRC.MainModelResolution); item.PropModelID = m_tplRelayCol.TplRC.MainPropagModelID; rc.FreqBand = rc.ParentRN.Parent.FreqBand; rc.ChannelIndex = rc.FreqBand.AvailableChIndexList[0]; rc.PropModels.Clear(); rc.PropModels.Add(item); rc.RelayUEPropModelConfig = rc.PropModels[0]; commitCarrierList.Clear(); } }
//Add by lw 0228 private ICarrierVGridModel GenerateVGridModelRelayCell(CollectionsModel model, RelayNode rn) { ICarrierVGridModel model2 = new CarrierVGridModelRelayCell(model, rn); this.m_FreqBandColl = model.LteFreBandCol; return model2; }
public void ModifyRelayNode(object sender, RelayNode modRelayNode) { List<RelayNode> list = new List<RelayNode>(); list.Add(modRelayNode); this.ModifyRelayNode(sender, list); }
private string SetRelayNodeLabelString(RelayNode rn) { if (this.m_PropLabel == null) { return string.Empty; } StringBuilder builder = new StringBuilder(); Type type = typeof(RelayNode); foreach (string str in this.m_PropLabel.SiteLabelPropList) { PropertyInfo property = type.GetProperty(str); builder.Append(property.GetValue(rn, null)); builder.Append("\n"); } return builder.ToString().Trim(new char[] { '\n' }); }
protected override void Modify(RelayNode modifyRelay) { }
public RelayNodeDesc(CollectionsModel collModel, RelayNode relayNode, GeoInfoObserver geoInfo, List<string> excludeNames) : this(collModel, relayNode, geoInfo) { this.m_newNames = excludeNames; }
public void DeleteRN(object sender, RelayNode rn) { List<RelayNode> list = new List<RelayNode>(); list.Add(rn); this.DeleteRN(sender, list); }
/// <summary> /// 获取relayTrans信息 /// </summary> /// <param name="resolution"></param> /// <param name="transceiverColl"></param> /// <param name="rn"></param> private void GetOneRelayTransInfo(ref List<Transceiver> allTran,float resolution, ref LTETransceiverExCollection transceiverColl, RelayNode rn,short id) { // if (this.m_GeoInfo.GetValueByGeoXYPoint(rn.X, rn.Y, DemDataType.Height) > -32768) { List<AntConfigEx> antExList = new List<AntConfigEx>(); bool flag=false; foreach (IACell cell in rn.RCList) { float maxCalcRadius = this.GetMaxCalcRadius(cell); RelayCell relayCell = (RelayCell)cell; flag |= !float.IsNegativeInfinity(relayCell.DlActualTxPower); if (relayCell.Active & flag) { this.m_AntPoint.X = rn.X + relayCell.CellToUEAnt.DX; this.m_AntPoint.Y = rn.Y + relayCell.CellToUEAnt.DY; this.m_AntLeftTop.X = this.m_AntPoint.X - maxCalcRadius; this.m_AntLeftTop.Y = this.m_AntPoint.Y + maxCalcRadius; this.m_AntRightBottom.X = this.m_AntPoint.X + maxCalcRadius; this.m_AntRightBottom.Y = this.m_AntPoint.Y - maxCalcRadius; if (!(!this.IsAntInCalcZone() || this.IsExistAntEx(relayCell.CellToUEAnt.AntennaID, antExList))) { antExList.Add(this.GetIndexCoodinateOfAnt(relayCell.CellToUEAnt, resolution)); } } } if (antExList.Count > 0) { Transceiver tran = new Transceiver(); tran.ID = id; tran.Name = rn.Name; allTran.Add(tran); LTETransceiverEX item = new LTETransceiverEX(rn, antExList, tran); transceiverColl.LTETransceiverEXList.Add(item); } } }
public void AddRelayNode(object sender, RelayNode newRN) { List<RelayNode> list = new List<RelayNode>(); list.Add(newRN); this.AddRelayNode(sender, list); }
public void SetRelayNodeByTemplate(RelayNode newRN) { newRN.Visible = this.Visible; //Todo属性各值 newRN.RxNumber = this.RxAntennasPorts; newRN.TxNumber = this.TxAntennasPorts; }
//Added by liangwenli 20110307 public static void GetOneRelay(string name, CollectionsModel model) { RNCollection rnColl = model.RNColl; List<int> rnIDList = new List<int>(); RelayNode rnByName = new RelayNode(); if (rnColl.GetRelayNodeByName(name) != null) { rnByName = rnColl.GetRelayNodeByName(name); int iD = rnByName.ID; rnIDList.Add(iD); } ViewNetEntityEventArgs args = new ViewNetEntityEventArgs(null, null, null,rnIDList); INetEntity gisINetEntity = model.GisINetEntity; if (rnIDList.Count > 0) { GeoXYPoint geoXYPoiny = new GeoXYPoint(rnByName.X, rnByName.Y); gisINetEntity.MoveMapTo(geoXYPoiny); gisINetEntity.MapRedraw(); } else { gisINetEntity.MapRedraw(); } }
public static GeoSite GetGeoNESite(RelayNode rn) { GeoSite site2 = new GeoSite(rn.X, rn.Y, rn.Longitude, rn.Latitude); site2.Active = rn.Active; site2.ID = rn.ID; site2.Name = rn.Name; site2.Label = rn.Label; site2.Visible = rn.Visible; site2.IsRelay = true; site2.ParentCell = Huawei.UNet.NE.Interface.LTECell.GetGeoNECell(rn.Parent.Parent); return site2; }
public void CopyFrom(RelayNode rn) { base.Name = rn.Name; base.Comments = rn.Comments; this.Altitude = rn.Altitude; base.Latitude = rn.Latitude; base.Longitude = rn.Longitude; base.Active = rn.Active; base.Selected = rn.Selected; base.Visible = rn.Visible; base.X = rn.X; base.Y = rn.Y; this.Equipment = rn.Equipment; this.RNID = rn.RNID; this.RCList = rn.RCList; this.Parent = rn.Parent; this.RbNum = rn.RbNum; }
public INamedEntity RNToNe(RelayNode rn) { return rn; }