NX 차 개발이 접하는면 방법 ScRuleFactory ()를 찾을 수 -NXOPEN -> CreateRuleFaceTangent

1 #INCLUDE <uf_defs.h>
 2 #INCLUDE <uf_ui_types.h>
 3 #INCLUDE <iostream>
 4 #INCLUDE <NXOpen / Session.hxx>
 5 #INCLUDE <NXOpen / UI.hxx>
 6 #INCLUDE <NXOpen / NXMessageBox. Hxx에>
 7 #INCLUDE <NXOpen / Callback.hxx>
 8 #INCLUDE <NXOpen / NXException.hxx>
 9 #INCLUDE <NXOpen / BlockStyler_UIBlock.hxx>
 10 #INCLUDE <NXOpen / BlockStyler_BlockDialog.hxx>
 11 #INCLUDE <NXOpen / BlockStyler_PropertyList. Hxx에>
 12 #INCLUDE <NXOpen / BlockStyler_Group.hxx>
 13 #INCLUDE <NXOpen / BlockStyler_FaceCollector.hxx>
(14)#INCLUDE <uf.h>
 15 #INCLUDE <uf_obj.h>
 16 #INCLUDE <NXOpen / NXObjectManager.hxx>
 17 #INCLUDE <NXOpen / PartCollection.hxx>
 18 #INCLUDE <NXOpen / Face.hxx>
 19 #INCLUDE <NXOpen /FaceTangentRule.hxx>
 20 #INCLUDE <NXOpen / ScCollectorCollection.hxx>
 21 #INCLUDE <NXOpen / ScRuleFactory.hxx>
 22  
23  
24          UF_initialize ();
25  
26          // NXOPEN初始化
27          NXOpen 세션 :: = * theSession NXOpen :: 세션 ::하는 getSession ();
28          NXOpen :: 부 * workPart (theSession-> 부품 () -> 취업 ());
         부품 :: * displayPart NXOpen (theSession-> 부품 () -> 디스플레이 ());
 30  
(31)가된다          // 선택된 제어 표면 
32          PROPERTYLIST FaceSelectProps * = face_select0-> GetProperties를 ()
 (33)는          STD : 벡터 <TaggedObject NXOpen :: * > = FaceSelectProps-가> GetTaggedObjectVector을 (얼굴 " selectedObjects " )
 (34)는          삭제 , FaceSelectProps
 35          FaceSelectProps = NULL을,
 36  
37          tag_t FaceTag =는 [대향 0 ] -> 태그 ()
 38 인  
39          // 선택된 색에 설치면 
(40)          UF_OBJ_set_color을 ( FaceTag,186 );
41  
42          // 给入一个面
43          NXOpen :: * 얼굴의 face1 (dynamic_cast는 <NXOpen :: 얼굴 *> (NXOpen :: NXObjectManager :: 위젯 (FaceTag)));
44  
45          // 使用NXOPEN相切面规则
46          표준 : 벡터 <NXOpen :: 얼굴 *> boundaryFaces1 ( 0 );
47          NXOpen :: FaceTangentRule * faceTangentRule1;
48          faceTangentRule1 = workPart-> ScRuleFactory () -> CreateRuleFaceTangent (face1, boundaryFaces1, 0.050000000000000003 );
49          표준 : 벡터 <NXOpen :: SelectionIntentRule *> rules1 ( 1 );
50          rules1 [0 ] = faceTangentRule1;
51  
52          NXOpen ScCollector :: = * scCollector1 workPart-> ScCollectors () -> CreateCollector ();
53          scCollector1-> ReplaceRules (rules1, 거짓 );
54  
55          표준 : 벡터 <NXOpen :: TaggedObject *> BB = scCollector1-> getObjects 오브젝트를 ();
(56)          에 대한이 ( int로 I = 0 ; I <BB.size는 (); 나는을 ++ )
 57          {
 58              UF_OBJ_set_color (BB [I] -> 태그 (), 1 );
59          }
 60  
61          UF_terminate ();

추천

출처www.cnblogs.com/nxopen2018/p/11069949.html