public override void Update(NXOpen.BlockStyler.UIBlock block) { if (block == selection0) { Snap.NX.Component component = selection0.GetSelectedObjects().FirstOrDefault() as NXOpen.Assemblies.Component; var com = component.Parent.Children.FirstOrDefault(u => u.Name == component.Name && u.GetAttributeInfo().Where(m => m.Title == SnapEx.ConstString.EACT_POSITIONING_DATE).Count() <= 0); if (com != null) { selection0.SetSelectedObjects(new TaggedObject[] { com.NXOpenComponent }); UpdateTreeControl(); } } else if (block == button0) //删除按钮 { var node = tree_control0.GetSelectedNodes().FirstOrDefault(); if (node != null) { var index = int.Parse(node.DisplayText) - 1; if (coms.Count > index) { var com = coms[index]; coms.Remove(com); com.Delete(); UpdateTreeControl(); } } } }
public override void Update(NXOpen.BlockStyler.UIBlock block) { if (block == btnNew) //新建 { InitUI(); tree_control0.SelectNodes(tree_control0.GetSelectedNodes(), false, true); } else if (block == btnSave) //保存 { var data = GetProbeData(); if (tree_control0.GetSelectedNodes().Count() > 0) //保存 { tree_control0.GetSelectedNodes().ToList().ForEach(u => { if (CreateProbe(data)) { u.GetNodeData().SetString(_propertyName, Newtonsoft.Json.JsonConvert.SerializeObject(data)); } }); } else //新建 { //检测名称是否重复 foreach (var node in GetNodes()) { if (node.DisplayText == data.ProbeName) { System.Windows.Forms.MessageBox.Show("名字不能重复"); return; } } if (CreateProbe(data)) { tree_control0.SelectNode(AddNode(data), true, true); } } } else if (block == btnDelete) //删除 { tree_control0.GetSelectedNodes().ToList().ForEach(u => { DeleteProbe(GetProbeData(u)); tree_control0.DeleteNode(u); }); InitUI(); } var probeDatas = new List <ProbeData>(); GetNodes().ForEach(u => { probeDatas.Add(GetProbeData(u)); }); File.WriteAllText(_probeDataPath, Newtonsoft.Json.JsonConvert.SerializeObject(probeDatas)); }
public override void Update(NXOpen.BlockStyler.UIBlock block) { if (block.Name == selection0.Name) { Snap.NX.Body body = selection0.SelectedObjects.FirstOrDefault() as Snap.NX.Body; if (!SnapEx.Helper.IsEactElecBody(body) || body.GetAttributeInfo().Where(u => u.Title == EACT_POSITIONING_DATE).Count() > 0) { selection0.SelectedObjects = new List <Snap.NX.NXObject>().ToArray(); } } RefreshUI(); Perform(true); }
public override void Update(NXOpen.BlockStyler.UIBlock block) { if (block == bodySelect0.NXOpenBlock) { var selectedObjs = bodySelect0.SelectedObjects.ToList(); var bodies = new List <Snap.NX.NXObject>(); selectedObjs.ForEach(u => { var body = Snap.NX.Body.Wrap(u.NXOpenTag); if (SnapEx.Helper.IsEactElecBody(body)) { bodies.Add(body); } }); if (selectedObjs.Count != bodies.Count) { bodySelect0.SelectedObjects = bodies.ToArray(); } stringElecName.Show = bodies.Count <= 1; if (bodies.Count == 1) { SetElecName(); } } else if (block == stringElecName.NXOpenBlock) { var body = bodySelect0.SelectedObjects.FirstOrDefault(); if (body != null) { if (GetElecNames().Contains(stringElecName.Value)) { SetElecName(); } } } RefreshUI(); Perform(true); }
public override void Update(NXOpen.BlockStyler.UIBlock block) { RereshUI(); if (block == selectSteel.NXOpenBlock) { var steel = GetSteel(); if (steel != null) { var info = EactBom.EactBomBusiness.Instance.GetMouldInfo(steel); sMODELNUMBER.Value = info.MODEL_NUMBER; sMRNUMBER.Value = info.MR_NUMBER; if (_items.Contains(info.MR_MATERAL)) { _items.Remove(info.MR_MATERAL); _items.Insert(0, info.MR_MATERAL); eMATERAL.Items = _items.ToArray(); //eMATERAL.SelectedIndex = _items.ToList().IndexOf(info.MR_MATERAL); } //默认值 if (string.IsNullOrEmpty(info.MODEL_NUMBER) || string.IsNullOrEmpty(info.MR_NUMBER)) { var tempStrs = System.IO.Path.GetFileNameWithoutExtension(Snap.Globals.WorkPart.FullPath).Split('-').ToList(); if (tempStrs.Count >= 2) { if (string.IsNullOrEmpty(info.MODEL_NUMBER)) { sMODELNUMBER.Value = tempStrs[0]; } if (string.IsNullOrEmpty(info.MR_NUMBER)) { sMRNUMBER.Value = tempStrs[1]; } } } } } }
public override void Update(NXOpen.BlockStyler.UIBlock block) { RereshUI(); if (block == selectSteel.NXOpenBlock) { var steel = GetSteel(); if (steel != null) { var info = EactBom.EactBomBusiness.Instance.GetMouldInfo(steel); sMODELNUMBER.Value = info.MODEL_NUMBER; sMRNUMBER.Value = info.MR_NUMBER; if (_items.Contains(info.MR_MATERAL)) { _items.Remove(info.MR_MATERAL); _items.Insert(0, info.MR_MATERAL); eMATERAL.Items = _items.ToArray(); //eMATERAL.SelectedIndex = _items.ToList().IndexOf(info.MR_MATERAL); } } } }
public override void Update(NXOpen.BlockStyler.UIBlock block) { }
public virtual void Update(NXOpen.BlockStyler.UIBlock block) { }
public override void Update(NXOpen.BlockStyler.UIBlock block) { RefreshUI(); var body = selectCuprum.SelectedObjects.FirstOrDefault() as Snap.NX.Body; if (block == btnAutoSelectPoint.NXOpenBlock) { if (body != null) { AutoSelectPoint(); RefreshUI(); } } else if (block == selectCuprum.NXOpenBlock) { _electrode = null; if (body != null) { var elec = ElecManage.Electrode.GetElectrode(body); if (elec != null) { elec.InitAllFace(); _electrode = elec; } else { selectCuprum.SelectedObjects = new Snap.NX.NXObject[] { }; NXOpen.UF.UFSession.GetUFSession().Ui.DisplayMessage("该电极无法识别", 1); } } } else if (block == toggle0.NXOpenBlock) { UFDisp(); DeleteNodes(); } else if (block == btnDown.NXOpenBlock) { var node = GetSelectNode(); if (node != null) { var list = GetNodes(); var index = list.IndexOf(node) + 1; index = index > list.Count - 1 ? list.Count - 1 : index; list.Remove(node); list.Insert(index, node); UFDisp(GetPointDatasFromTree(list)); } } else if (block == btnUP.NXOpenBlock) { var node = GetSelectNode(); if (node != null) { var list = GetNodes(); var index = list.IndexOf(node) - 1; index = index < 0 ? 0 : index; list.Remove(node); list.Insert(index, node); UFDisp(GetPointDatasFromTree(list)); } } else if (block == btnRemove.NXOpenBlock) { var node = GetSelectNode(); if (node != null) { var pd = GetPointData(node); if (pd != null && pd.PointType == PointType.HeadFace) { var list = GetNodes(); list.Remove(node); UFDisp(GetPointDatasFromTree(list)); theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Information, "删除成功!"); } else { theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Information, "无法删除该点!"); } } } else if (block == selectionPoint.NXOpenBlock) { if (body != null && selectionPoint.SelectedObjects.Count() > 0) { PointData data = null; ComponentHelper(() => { data = CMMBusiness.IsInterveneBySelPoint(_electrode, selectionPoint.PickPoint, _config); }); if (data != null) { var points = GetPointDatasFromTree(); points.Add(data); UFDisp(points); } else { theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Information, "无法取该点,请重新选点!"); } } selectionPoint.SelectedObjects = new Snap.NX.NXObject[] { }; } else if (block == btnExport.NXOpenBlock) { if (body != null) { var list = new List <PointData>(); GetNodes().ForEach(u => { list.Add(Newtonsoft.Json.JsonConvert.DeserializeObject <PointData>(u.GetNodeData().GetString(_propertyName))); }); if (list.Count > 0) { //导出 CMMBusiness.WriteCMMFileByPointData(_electrode, list, _config); NXOpen.UF.UFSession.GetUFSession().Ui.DisplayMessage("导出成功", 1); } } else { //ImportPart( Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "CMM_INSPECTION", enumSelectTool.ValueAsString)); } } }
public override void Update(NXOpen.BlockStyler.UIBlock block) { RefreshUI(); var body = selectCuprum.GetSelectedObjects().FirstOrDefault() as NXOpen.Body; if (block == btnAutoSelectPoint) { AutoSelectPoint(); RefreshUI(); } else if (block == toggle0) { UFDisp(); DeleteNodes(); } else if (block == btnDown) { var node = GetSelectNode(); if (node != null) { var list = GetNodes(); var index = list.IndexOf(node) + 1; index = index > list.Count - 1 ? list.Count - 1 : index; list.Remove(node); list.Insert(index, node); UFDisp(GetPointDatasFromTree(list)); } } else if (block == btnUP) { var node = GetSelectNode(); if (node != null) { var list = GetNodes(); var index = list.IndexOf(node) - 1; index = index < 0 ? 0 : index; list.Remove(node); list.Insert(index, node); UFDisp(GetPointDatasFromTree(list)); } } else if (block == btnRemove) { var node = GetSelectNode(); if (node != null) { var pd = GetPointData(node); if (pd != null && pd.PointType == PointType.HeadFace) { var list = GetNodes(); list.Remove(node); UFDisp(GetPointDatasFromTree(list)); theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Information, "删除成功!"); } else { theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Information, "无法删除该点!"); } } } else if (block == selectionPoint) { if (body != null && selectionPoint.GetSelectedObjects().Count() > 0) { PointData data = null; ComponentHelper((probeData) => { data = new Electrode(body).IsIntervene(selectionPoint.PickPoint, probeData); }, enumSelectTool.ValueAsString); if (data != null && data.PointType == PointType.HeadFace) { var points = GetPointDatasFromTree(); points.Add(data); UFDisp(points); } else { theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Information, "无法取该点,请重新选点!"); } } selectionPoint.SetSelectedObjects(new NXOpen.TaggedObject[] { }); } else if (block == btnExport) { if (body != null) { var list = new List <PointData>(); GetNodes().ForEach(u => { list.Add(Newtonsoft.Json.JsonConvert.DeserializeObject <PointData>(u.GetNodeData().GetString(_propertyName))); }); if (list.Count > 0) { //导出 var info = new Electrode(body).GetPointInfo(list); var infoStr = Newtonsoft.Json.JsonConvert.SerializeObject(info); File.WriteAllText(@"D:\GetPointInfo.txt", infoStr); } } else { ImportPart(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "CMM_INSPECTION", enumSelectTool.ValueAsString)); } } }
public override void Update(NXOpen.BlockStyler.UIBlock block) { if (block == selectCuprum.NXOpenBlock) { var cuprums = Enumerable.Select(selectCuprum.SelectedObjects, u => Snap.NX.Body.Wrap(u.NXOpenTag)).ToList(); var unNameC = cuprums.Where(u => string.IsNullOrEmpty(u.Name)).ToList(); var nameC = cuprums.Where(u => !string.IsNullOrEmpty(u.Name)).ToList(); groupSElec.Show = false; var groupSElecShow = false; if (nameC.Count == 1) { var body = nameC.First(); var info = GetElecInfo(body); groupSElecShow = info == null || info.IsSpecialShapeElec == "1"; if (info == null) { info = new ElecManage.EactElectrodeInfo(body); } if (_configData.Edition == 1) { if ((info.KL_SIZE_HEIGHT == 0 || info.KL_SIZE_LEN == 0 || info.KL_SIZE_WIDTH == 0)) { theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Error, "该电极未设置开料尺寸!"); selectCuprum.SelectedObjects = new Snap.NX.NXObject[] { }; return; } if (string.IsNullOrEmpty(info.ELEC_CLAMP_GENERAL_TYPE)) { theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Error, "该电极未设置夹具!"); selectCuprum.SelectedObjects = new Snap.NX.NXObject[] { }; return; } } SetDefaultValue(info); Action <bool> action = (b) => { groupSElec.Show = b; if (b) { theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Information, "异形电极,请设置相关参数!"); SetEactElec(body); } }; if (SpecialshapedElec) { action(groupSElecShow); } } else if (SpecialshapedElec && unNameC.Count > 0) { theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Information, "电极名称不能为空"); selectCuprum.SelectedObjects = cuprums.Where(u => !string.IsNullOrEmpty(u.Name)).ToArray(); } else if (SpecialshapedElec && nameC.Count > 1) { var lstMsg = new List <string>(); var tempNameC = nameC.Where(u => !_elecNameLst.Contains(u.Name)); foreach (var item in tempNameC.GroupBy(u => u.Name)) { var body = item.First(); var info = GetElecInfo(body); if (info == null) { lstMsg.Add(string.Format("{0}:{1}", body.Name, "异形电极")); selectCuprum.SelectedObjects = cuprums.Where(u => u.Name != body.Name).ToArray(); } } if (lstMsg.Count > 0) { Snap.InfoWindow.Clear(); lstMsg.ForEach(u => { Snap.InfoWindow.WriteLine(u); }); } } if (_isAllowMultiple) { if (nameC.Count > 1) { strElecName.Show = false; } else { strElecName.Show = true; } if (cuprums.Count != 1) { selectCuprum.AllowMultiple = true; if (unNameC.Count > 0) { theUI.NXMessageBox.Show("提示", NXOpen.NXMessageBox.DialogType.Information, "电极名称不能为空"); selectCuprum.SelectedObjects = cuprums.Where(u => !string.IsNullOrEmpty(u.Name)).ToArray(); } } else { if (string.IsNullOrEmpty(cuprums.First().Name)) { selectCuprum.AllowMultiple = false; } else if (groupSElecShow) { selectCuprum.AllowMultiple = false; } else { selectCuprum.AllowMultiple = true; } } } strElecSize.Show = strElecName.Show; strElecCuttingSize.Show = strElecName.Show; } else if (block == cbbChuckType.NXOpenBlock || block == selectBaseFace.NXOpenBlock //|| block == selectBaseFacePointEx.NXOpenBlock || block == selectTopFace.NXOpenBlock ) { var cuprums = Enumerable.Select(selectCuprum.SelectedObjects, u => Snap.NX.Body.Wrap(u.NXOpenTag)).ToList(); if (cuprums.Count == 1) { var info = GetElecInfo(cuprums.First()); if (info != null) { strElecSize.Value = info.ElecSize; strElecCuttingSize.Value = info.ElecCuttingSize(_configData, EactConfig.MatchJiaju.GetMatchJiajuValue(_configData, cbbChuckType.SelectedIndex)); } else if (groupSElec.Show) //异形电极 { var tempInfo = new ElecManage.ElectrodeInfo(cuprums.First()); var tempFaceDir = -Snap.Orientation.Identity.AxisZ; var baseFace = selectBaseFace.SelectedObjects.FirstOrDefault() as Snap.NX.Face; if (baseFace != null) { tempFaceDir = -baseFace.GetFaceDirection(); } var tempOri = new Snap.Orientation(tempFaceDir); strElecSize.Value = tempInfo.GetElecSize(tempOri); strElecCuttingSize.Value = tempInfo.ElecCuttingSize(_configData, EactConfig.MatchJiaju.GetMatchJiajuValue(_configData, cbbChuckType.SelectedIndex), tempOri); } else { strElecSize.Value = string.Empty; strElecCuttingSize.Value = string.Empty; } } } else if (block == selectBaseFace.NXOpenBlock || block == selectBaseFacePointEx.NXOpenBlock || block == selectTopFace.NXOpenBlock ) { //var cuprums = Enumerable.Select(selectCuprum.SelectedObjects, u => Snap.NX.Body.Wrap(u.NXOpenTag)).ToList(); //if (cuprums.Count == 1) //{ // var basePoint = Enumerable.Select(selectBaseFacePoint.SelectedObjects, u => Snap.NX.Point.Wrap(u.NXOpenTag)).FirstOrDefault(); // var baseFace = Enumerable.Select(selectBaseFace.SelectedObjects, u => Snap.NX.Face.Wrap(u.NXOpenTag)).FirstOrDefault(); // var topFace = Enumerable.Select(selectTopFace.SelectedObjects, u => Snap.NX.Face.Wrap(u.NXOpenTag)).FirstOrDefault(); // SetEactElec(cuprums.FirstOrDefault(),baseFace,topFace, basePoint); //} } }
public override void Update(NXOpen.BlockStyler.UIBlock block) { DialogShown(); }