|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
/ F0 j! a% p' ]' s# |& ~
NX二次开发源码分享:最简单的创建PMI Note方法
. K4 j( S: C' @
% k* K; v8 z& F" h, O2 Z2 w+ M[mw_shl_code=c,true]void CreatePmiNote(NXOpen:oint3d &pt)
! u1 {# g6 L% B0 j6 y{) G3 g% C$ b& k2 L; `* H
// ----------------------------------------------
- l; X! x: O/ p8 L7 I( E, w7 Z& A // Menu: PMI->Note...
" }7 |8 ^5 a) R( G+ h // ----------------------------------------------5 q! z" W% x. z$ m% g% M2 V$ S
NXOpen::Session::UndoMarkId markId1;2 y1 A1 z5 E5 R ~5 V
markId1 = m_session->SetUndoMark(NXOpen::Session::MarkVisibilityVisible, "NXOPEN_PMINOTE");& m: _+ b: i4 S- x
6 [. o& ^6 t9 h5 w/ n
NXOpen::Annotations::SimpleDraftingAid *nullNXOpen_Annotations_SimpleDraftingAid(NULL);; \! y8 M2 {, I2 q
NXOpen::Annotations:miNoteBuilder *pmiNoteBuilder1;' {4 e/ r1 p# L0 `9 L! ^2 X2 f
pmiNoteBuilder1 = m_wpart->Annotations()->CreatePmiNoteBuilder(nullNXOpen_Annotations_SimpleDraftingAid);& N$ L+ q! h- B r- X
std::vector<NXOpen::NXString> text1(1);9 v' u9 z6 X1 K" ]
text1[0] = "MI Note";
) [. W" b/ ^* Q' G+ x pmiNoteBuilder1->Text()->TextBlock()->SetText(text1);
. s% q6 V3 w. Z, d pmiNoteBuilder1->SetTextAlignment(NXOpen::Annotations:raftingNoteBuilder::TextAlignBelowTopExtToMax);
$ V2 H3 I) n9 z4 I NXOpen::View *nullNXOpen_View(NULL);
! @7 E; n2 H- o2 l3 W9 f pmiNoteBuilder1->Origin()->Origin()->SetValue(NULL, nullNXOpen_View, pt);' Q/ k2 R4 E, `
pmiNoteBuilder1->Origin()->lane()->SetPlaneMethod(NXOpen::Annotations:laneBuilder:laneMethodTypeModelView);
& c. Y& s- i, X5 E. s9 I" P: j" p% S pmiNoteBuilder1->Origin()->SetInferRelativeToGeometry(true);
: `8 _$ x5 K4 \* h pmiNoteBuilder1->Origin()->SetAnchor(NXOpen::Annotations::OriginBuilder::AlignmentPositionBottomLeft);( j; m0 K7 o! U* B8 O- s4 P# ], y
) F9 u5 @( V; j: N( {8 w9 g( s NXOpen::NXObject *nXObject1 = pmiNoteBuilder1->Commit();
1 F& e) Q: e8 W5 I* p2 {. a pmiNoteBuilder1->Destroy();" T. I$ S4 ?1 P7 f/ x' }# k" \
}[/mw_shl_code]8 Z, t/ S) K( d8 j' r9 _
|
|