///<summary>选中对象</summary> void scene_EditObjectSelected(object sender, Earth.PickEventArgs e) { if (isTopoBrowser) //拓扑浏览模式 { handleTopoBrowsePickedObject(e.pickedObject); } else //编辑模式 { #region 编辑模式 if (e.pickedObject == editobj) { return; } elayer.pModels.Clear(); if (e.pickedObject is EDDot) //选中的控制点, 服务于线段和区域 { assobj = e.pickedObject as EDDot; btnDelDot.Visibility = btnAddDot.Visibility = System.Windows.Visibility.Visible; } else { editobj = e.pickedObject; isNewObject = false; pgAcnt.SelectedObject = editobj.busiAccount; //btnCreate.IsEnabled = false; btnDelete.IsEnabled = true; //btnSave.IsEnabled = isModify = false; //btnExit.IsEnabled = true; if (editobj is pPowerLine) //选中的线段 { pPowerLine lin = editobj as pPowerLine; int idx = 0; foreach (Point pnt in lin.points) { EDDot dot = new EDDot(elayer) { id = MyClassLibrary.helper.getGUID(), location = pnt.ToString(), }; dot.order = idx; dot.scaleX = dot.scaleY = dot.scaleZ = distnet.UnitMeasure * 5; dot.symbolid = "小圆圈"; dot.isUseXModel = false; elayer.AddObject(dot); idx++; } } else if (editobj is pArea) //选中的区域 { pArea lin = editobj as pArea; int idx = 0; foreach (Point pnt in lin.points) //zh注,应改写为原始坐标点集 { EDDot dot = new EDDot(elayer) { id = MyClassLibrary.helper.getGUID(), location = pnt.ToString(), }; dot.order = idx; dot.scaleX = dot.scaleY = dot.scaleZ = distnet.UnitMeasure * 5; elayer.AddObject(dot); idx++; } } distnet.scene.UpdateModel(); oldID = editobj.id; } #endregion } //if (editobj == null) //{ // editobj = e.pickedObject; // isNewObject = false; // pgAcnt.SelectedObject = editobj.busiAccount; // btnCreate.IsEnabled = false; // btnDelete.IsEnabled = true; // btnSave.IsEnabled = isModify = false; // btnExit.IsEnabled = true; // if (editobj is pPowerLine) //选中的线段 // { // pPowerLine lin = editobj as pPowerLine; // int idx = 0; // foreach (Point pnt in lin.points) // { // EDDot dot = new EDDot(elayer) // { // id=MyClassLibrary.helper.getGUID(), // location=pnt.ToString(), // }; // dot.order = idx; // dot.scaleX = dot.scaleY = dot.scaleZ = distnet.UnitMeasure*5; // elayer.AddObject(dot); // idx++; // } // distnet.scene.UpdateModel(); // } // else if (editobj is pArea) //选中的区域 // { // pArea lin = editobj as pArea; // int idx = 0; // foreach (Point pnt in lin.points) //zh注,应改写为原始坐标点集 // { // EDDot dot = new EDDot(elayer) // { // id = MyClassLibrary.helper.getGUID(), // location = pnt.ToString(), // }; // dot.order = idx; // dot.scaleX = dot.scaleY = dot.scaleZ = distnet.UnitMeasure * 5; // elayer.AddObject(dot); // idx++; // } // distnet.scene.UpdateModel(); // } // oldID = editobj.id; //} //else if (e.pickedObject is EDDot) //选中的控制点, 服务于线段和区域 //{ // assobj = e.pickedObject as EDDot; // btnDelDot.Visibility = btnAddDot.Visibility = System.Windows.Visibility.Visible; //} }
public RunDataCableSeg(PowerBasicObject Parent) : base(Parent) { }
public RunDataRechange(PowerBasicObject Parent) : base(Parent) { }
public TopoData(PowerBasicObject Parent) { parent = Parent; }
public RunDataGridArea(PowerBasicObject Parent) : base(Parent) { }
public RunDataBiomassPlant(PowerBasicObject Parent) : base(Parent) { }
public RunDataColumnTransformer(PowerBasicObject Parent) : base(Parent) { }
public RunDataStrainSupport(PowerBasicObject Parent) : base(Parent) { }
public RunDataMainTransformer3W(PowerBasicObject Parent) : base(Parent) { }
public RunDataDistTransformer(PowerBasicObject Parent) : base(Parent) { }
public RunDataSubstationOutline(PowerBasicObject Parent) : base(Parent) { }
public RunDataTransformFacilityBase(PowerBasicObject Parent) : base(Parent) { }
public RunDataConnectivityNode(PowerBasicObject Parent) : base(Parent) { }
public RunDataIntermediateSupport(PowerBasicObject Parent) : base(Parent) { }
public RunDataSwitchBase(PowerBasicObject Parent) : base(Parent) { }
public RunDataBase(PowerBasicObject Parent) { parent = Parent; }
public RunDataLoadSwitch(PowerBasicObject Parent) : base(Parent) { }
public RunDataRegion(PowerBasicObject Parent) : base(Parent) { }
public RunDataBreaker(PowerBasicObject Parent) : base(Parent) { }
public RunDataPVPlant(PowerBasicObject Parent) : base(Parent) { }
public RunDataFuse(PowerBasicObject Parent) : base(Parent) { }
public RunDataCustomer(PowerBasicObject Parent) : base(Parent) { }
public RunDataBusBar(PowerBasicObject Parent) : base(Parent) { }
public RunDataPowerBase(PowerBasicObject Parent) : base(Parent) { lstApparentPower = new System.ComponentModel.BindingList <MyClassLibrary.DevShare.ChartDataPoint>(); }
public RunDataStoredEnergy(PowerBasicObject Parent) : base(Parent) { }
///<summary>创建新对象</summary> private void btnCreate_Click(object sender, RoutedEventArgs e) { if (tree.SelectedItem != null) { DNDesc dnd = tree.SelectedItem as DNDesc; //处理对象的层 pLayer nlayer = distnet.addLayer(dnd.sort); PowerBasicObject obj = dnd.CreateByType(nlayer); obj.id = MyClassLibrary.helper.getGUID(); obj.name = "新对象"; //Point? pnttmp = distnet.scene.camera.getScreenCenterGeo(); Point?pnttmp = distnet.scene.camera.getScreenCenter(); if (pnttmp != null) { Point pnt = (Point)pnttmp; if (obj is pSymbolObject) //新增的图元 { (obj as pSymbolObject).location = pnt.ToString(); PowerBasicObject refobj = distnet.findFirstObj(obj.GetType()); if (refobj != null) { (obj as pSymbolObject).scaleX = (refobj as pSymbolObject).scaleX; (obj as pSymbolObject).scaleY = (refobj as pSymbolObject).scaleY; (obj as pSymbolObject).scaleZ = (refobj as pSymbolObject).scaleZ; (obj as pSymbolObject).color = (refobj as pSymbolObject).color; (obj as pSymbolObject).isH = true; } obj.DBOPKey = dnd.dbopkey; obj.createAcntData(); (obj.busiAccount as AcntDataBase).id = obj.id; (obj.busiAccount as AcntDataBase).name = obj.name; nlayer.AddObject(obj); //(obj as pSymbolObject).aniTwinkle.doCount = 10; //(obj as pSymbolObject).aniTwinkle.isDoAni = true; //(obj as pSymbolObject).AnimationBegin(pSymbolObject.EAnimationType.闪烁); distnet.scene.UpdateModel(); } else if (obj is pPowerLine) //新增的线路 { if (distnet.scene.coordinateManager.Enable) //启用了坐标转换 { (obj as pPowerLine).strPoints = String.Format("{0} {1}", pnt, new Point(pnt.X - 50, pnt.Y - 50)); } else //缺省的经纬坐标 { (obj as pPowerLine).strPoints = String.Format("{0} {1}", pnt, new Point(pnt.X - 0.005, pnt.Y - 0.005)); } PowerBasicObject refobj = distnet.findFirstObj(obj.GetType()); if (refobj != null) { (obj as pPowerLine).thickness = (refobj as pPowerLine).thickness; (obj as pPowerLine).color = (refobj as pPowerLine).color; (obj as pPowerLine).arrowColor = (refobj as pPowerLine).arrowColor; (obj as pPowerLine).arrowSize = (refobj as pPowerLine).arrowSize; } else { (obj as pPowerLine).thickness = 0.1f; (obj as pPowerLine).color = Colors.Red;; (obj as pPowerLine).arrowColor = Colors.Blue; (obj as pPowerLine).arrowSize = 0.2f; } obj.DBOPKey = dnd.dbopkey; obj.createAcntData(); (obj.busiAccount as AcntDataBase).id = obj.id; (obj.busiAccount as AcntDataBase).name = obj.name; nlayer.AddObject(obj); //(obj as pSymbolObject).aniTwinkle.doCount = 10; //(obj as pSymbolObject).aniTwinkle.isDoAni = true; //(obj as pSymbolObject).AnimationBegin(pSymbolObject.EAnimationType.闪烁); distnet.scene.UpdateModel(); } else if (obj is pArea) //新增的区域 { (obj as pArea).strPoints = String.Format("{0} {1} {2}", pnt, new Point(pnt.X - 0.005, pnt.Y - 0.005), new Point(pnt.X, pnt.Y - 0.005)); PowerBasicObject refobj = distnet.findFirstObj(obj.GetType()); if (refobj != null) { (obj as pArea).color = (refobj as pArea).color; } obj.DBOPKey = dnd.dbopkey; obj.createAcntData(); (obj.busiAccount as AcntDataBase).id = obj.id; (obj.busiAccount as AcntDataBase).name = obj.name; nlayer.AddObject(obj); //(obj as pSymbolObject).aniTwinkle.doCount = 10; //(obj as pSymbolObject).aniTwinkle.isDoAni = true; //(obj as pSymbolObject).AnimationBegin(pSymbolObject.EAnimationType.闪烁); distnet.scene.UpdateModel(); } else { return; //提前返回 } // 置界面 editobj = obj; obj.modifyStatus = EModifyStatus.新增; obj.color = Colors.White; isNewObject = true; pgAcnt.SelectedObject = editobj.busiAccount; //btnCreate.IsEnabled = false; btnDelete.IsEnabled = true; btnSave.IsEnabled = isModify = true; //btnExit.IsEnabled = true; } } }
public RunDataDividing(PowerBasicObject Parent) : base(Parent) { }
//public busiBase(){} public busiBase(PowerBasicObject Parent) { parent = Parent; }
public RunDataACLine(PowerBasicObject Parent) : base(Parent) { }