NX二次开发-NXOPEN获取所有工程图和所有视图DrawingSheet,DrawingSheetCollection,DraftingView

Posted 阿飞的技术博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NX二次开发-NXOPEN获取所有工程图和所有视图DrawingSheet,DrawingSheetCollection,DraftingView相关的知识,希望对你有一定的参考价值。

 1 NX11+VS2013
 2 
 3 #include <NXOpen/Part.hxx>
 4 #include <NXOpen/PartCollection.hxx>
 5 #include <NXOpen/Session.hxx>
 6 #include <NXOpen/ListingWindow.hxx>
 7 #include <NXOpen/NXMessageBox.hxx>
 8 #include <NXOpen/Drawings_DrawingSheet.hxx>
 9 #include <NXOpen/Drawings_DrawingSheetBuilder.hxx>
10 #include <NXOpen/Drawings_DrawingSheetCollection.hxx>
11 #include <NXOpen/Drawings_DrawingView.hxx>
12 #include <NXOpen/Drawings_DrawingViewBuilder.hxx>
13 #include <NXOpen/NXString.hxx>
14 
15 
16     Session *theSession = NXOpen::Session::GetSession();
17     Part *workPart(theSession->Parts()->Work());
18 
19     //迭代器遍历所有图纸页
20     vector<NXOpen::Drawings::DrawingSheet*> AllSheet;
21     NXOpen::Drawings::DrawingSheet* MySheet;
22     NXOpen::Drawings::DrawingSheetCollection::iterator Ite;//定义迭代器
23     for (Ite = workPart->DrawingSheets()->begin(); Ite != workPart->DrawingSheets()->end(); ++Ite)
24     {
25         MySheet = (*Ite);//赋值
26         AllSheet.push_back(MySheet);
27     }
28 
29     //获得图纸页里的所有视图
30     vector<NXOpen::Drawings::DraftingView*> AllSheetView;
31     for (int i = 0; i < AllSheet.size(); i++)
32     {
33         vector<NXOpen::Drawings::DraftingView*> MySheetView = AllSheet[i]->GetDraftingViews();
34 
35         for (int j = 0; j < MySheetView.size(); j++)
36         {
37             //获取视图名字
38             NXString ViewName = MySheetView[j]->Name();
39             AllSheetView.push_back(MySheetView[j]);
40 
41             //打印
42             theSession->ListingWindow()->Open();
43             theSession->ListingWindow()->WriteLine(ViewName.GetLocaleText());
44         }
45     }
46 
47 Caesar卢尚宇
48 2019年11月17日

以上是关于NX二次开发-NXOPEN获取所有工程图和所有视图DrawingSheet,DrawingSheetCollection,DraftingView的主要内容,如果未能解决你的问题,请参考以下文章

NX二次开发-NXOPEN自动切换到工程图模块

NX二次开发-NXOPEN将工程图转成PDF文件

NX二次开发-NXOPEN工程图导出CAD图纸DxfdwgCreator *dxfdwgCreator1;

NX二次开发-UFUN工程图表格注释获取某一行的tag函数UF_TABNOT_ask_nth_row

NX二次开发-NXOPEN创建工程图表格Annotations::TableSectionBuilder *tableSectionBuilder1;

NX二次开发-NXOpen获取边的端点NXOpen::Edge::GetVertices