cloudflight
2024-08-05 46f88867a2d3561a701535bcc6c41d0f76634b52
WinFrmUI/Yw.WinFrmUI.Hydro.Q3d.Core/Map/Map.cs
@@ -45,9 +45,9 @@
        public Map()
        {
            InitializeComponent();
            this.DoubleBuffered = true;
            MapCenter = PointF.Empty;
            zoom = 1.0f;
@@ -84,60 +84,60 @@
            this.Status = DrawingStatus.Ready;
            TContainer TCCube = new TContainer();
            TCCube.settings = new Settings();
            TCCube.settings.network = new MapViewNetWork();
            TCCube.settings.network.Areas = new List<AreaViewModel>();
            Cube cb = new Cube();
            foreach (var item in cb.FacesVertices)
            {
                AreaViewModel area = new AreaViewModel();
                area.ID = item.Key.ToString();
                area.InnerNodes = new List<NodeViewModel>();
                //area.Name= item.Key.ToString();
            //TContainer TCCube = new TContainer();
            //TCCube.settings = new Settings();
            //TCCube.settings.network = new MapViewNetWork();
            //TCCube.settings.network.Areas = new List<AreaViewModel>();
            //Cube cb = new Cube();
            //foreach (var item in cb.FacesVertices)
            //{
            //    AreaViewModel area = new AreaViewModel();
            //    area.ID = item.Key.ToString();
            //    area.InnerNodes = new List<NodeViewModel>();
            //    //area.Name= item.Key.ToString();
                //6个面设置不一样的颜色
                switch (item.Key)
                {
                    case 1:
                        area.color = Color.Red;
                        area.Name = "右";
                        break;
                    case 2:
                        area.color = Color.SkyBlue;
                        area.Name = "左";
                        break;
                    case 3:
                        area.color = Color.Green;
                        area.Name = "后";
                        break;
                    case 4:
                        area.color = Color.DarkBlue;
                        area.Name = "前";
                        break;
                    case 5:
                        area.color = Color.Purple;
                        area.Name = "上";
                        break;
                    case 6:
                        area.color = Color.Orange;
                        area.Name = "下";
                        break;
                    default:
                        area.color = Color.White;
                        break;
                }
            //    //6个面设置不一样的颜色
            //    switch (item.Key)
            //    {
            //        case 1:
            //            area.color = Color.Red;
            //            area.Name = "右";
            //            break;
            //        case 2:
            //            area.color = Color.SkyBlue;
            //            area.Name = "左";
            //            break;
            //        case 3:
            //            area.color = Color.Green;
            //            area.Name = "后";
            //            break;
            //        case 4:
            //            area.color = Color.DarkBlue;
            //            area.Name = "前";
            //            break;
            //        case 5:
            //            area.color = Color.Purple;
            //            area.Name = "上";
            //            break;
            //        case 6:
            //            area.color = Color.Orange;
            //            area.Name = "下";
            //            break;
            //        default:
            //            area.color = Color.White;
            //            break;
            //    }
                foreach (var p in item.Value)
                {
                    NodeViewModel node = new NodeViewModel();
                    node.X = p.X;
                    node.Y = p.Y;
                    node.Z = p.Z;
                    area.InnerNodes.Add(node);
                }
                TCCube.settings.network.Areas.Add(area);
            }
            //    foreach (var p in item.Value)
            //    {
            //        NodeViewModel node = new NodeViewModel();
            //        node.X = p.X;
            //        node.Y = p.Y;
            //        node.Z = p.Z;
            //        area.InnerNodes.Add(node);
            //    }
            //    TCCube.settings.network.Areas.Add(area);
            //}
          
        }
@@ -1482,16 +1482,16 @@
                }
                else if (isdoubleClick)
                {
                    _select_junction2 = _Network.AddJunction(p, z);
                    _select_junction2 = Network.AddJunction(p, z);
                    l.Add(_select_junction2);
                }
                if (_mouseState == MouseState.新增管线 || _mouseState == MouseState.新增立管)
                    l.Add(_Network.AddPipe(_select_junction1, _select_junction2));
                    l.Add(Network.AddPipe(_select_junction1, _select_junction2));
                else if (_mouseState == MouseState.新建阀门)
                    l.Add(_Network.AddValve(_select_junction1, _select_junction2));
                    l.Add(Network.AddValve(_select_junction1, _select_junction2));
                else if (_mouseState == MouseState.新建水泵)
                    l.Add(_Network.AddPump(_select_junction1, _select_junction2));
                    l.Add(Network.AddPump(_select_junction1, _select_junction2));
                _select_junction1 = null;
                _select_junction2 = null;
@@ -1711,7 +1711,7 @@
                switch (toolItem.Text)
                {
                    case "水表":
                        junc = _Network.AddMeter(obj.Position);
                        junc = Network.AddMeter(obj.Position);
                        i = 0;
                        ID = $"{Default.GetPreString(junc)}{i}";
                        while (_Nodes.Find(p0 => p0.ID == ID) != null)
@@ -1723,7 +1723,7 @@
                        break;
                    case "基本节点":
                        junc = _Network.AddJunction(obj.Position, obj.Z);
                        junc = Network.AddJunction(obj.Position, obj.Z);
                        i = 0;
                        ID = $"{Default.GetPreString(junc)}{i}";
                        while (_Nodes.Find(p0 => p0.ID == ID) != null)
@@ -1734,7 +1734,7 @@
                        junc.ID = ID;
                        break;
                    case "水库":
                        junc = _Network.AddReservoir(obj.Position);
                        junc = Network.AddReservoir(obj.Position);
                        i = 0;
                        ID = $"{Default.GetPreString(junc)}{i}";
                        while (_Nodes.Find(p0 => p0.ID == ID) != null)
@@ -1745,7 +1745,7 @@
                        junc.ID = ID;
                        break;
                    case "水池":
                        junc = _Network.AddTank(obj.Position);
                        junc = Network.AddTank(obj.Position);
                        i = 0;
                        ID = $"{Default.GetPreString(junc)}{i}";
                        while (_Nodes.Find(p0 => p0.ID == ID) != null)
@@ -1793,8 +1793,8 @@
        private void DeleteChoosedObj()
        {
            var list = _Network.Remove(selectedObjs);
            MapObjectExtensions.AddCommand(_Network, "Remove", null, list);
            var list = Network.Remove(selectedObjs);
            MapObjectExtensions.AddCommand(Network, "Remove", null, list);
            selectedObjs.Clear();
            SetMapInvalidate();
        }