zoukankan      html  css  js  c++  java
  • NX二次开发-NXOpen::Drawings::DrawingSheet Class Reference

     1 NX11+VS2013
     2 
     3 
     4 #include <NXOpen/Section.hxx>
     5 #include <NXOpen/SectionCollection.hxx>
     6 #include <NXOpen/Part.hxx>
     7 #include <NXOpen/PartCollection.hxx>
     8 #include <NXOpen/UI.hxx>
     9 #include <NXOpen/Drawings_DrawingSheet.hxx>
    10 #include <NXOpen/Drawings_DrawingSheetBuilder.hxx>
    11 #include <NXOpen/Drawings_DrawingSheetCollection.hxx>
    12 #include <NXOpen/Drawings_DraftingView.hxx>
    13 #include <NXOpen/Drawings_DraftingViewCollection.hxx>
    14 #include <NXOpen/NXMessageBox.hxx>
    15 
    16 
    17 using namespace NXOpen;
    18 using namespace Drawings;
    19 using namespace std;
    20 
    21 
    22     NXOpen::Session *theSession = NXOpen::Session::GetSession();
    23     NXOpen::Part *workPart(theSession->Parts()->Work());
    24     NXOpen::Part *displayPart(theSession->Parts()->Display());
    25 
    26     //获得当前图纸页
    27     NXOpen::Drawings::DrawingSheet* DrawingSheet = workPart->DrawingSheets()->CurrentDrawingSheet();
    28 
    29     //将此图纸的视图设置为活动草图视图
    30     DrawingSheet->ActivateForSketching();
    31 
    32     //返回边框和区域对象(如果存在)
    33     NXOpen::Drawings::BordersAndZones *DrawingBorder = DrawingSheet->BordersAndZones();
    34 
    35     //获得图纸页上的所有视图
    36     std::vector<NXOpen::Drawings::DraftingView *> DrawingViews = DrawingSheet->GetDraftingViews();
    37     for (int i = 0; i < DrawingViews.size(); i++)
    38     {
    39         //获得视图的tag
    40         tag_t ViewTag = DrawingViews[i]->Tag();
    41 
    42         //打印
    43         char msg[256];
    44         sprintf_s(msg, "%d", ViewTag);
    45         UI::GetUI()->NXMessageBox()->Show("标题", NXMessageBox::DialogTypeWarning, msg);
    46 
    47         //如果定义了工作表区域,则返回工作表的工作表和区域位置或引用
    48         NXString SheetZoneReference = DrawingSheet->GetSheetZoneReference(DrawingViews[i]);
    49         const char* SheetZoneReference1 = SheetZoneReference.GetLocaleText();
    50     }
    51 
    52     //获得图纸比例
    53     double numerator;
    54     double denominator;
    55     DrawingSheet->GetScale(&numerator, &denominator);
    56 
    57     //获得图纸的高度
    58     double DrawingHeight = DrawingSheet->Height();
    59 
    60     //如果此图纸的视图是活动草图视图,则返回true。
    61     bool IsActive = DrawingSheet->IsActiveForSketching();
    62 
    63     //返回图纸页是否过期的状态
    64     bool IsOutOfDate = DrawingSheet->IsOutOfDate();
    65 
    66     //获得图纸的长度
    67     double DrawLength = DrawingSheet->Length();
    68 
    69     //打开图纸页
    70     DrawingSheet->Open();
    71 
    72     //获得图纸页的投影角度
    73     NXOpen::Drawings::DrawingSheet::ProjectionAngleType ProjectionAngle = DrawingSheet->ProjectionAngle();
    74     
    75     //设置图纸的参数
    76     DrawingSheet->SetParameters(200, 200, 1, 1, DrawingSheet::UnitMillimeters, DrawingSheet::ProjectionAngleTypeFirstAngle, DrawingViews);
    77 
    78     //返回属于此图纸的SheetDraftingViewCollection实例
    79     NXOpen::Drawings::SheetDraftingViewCollection* ViewCollection = DrawingSheet->SheetDraftingViews();
    80     
    81     //返回属于此图纸的SheetSectionLineCollection实例
    82     NXOpen::Drawings::SheetSectionLineCollection * LineCollection = DrawingSheet->SheetSectionLines();
    83 
    84     //获得图纸的单位
    85     NXOpen::Drawings::DrawingSheet::Unit DrawingUnit = DrawingSheet->Units();
    86         
    87     //返回表示此图纸的视图
    88     NXOpen::View* MyView = DrawingSheet->View();

  • 相关阅读:
    (一)主动学习概念与技术
    mybatis 分页插件PageHelper 使用方法
    单例模式-Singleton
    解决tomcat启动报 java.lang.IllegalArgumentException: Invalid <url-pattern> login in servlet mapping
    如何在MSDN上获取Win7镜像
    解决 Could not find resource com/baidou/dao/UserMapper.xml
    4、XML 配置
    3、使用Map传参 & 模糊查询
    图解python环境搭建
    2、CRUD
  • 原文地址:https://www.cnblogs.com/nxopen2018/p/11374130.html
Copyright © 2011-2022 走看看