|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
* D' [+ Y& i0 _/ }
NX二次开发源码分享:最简单的创建PMI Note方法+ F" H: z8 k; s, [: a) n
9 k' K: ~; n# b9 u[mw_shl_code=c,true]void CreatePmiNote(NXOpen: oint3d &pt); k% z1 ?+ C) @# _, `4 }
{
+ k+ i& W% `1 J( U1 S$ d) l // ----------------------------------------------
. k: p( [7 C$ W8 x // Menu: PMI->Note...3 ?: `1 L' k9 o
// ----------------------------------------------
1 k" a/ _7 {3 ] NXOpen::Session::UndoMarkId markId1;- h! O1 {9 K! D4 V( {' m; ~
markId1 = m_session->SetUndoMark(NXOpen::Session::MarkVisibilityVisible, "NXOPEN_PMINOTE");
/ j# S/ F8 V0 n/ P! [4 ]) t7 l" Z0 T5 i. Y( d- }
NXOpen::Annotations::SimpleDraftingAid *nullNXOpen_Annotations_SimpleDraftingAid(NULL);
5 h% }3 j" K8 t- {% D% _ NXOpen::Annotations: miNoteBuilder *pmiNoteBuilder1;0 ~9 _3 d3 A8 C
pmiNoteBuilder1 = m_wpart->Annotations()->CreatePmiNoteBuilder(nullNXOpen_Annotations_SimpleDraftingAid);( k0 s* J0 B0 {, h* C5 I7 \
std::vector<NXOpen::NXString> text1(1);
$ _8 O7 U; \3 a$ J# Q9 M7 D! Z text1[0] = " MI Note";
/ Z& a. @( @6 a9 ? pmiNoteBuilder1->Text()->TextBlock()->SetText(text1);: d# _: E( l$ b7 `& r
pmiNoteBuilder1->SetTextAlignment(NXOpen::Annotations: raftingNoteBuilder::TextAlignBelowTopExtToMax);; \! r0 T$ ~- i. I7 t# D2 b
NXOpen::View *nullNXOpen_View(NULL);3 b/ V3 i' A' { t! z9 Z
pmiNoteBuilder1->Origin()->Origin()->SetValue(NULL, nullNXOpen_View, pt);+ O, G q' [! f; M8 v( g" C
pmiNoteBuilder1->Origin()-> lane()->SetPlaneMethod(NXOpen::Annotations: laneBuilder: laneMethodTypeModelView);6 M! B' a! R% E. q
pmiNoteBuilder1->Origin()->SetInferRelativeToGeometry(true);
1 ?2 T4 d) h r% C d9 S8 ]4 Y& @ pmiNoteBuilder1->Origin()->SetAnchor(NXOpen::Annotations::OriginBuilder::AlignmentPositionBottomLeft);7 B& }8 a1 O o" s) a( |/ ]
# @3 L% S1 q- }9 ?( ]" C) i1 {
NXOpen::NXObject *nXObject1 = pmiNoteBuilder1->Commit();" H4 b, D- f1 }6 {8 d$ ~, W: x
pmiNoteBuilder1->Destroy();
3 A' ~3 U/ E9 U3 ^9 h" f6 G}[/mw_shl_code]
1 l2 Z1 K% U$ @. k2 z! k8 |) v |
|