PLM之家PLMHome-国产软件践行者

[二次开发源码] UG NX二次开发源码分享:有关用户设置方面的使用

[复制链接]

2014-3-13 11:22:36 3211 0

admin 发表于 2014-3-13 11:22:36 |阅读模式

admin 楼主

2014-3-13 11:22:36

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
有关用户设置的使用,如果你想设置一个模版文件,可以通过下列方式:/ f9 \, a, ~/ v% u* t# {: N
  N" K+ m2 Z4 L8 y" V

  1. + V) ]  C8 W5 x( J" O% B
  2. #include <uf_defs.h>
    % ?$ g0 g  g, G5 U0 m3 d8 w
  3. #include <NXOpen/NXException.hxx>
    0 h; f5 o( i$ ]" D# m5 \
  4. #include <NXOpen/Session.hxx>4 k" x! h/ h# n" Z4 X' U
  5. #include <NXOpen/Builder.hxx>& K# [" S6 H) I( K. y
  6. #include <NXOpen/FileNew.hxx>9 o; _2 R' A' j0 ^% X) c! j' o
  7. #include <NXOpen/NXObject.hxx>" W* B. Y  z* h' S* `5 {4 a
  8. #include <NXOpen/Part.hxx>$ m" b( M) \. F4 F4 Q8 S
  9. #include <NXOpen/ParTCollection.hxx>& v& R/ F8 G6 p. _( \$ G
  10. #include <NXOpen/Preferences_PartPreferences.hxx>
    + N5 E$ S' r5 G( e! Y* B7 M
  11. #include <NXOpen/Preferences_PartSketch.hxx>$ I. r! I; v$ d/ {) ^6 X1 J" c
  12. #include <NXOpen/Preferences_SessionPreferences.hxx>
    ! ^, H2 y; x; x: n( s3 r: ]3 v
  13. #include <NXOpen/Preferences_SessionSketch.hxx>. _0 k+ _7 U6 \8 r( b! h
  14. #include <NXOpen/Preferences_WorkPlane.hxx>
    / i# }- f& n& C, r. B. [
  15. #include <NXOpen/Session.hxx>; t" K& y4 O" ~, n& _0 r& M) W
  16. using namespace NXOpen;
    # [2 f" D, I' x3 `0 N
  17. $ j. u+ _2 `% [: ?( a5 r' ?9 `# C, U
  18. extern "C" DllExport int ufusr_ask_unload()/ A4 C1 Q- f  L
  19. {* A% w) \7 x: ^7 R
  20.     return (int)Session::LibraryUnloadOptionImmediately;) q* L( I, B/ `* G5 x" Z, Q8 i
  21. }
    ' @" d( N2 t4 f! x2 z6 Q
  22. 3 j0 I" n& E! L0 }& N# e# s
  23. extern "C" DllExport void ufusr(char *param, int *retCode, int paramLen)
    1 P# Y- j  R8 s, }. Q. x( A7 ~
  24. {
    # q7 {* A* z8 R$ Y
  25.     Session *theSession = Session::GetSession();
      h" C8 k% O" M& g/ G% Y
  26. ) m$ W, N, f% i) x7 d$ w
  27.     //Creates New Part with name as Preferences.prt
    ' D% u, q' p6 W1 F7 t& p# i
  28.     NXOpen::Part *part1;, g3 h, M% r4 @5 X9 A
  29.     part1=theSession->Parts()->NewDisplay("Preferences",Part::UnitsMillimeters); ; c9 ^3 ?' ]2 E/ n: c
  30.     Part *workPart(theSession->Parts()->Work());
    / }8 b$ w8 M2 O+ i, @
  31.     Part *displayPart(theSession->Parts()->Display()); " m( K6 S  H/ D6 l
  32. $ G# R; O/ M4 \8 `

  33. 0 T# c! y8 s1 ~  z" h: ?/ S: Q
  34. + [' f+ e( J; `; m  U9 p+ T
  35.     // ----------------------------------------------
    1 p  b1 A" @& e! ]8 N' d# ^+ r
  36.     //  Changing Sketch Prefix names
    2 @" W' u7 D- \4 I
  37.     // ----------------------------------------------   
      Z6 m4 B  q8 g6 g$ E
  38.       
    : O, H+ s$ X% Z' B. a( O* n2 B
  39.     theSession->Preferences()->Sketch()->SetDefaultSketchNamePrefix("SKT_");6 S; x0 j' i+ s# F# q

  40. & L! s& d, `$ m# S% i
  41.     theSession->Preferences()->Sketch()->SetDefaultVertexNamePrefix("VRT_");: ]/ y$ H8 ^& S$ ~) o) t9 H

  42. : g; l9 n6 U6 t# E' J
  43.     theSession->Preferences()->Sketch()->SetDefaultLineNamePrefix("LIN_");, s0 B% A+ F3 o% ?

  44. ' r7 j: P  }8 v
  45.     theSession->Preferences()->Sketch()->SetDefaultArcNamePrefix("ARC_");2 F) L. y  M, n& k
  46. 3 S) I8 s7 W/ h2 b6 [/ r
  47.     theSession->Preferences()->Sketch()->SetDefaultConicNamePrefix("CON_");
    0 O1 X3 [! a: Y7 h2 a. T

  48. / I: h+ K7 x" @$ E
  49.     theSession->Preferences()->Sketch()->SetDefaultSplineNamePrefix("SPL_");      
    8 z! G3 k$ k3 p% d& e$ C9 Z: M
  50.    
    ' @2 G8 `. Z, l3 i3 ^7 r
  51.     7 Q- I1 o3 j8 |0 N
  52.     // ----------------------------------------------
    " J. J7 |, I' c
  53.     //  Changing Grid values8 n  a2 D2 \9 ?. N- f1 n% p
  54.     // ----------------------------------------------  / ^  n( L7 C+ x" l
  55.     9 a" f( O5 ?# ?$ s
  56.     Preferences::WorkPlane *workPlane1;
    $ K& Q! X3 z% z  e) f, Z
  57.     workPlane1 = workPart->Preferences()->Workplane();* z  @9 K. ~3 p) i9 m0 q
  58.    
    " [9 ~& O: y0 S. f8 K8 D
  59.     workPlane1->SetGridType(Preferences::WorkPlane::GridPolar);  p! d4 i" G- `! q
  60.    
    4 C) x1 i% I! m- k2 I7 Q
  61.     Preferences::WorkPlane::PolarGridSize polarGridSize1;$ H3 K: v3 n4 L6 o! \+ j* j
  62.     polarGridSize1.RadialGridSize.MajorGridSpacing = 75.0;
    2 E' t$ m/ B: v0 v6 a3 R
  63.     polarGridSize1.RadialGridSize.MinorLinesPerMajor = 3;8 B% K$ F' f0 ]4 S3 j
  64.     polarGridSize1.RadialGridSize.SnapPointsPerMinor = 5;
    / \6 i7 B  b' q1 y3 \
  65.     polarGridSize1.AngularGridSize.MajorGridSpacing = 45.0;' k8 F7 |6 X- k5 Z# q/ F2 S3 ?/ Y! [5 D
  66.     polarGridSize1.AngularGridSize.MinorLinesPerMajor = 4;
    " P) G/ ^5 u3 y- F- m# u* @
  67.     polarGridSize1.AngularGridSize.SnapPointsPerMinor = 2;+ ^; U1 _. z: h& P5 o
  68.     workPlane1->SetPolarGridSize(polarGridSize1);% j# d4 u! i' D6 H
  69.     # t) ^: Y0 A5 Z, D
  70.     workPlane1->SetShowGrid(true);6 m, `% t* I+ g& v" r: e) f/ o4 D
  71.     * |% t% L& {' {/ u3 S, W
  72.     workPlane1->SetShowLabels(false);
    ' z; d5 p" Q8 a: x) E1 V# a- ^
  73.    
    + [4 Z: F5 U6 n
  74.     workPlane1->SetSnapToGrid(false);/ F' q" S( S) L
  75.     # N2 A( }7 M9 z# d# e7 s. f
  76.     workPlane1->SetGridOnTop(false);
    * d0 b, I7 a8 u
  77.     , v% C: T/ `# ~( S) }6 \
  78.     workPlane1->SetRectangularShowMajorLines(false);
    4 O) [4 t" ?) ^5 _) a/ U
  79.    
    $ _+ i; L) s! f. A
  80.     workPlane1->SetPolarShowMajorLines(true);
    4 f- N! J6 d4 q' n( k3 E0 O4 w
  81.     : h9 W/ T; B6 U  f8 m9 L
  82.     workPlane1->SetGridColor(130);
    / y& _/ A# [8 q6 g7 z* `
  83. }
复制代码
+ m, B. F" @9 d7 k" l% D

: f) `$ F9 J. m3 x: u0 J( W" s: m1 N# i% y
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了