Exemple #1
0
        public void Func(string Params)
        {
            U3DViewModel  model  = Globals.mainFrame.views.Where(x => x.baseType == ViewBaseType.D3).FirstOrDefault() as U3DViewModel;
            SetPointEvent _event = new SetPointEvent(UnityEventType.SetPointEvent);

            _event.TunnelPointList = Globals.tunnelPosList2;

            model.ExcuteCommand(JsonConvert.SerializeObject(_event));

            //Project _prj = Globals.project;
            //Domain _constructionDoamin2 = _prj.getDomain("Construction");
            //DGObjects _gprfDGObjects2 = _constructionDoamin2.DGObjectsList.Where(x => x.definition.Type == "TPSI").FirstOrDefault();
            //foreach (DGObject obj in _gprfDGObjects2.objContainer)
            //{
            //    TPSI tpsi = JsonConvert.DeserializeObject<TPSI>(JsonConvert.SerializeObject(obj));
            //    TPSI t = obj as TPSI;
            //    if ((tpsi.TPSI_ZHQJ == null) || (tpsi.TPSI_ZHQJ.Length == 0)) { continue; }
            //    bool _state = tpsi.TPSI_ZGJD == "已完成" ? true : false;
            //    Globals.tunnelPosList2.Add(tpsi.TPSI_ZHQJ.Split('-')[0] + "#" + tpsi.ID.ToString() + "#" + _state.ToString());
            //}
        }
