//생성자 함수 //Assem에 어떤 Part들이 있는지 Listup public AssemblyPartManager(string filePath) { InitializeComponent(); AssemblyManager.InitializeTransCAD((int)1); //TransCAD초기화 부분(mod = 1 :Post, mod = 0 : Pre) fullpath = filePath; path = filePath.Substring(0, filePath.LastIndexOf('\\')); this.label1.Text = path; if (AssemblyManager.tAssemDoc == null) { this.label1.Text = "NULL"; return; } _tAssem = AssemblyManager.tAssemDoc.Assem; TransCAD.Component comp = _tAssem.Component[0]; //Part들을 넣을 path 및 폴더 생성 path = path + "\\" + comp.Name; if (!System.IO.Directory.Exists(path)) { System.IO.Directory.CreateDirectory(path); } TransCAD.Part parts; ListViewItem lvi; ListViewItem.ListViewSubItem lvsi; for (int i = 1; i < comp.PartCount; i++) { parts = comp.Part[i]; lvi = new ListViewItem(); lvi.Text = parts.Name; lvsi = new ListViewItem.ListViewSubItem(); lvsi.Text = "None"; lvi.SubItems.Add(lvsi); lvsi = new ListViewItem.ListViewSubItem(); lvsi.Text = "None"; lvi.SubItems.Add(lvsi); this.listView1.Items.Add(lvi); } this.listView1.EndUpdate(); Updatelist(); }
//Click "Translate Parts by CATPart" //List에서 선택되지 않은 파트 파일을 API를 이용하여 .CATPart로 변환 private void button2_Click(object sender, EventArgs e) { AssemblyManager.InitializeCATIA(fullpath, (int)1);//API를 사용하기 위해 CATIA변수 초기화 for (int i = 0; i < this.listView1.Items.Count; i++) { if (this.listView1.Items[i].Checked == false) { //Part 변환 하기~ string curr_filepath = path + "\\" + this.listView1.Items[i].Text + ".CATPart"; TransCAD.Component comp = _tAssem.Component[0]; TransCAD.Part parts = comp.Part[i + 1]; AssemblyManager.TranslatePartsT2C(curr_filepath, i, parts); } } Updatelist(); MessageBox.Show("Finish"); }