/// <summary> /// 获取特征 /// </summary> /// <param name="pt"></param> /// <param name="type"></param> private CreateElectrodeCAMBuilder GetBuilder(Part pt, ElectrodeTemplate type) { CreateElectrodeCAMBuilder cm = camBd.Find(a => a.Pt.Equals(pt)); if (cm != null) { try { cm.CreateOperationNameModel(type); return(cm); } catch (Exception ex) { ClassItem.Print(pt.Name + "无法加载模板 " + ex.Message); } } else { try { CreateElectrodeCAMBuilder cc = new CreateElectrodeCAMBuilder(pt, model); cc.CreateOperationNameModel(type); return(cc); } catch (Exception ex) { ClassItem.Print(pt.Name + "无法加载模板 " + ex.Message); } } return(null); }
public static void CreateUserOper() { UserSingleton user = UserSingleton.Instance(); if (user.UserSucceed && user.Jurisd.GetCAMJurisd()) { Part workPart = Session.GetSession().Parts.Work; CreateElectrodeCAMBuilder cam = new CreateElectrodeCAMBuilder(workPart, user.CreatorUser); cam.CreateOperationNameModel(ElectrodeTemplate.User); List <string> err = cam.CreateUserOperation(); if (err.Count > 0) { ClassItem.Print(err.ToArray()); } } }
private static List <string> CreateBuider(string partPath) { List <string> err = new List <string>(); Tag ptTag = Tag.Null; UFPart.LoadStatus load; ElectrodeCAMFile file = new ElectrodeCAMFile(); List <string> newPath = file.CopyFile(partPath); try { theUfSession.Part.Open(newPath[0], out ptTag, out load); } catch (NXException ex) { err.Add("打开文件失败! " + ex.Message); return(err); } Part pt = NXObjectManager.Get(ptTag) as Part; string name = pt.Name; if (pt != null) { UserModel user = UserModel.GetAttribute(pt); ElectrodeCAMInfo cam = ElectrodeCAMInfo.GetAttribute(pt); CreateElectrodeCAMBuilder builder = new CreateElectrodeCAMBuilder(pt, user); builder.CreateOperationNameModel(GetTemplate(cam.CamTemplate)); err.AddRange(builder.CreateOperationExe()); builder.SetGenerateToolPath(true); string path = file.GetSaveFilePath(); if (path != null && path != "") { builder.ExportFile(path, false); } else { builder.ExportFile("C:\\temp\\Electrode\\", false); } err.Add("电极" + name + "*************导出成功!"); } return(err); }
/// <summary> /// 套用模板 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void butTemplate_Click(object sender, EventArgs e) { Part pt = FindSelectEle(); if (pt != null) { PartUtils.SetPartDisplay(pt); PartUtils.SetPartWork(null); CreateElectrodeCAMBuilder cc = GetBuilder(pt, GetTemplate()); if (cc != null) { if (cc.Template == null) { cc.CreateOperationNameModel(GetTemplate()); } this.operInfo = new OperationTreeListViewInfo(cc.Template); ShowTreeInfo(this.operInfo.TreeInfo); if (!this.camBd.Exists(a => a.Pt.Equals(pt))) { this.camBd.Add(cc); } } } }