Exemple #2
0
        public void Func(string Params)
        {
            //初始化三维事件
            U3DViewModel  model  = Globals.mainFrame.views.Where(x => x.baseType == ViewBaseType.D3).FirstOrDefault() as U3DViewModel;
            SetPointEvent _event = new SetPointEvent(UnityEventType.SetPointEvent);

            _event.Domain  = "Construction";
            _event.ObjType = "TPZL";
            _event.state   = state;
            state          = !state;
            //获取数据
            Project   _prj = Globals.project;
            Domain    _constructionDoamin2 = _prj.getDomain("Construction");
            DGObjects _gprfDGObjects2      = _constructionDoamin2.DGObjectsList.Where(x => x.definition.Type == "TPZL").FirstOrDefault();

            foreach (DGObject obj in _gprfDGObjects2.objContainer)
            {
                TPZL tpzl = JsonConvert.DeserializeObject <TPZL>(JsonConvert.SerializeObject(obj));
                if ((tpzl.TPZL_ZHQJ == null) || (tpzl.TPZL_ZHQJ.Length == 0))
                {
                    continue;
                }
                _event.TunnelPointList.Add(tpzl.TPZL_ZHQJ.Split('-')[0] + "#" + tpzl.ID.ToString());
                _event.ImageList.Add("Panel_Image");
            }
            model.ExcuteCommand(JsonConvert.SerializeObject(_event));
            //通知对象组改变事件
            Globals.mainFrame.DGObjectsSelectionChangedListener(this, new DGObjectsSelectionChangedEvent()
            {
                newObjs = _gprfDGObjects2
            });

            IMainFrame mainFrame = Globals.mainFrame;
            //获取要添加图元的视图view
            IView2D       _inputView       = (mainFrame.views.Where(x => x.name == "右幅剖面图").FirstOrDefault()) as IView2D;
            List <string> dynamiclayerlist = new List <string>()
            {
                "TPZL"
            };

            _inputView.Opendynamiclayers(dynamiclayerlist, "施工进度");
            iS3Legned legeng_TPZL = new iS3Legned()
            {
                legndTitle    = "图片资料图例",
                iS3SymbolList = new List <iS3Symbol>()
                {
                    new iS3Symbol()
                    {
                        label = "图片资料", symbolType = SymbolType.Icon, refPath = "picicon.png"
                    }
                }
            };

            _inputView.holder.setlegend(legeng_TPZL);
            _inputView.holder.setLegendShow(true);

            _inputView       = (mainFrame.views.Where(x => x.name == "左幅剖面图").FirstOrDefault()) as IView2D;
            dynamiclayerlist = new List <string>()
            {
                "TPZL"
            };
            _inputView.Opendynamiclayers(dynamiclayerlist, "施工进度");
            legeng_TPZL = new iS3Legned()
            {
                legndTitle    = "图片资料图例",
                iS3SymbolList = new List <iS3Symbol>()
                {
                    new iS3Symbol()
                    {
                        label = "图片资料", symbolType = SymbolType.Icon, refPath = "picicon.png"
                    }
                }
            };
            _inputView.holder.setlegend(legeng_TPZL);
            _inputView.holder.setLegendShow(true);
        }
        public void Func(string Params)
        {
            //初始化三维事件
            U3DViewModel  model  = Globals.mainFrame.views.Where(x => x.baseType == ViewBaseType.D3).FirstOrDefault() as U3DViewModel;
            SetPointEvent _event = new SetPointEvent(UnityEventType.SetPointEvent);

            _event.Domain  = "Construction";
            _event.state   = state;
            state          = !state;
            _event.ObjType = "CHAG";
            //获取数据
            Project   _prj = Globals.project;
            Domain    _constructionDoamin2 = _prj.getDomain("Construction");
            DGObjects _gprfDGObjects2      = _constructionDoamin2.DGObjectsList.Where(x => x.definition.Type == "CHAG").FirstOrDefault();

            foreach (DGObject obj in _gprfDGObjects2.objContainer)
            {
                try
                {
                    CHAG chag = JsonConvert.DeserializeObject <CHAG>(JsonConvert.SerializeObject(obj));
                    if ((chag.CHAG_CHAI == null) || (chag.CHAG_CHAI.Length == 0))
                    {
                        continue;
                    }
                    _event.TunnelPointList.Add(chag.CHAG_CHAI.Split('-')[0] + "#" + chag.ID.ToString());
                    int before = findNum(chag.CHAG_PRIM);     //原来的衬砌类型
                    int after  = findNum(chag.CHAG_PRES);
                    if (before == after)
                    {
                        _event.ImageList.Add("Panel_Keep");
                    }
                    if (before > after)
                    {
                        _event.ImageList.Add("Panel_Decrease");
                    }
                    if (before < after)
                    {
                        _event.ImageList.Add("Panel_Increase");
                    }
                }
                catch (Exception ex)
                {
                }
            }
            model.ExcuteCommand(JsonConvert.SerializeObject(_event));
            //通知对象组改变事件
            Globals.mainFrame.DGObjectsSelectionChangedListener(this, new DGObjectsSelectionChangedEvent()
            {
                newObjs = _gprfDGObjects2
            });
            //二维视图改变

            IMainFrame mainFrame = Globals.mainFrame;
            //获取要添加图元的视图view 右幅
            IView2D       _inputView       = (mainFrame.views.Where(x => x.name == "右幅剖面图").FirstOrDefault()) as IView2D;
            List <string> dynamiclayerlist = new List <string>()
            {
                "CHAG"
            };

            _inputView.Opendynamiclayers(dynamiclayerlist, "施工进度");
            iS3Legned legeng_CHAG = new iS3Legned()
            {
                legndTitle    = "施工变更图例",
                iS3SymbolList = new List <iS3Symbol>()
                {
                    new iS3Symbol()
                    {
                        colorName = "HotPink", label = "施工变更", symbolType = SymbolType.Rectangle
                    }
                }
            };

            _inputView.holder.setlegend(legeng_CHAG);
            _inputView.holder.setLegendShow(true);

            //左幅
            _inputView       = (mainFrame.views.Where(x => x.name == "左幅剖面图").FirstOrDefault()) as IView2D;
            dynamiclayerlist = new List <string>()
            {
                "CHAG"
            };
            _inputView.Opendynamiclayers(dynamiclayerlist, "施工进度");
            legeng_CHAG = new iS3Legned()
            {
                legndTitle    = "施工变更图例",
                iS3SymbolList = new List <iS3Symbol>()
                {
                    new iS3Symbol()
                    {
                        colorName = "HotPink", label = "施工变更", symbolType = SymbolType.Rectangle
                    }
                }
            };
            _inputView.holder.setlegend(legeng_CHAG);

            _inputView.holder.setLegendShow(true);
        }