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

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

[复制链接]

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

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

admin 楼主

2014-3-13 11:22:36

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

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

x
有关用户设置的使用,如果你想设置一个模版文件,可以通过下列方式:7 z' H% N" _  Y0 \+ x# @
  |6 b4 s/ l* w8 [
  1. , l, q2 y/ U: `' G, Q
  2. #include <uf_defs.h>
    9 G& z2 f( r8 A* M0 R  V1 ~
  3. #include <NXOpen/NXException.hxx>
    2 q' D( p4 j' ?( [! t! T& N
  4. #include <NXOpen/Session.hxx>7 Z  h! g% a- b+ o  U) A- B! c/ M
  5. #include <NXOpen/Builder.hxx>/ b3 j8 p0 v0 ]# d+ J
  6. #include <NXOpen/FileNew.hxx>7 z0 o( T8 K! |" ~$ m4 v3 {  l
  7. #include <NXOpen/NXObject.hxx>
    5 U2 J& [( d+ p& }# N$ e3 F
  8. #include <NXOpen/Part.hxx>
    # s- i0 X) D6 g7 ~) N! {& ?3 v5 x- J
  9. #include <NXOpen/ParTCollection.hxx>
    # |. l5 a6 m  l' _- ?- [+ e
  10. #include <NXOpen/Preferences_PartPreferences.hxx>
    % G% D/ V/ w7 W; Y1 d
  11. #include <NXOpen/Preferences_PartSketch.hxx>( Y0 s9 T% q9 }5 I1 |
  12. #include <NXOpen/Preferences_SessionPreferences.hxx>
    ! p4 t( Y7 \5 t0 k" x& |2 ~: n
  13. #include <NXOpen/Preferences_SessionSketch.hxx>
    8 z; \7 c7 l9 ^! i) d8 S  n) V$ w" c( p
  14. #include <NXOpen/Preferences_WorkPlane.hxx>
    , v$ i, s* d7 [# q0 i1 M+ Z; p) |
  15. #include <NXOpen/Session.hxx>. \/ l+ S: b: S* r  ~' ]
  16. using namespace NXOpen;
    7 x. s% [- A& I2 _/ m% Y

  17. 6 U* a% U* Z7 P7 U/ T5 P
  18. extern "C" DllExport int ufusr_ask_unload(): x4 E# g' \! k5 k9 Y8 P
  19. {
    & r& `' q6 c, ~/ k5 ]
  20.     return (int)Session::LibraryUnloadOptionImmediately;
    6 l6 J, l! t2 p" v. F5 Q5 G& @. L
  21. }" L0 g* C& c+ ^6 V  c

  22. 1 p1 J( @7 u" _9 e" U
  23. extern "C" DllExport void ufusr(char *param, int *retCode, int paramLen)
    $ |  R2 k& {$ N- q8 f0 ~
  24. {9 U4 A' y6 O, M1 D
  25.     Session *theSession = Session::GetSession();
    + q1 m) X8 Z& I: l; Y4 o
  26. 2 p, s2 U- Z! T2 n
  27.     //Creates New Part with name as Preferences.prt2 b5 Q# K3 `% p$ t' b0 f2 y
  28.     NXOpen::Part *part1;% G- l% ?6 x8 p1 Q
  29.     part1=theSession->Parts()->NewDisplay("Preferences",Part::UnitsMillimeters);
    1 b" B( T4 o; a' A2 M* o# e- k
  30.     Part *workPart(theSession->Parts()->Work());
    / d6 O7 J2 H$ B: P; w8 w' S
  31.     Part *displayPart(theSession->Parts()->Display());
      @8 A. p* s2 v+ P6 {- |9 Q# s
  32. * ]& T, }" L' p" `& e1 S) y% O1 f

  33. 9 }) U2 i9 g7 j7 W

  34. , x: `6 `/ a$ S* z2 A
  35.     // ----------------------------------------------6 d1 F" u" S$ I- |- N
  36.     //  Changing Sketch Prefix names
    8 o/ M6 O. S. r3 y( Q
  37.     // ----------------------------------------------   
    ! w. V$ q* o* e2 c4 ]- ]3 Y
  38.       3 S6 b  d6 B& @% O
  39.     theSession->Preferences()->Sketch()->SetDefaultSketchNamePrefix("SKT_");
    % y6 y, H! q7 X. O+ I8 K, W

  40. 9 k& G- x# u: I9 R
  41.     theSession->Preferences()->Sketch()->SetDefaultVertexNamePrefix("VRT_");
    , Z9 h7 s" E( K4 T

  42. , J  Q  t8 G% T3 V: t; j2 M* w
  43.     theSession->Preferences()->Sketch()->SetDefaultLineNamePrefix("LIN_");
    $ k, s( t$ ?* L* i; ]
  44. 5 ~+ @& s9 A6 a9 Z+ N/ C
  45.     theSession->Preferences()->Sketch()->SetDefaultArcNamePrefix("ARC_");
    ' i; j' t3 s$ P7 \% D
  46. - j8 z6 u5 h' _1 s7 j1 @
  47.     theSession->Preferences()->Sketch()->SetDefaultConicNamePrefix("CON_");7 j- o$ j( ^5 W3 K" B' c

  48. ' c  J1 S" v7 B5 F: ~6 f
  49.     theSession->Preferences()->Sketch()->SetDefaultSplineNamePrefix("SPL_");      
    , g: S8 S: r& `9 j, f2 _
  50.    
    2 P, ^3 P! I6 I1 p
  51.     , `: I$ g* g5 o
  52.     // ----------------------------------------------
    * o# x+ ?: Q8 |: P
  53.     //  Changing Grid values
    " Q$ c9 P" H' c
  54.     // ----------------------------------------------  
    + S4 x; o) \) C
  55.     ; H! u/ B( v+ X3 F7 U+ g! m! @
  56.     Preferences::WorkPlane *workPlane1;
    ( `1 C9 O, @8 Y
  57.     workPlane1 = workPart->Preferences()->Workplane();
    * P$ `& C* x$ N+ C
  58.     3 N5 b! d4 x# C
  59.     workPlane1->SetGridType(Preferences::WorkPlane::GridPolar);5 T6 T9 d/ \* V
  60.    
    " y* R2 s" a: a. b/ V& i/ W7 K
  61.     Preferences::WorkPlane::PolarGridSize polarGridSize1;
    ! M  G+ b6 a) C- C" b- \
  62.     polarGridSize1.RadialGridSize.MajorGridSpacing = 75.0;' q8 j6 r( }: O9 k
  63.     polarGridSize1.RadialGridSize.MinorLinesPerMajor = 3;
      U& ]$ _' n' ], v1 n
  64.     polarGridSize1.RadialGridSize.SnapPointsPerMinor = 5;
    , ^7 {8 Z1 @! L
  65.     polarGridSize1.AngularGridSize.MajorGridSpacing = 45.0;
    ; K/ U6 {" g+ `) f, K+ N, f( w
  66.     polarGridSize1.AngularGridSize.MinorLinesPerMajor = 4;
    2 Z! R3 R# ?& E8 R5 u/ i
  67.     polarGridSize1.AngularGridSize.SnapPointsPerMinor = 2;8 V, ?* E1 ^+ I8 H$ ?: D
  68.     workPlane1->SetPolarGridSize(polarGridSize1);% `' V% K& S) R% p
  69.     " f# \1 t2 B+ n$ ^8 n' F; R" |& g
  70.     workPlane1->SetShowGrid(true);
    ( @# `3 ~  \7 d- m0 }
  71.     ' u; u5 c* `0 x' ~' f5 W
  72.     workPlane1->SetShowLabels(false);0 L8 B4 W  F: a1 a
  73.     : \- ^4 b0 M- T7 G. b( T5 a! t
  74.     workPlane1->SetSnapToGrid(false);
    . v& u, i6 j4 H# G4 r  |8 Y8 F* E
  75.    
    & f* \9 @6 b1 E8 P# c0 y6 I5 L  m9 w
  76.     workPlane1->SetGridOnTop(false);- v" z) C- ~/ e* h/ S
  77.     5 c# o' v! z9 K, @7 V! E
  78.     workPlane1->SetRectangularShowMajorLines(false);* O. r- ~8 E" R8 s/ o& d
  79.     4 w+ p3 [1 i& f. F, a( z
  80.     workPlane1->SetPolarShowMajorLines(true);
    7 {# ^7 ^4 j' c2 D
  81.     $ I0 k2 g1 ~; `* k( }& D; C
  82.     workPlane1->SetGridColor(130);  Z! N$ I# m& C" v( [. w. x
  83. }
复制代码
( A# S# u; L# c# w) Z' @/ L+ s# M, |3 \
* Q6 g. k' r( P6 ^3 p5 q
7 q" Y9 P9 Y/ }/ T7 W' I4 v$ `
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了