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

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

[复制链接]

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

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

admin 楼主

2014-3-13 11:22:36

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

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

x
有关用户设置的使用,如果你想设置一个模版文件,可以通过下列方式:
2 L* e6 a7 U2 g7 w$ I0 t
# X# y3 V. T3 u; s# }0 }' ?; [
  1. ; ]% t7 y' R) E
  2. #include <uf_defs.h>/ \0 M( ~! n/ \' c$ r4 u
  3. #include <NXOpen/NXException.hxx>
    * O1 p! |* N7 O
  4. #include <NXOpen/Session.hxx>
    * k( p- i3 `. g+ t6 p4 q
  5. #include <NXOpen/Builder.hxx>' D4 e- i( f; ]5 ]- o
  6. #include <NXOpen/FileNew.hxx>
    $ M* ]6 @& A( j# c. H
  7. #include <NXOpen/NXObject.hxx>5 `" D! H5 Y5 _+ x
  8. #include <NXOpen/Part.hxx>/ E7 U3 v" O  a
  9. #include <NXOpen/ParTCollection.hxx>
    4 v+ z! j6 M# I) j$ r
  10. #include <NXOpen/Preferences_PartPreferences.hxx>! v8 Q; l$ c6 H9 D
  11. #include <NXOpen/Preferences_PartSketch.hxx>0 S6 T- X, o( e0 T- @3 a8 R% e
  12. #include <NXOpen/Preferences_SessionPreferences.hxx>
    & }/ {8 ]6 F" S5 q9 c* q0 b; Q* a
  13. #include <NXOpen/Preferences_SessionSketch.hxx>
    5 \- s# m6 I7 L( C! X4 c/ G) H# j
  14. #include <NXOpen/Preferences_WorkPlane.hxx>2 _9 G! [6 L+ v. b7 Q, }
  15. #include <NXOpen/Session.hxx>: k5 d! x8 d5 @9 X: K
  16. using namespace NXOpen;
    & T" I& Y( l+ U7 C

  17.   f% B4 p! f2 O1 |
  18. extern "C" DllExport int ufusr_ask_unload()" R* }. b; u2 i
  19. {
    ' b$ h- ^5 r( L
  20.     return (int)Session::LibraryUnloadOptionImmediately;
    2 V* ^4 h( E8 g: y) J7 r: ^$ h
  21. }2 E: Z3 h; O2 j/ M8 ~8 W! ~) A

  22. . }2 [' n% ~* l. f0 @
  23. extern "C" DllExport void ufusr(char *param, int *retCode, int paramLen)7 o9 H8 I2 C! D: r$ U* S
  24. {
      Y) V3 g' J# m9 g6 q9 ^
  25.     Session *theSession = Session::GetSession();% V5 X- v) C5 J! @, c: R

  26. 7 b; M5 x& g# P, y$ a
  27.     //Creates New Part with name as Preferences.prt
    3 N8 o( t2 [" `" C8 y4 J: K
  28.     NXOpen::Part *part1;. D1 M  Y) v$ C" D" ]0 ?
  29.     part1=theSession->Parts()->NewDisplay("Preferences",Part::UnitsMillimeters);
    % V. s" K/ a8 u6 q3 _9 E
  30.     Part *workPart(theSession->Parts()->Work());
    $ q. I- W4 E  p! {, B
  31.     Part *displayPart(theSession->Parts()->Display());   ^7 p2 L5 j! C& o

  32. . O; ~2 R/ ^! \7 g- z7 M. L, @  C
  33. / y5 o* W4 A0 I1 f
  34. 9 b- j$ R. [) K
  35.     // ----------------------------------------------
    . ?7 I- @5 x2 s
  36.     //  Changing Sketch Prefix names
    * |* o! S) g4 L
  37.     // ----------------------------------------------   $ Y1 b6 \9 l+ l, q4 `$ V
  38.       
    1 R3 y2 V) e! A, j8 n/ ?% Y7 s
  39.     theSession->Preferences()->Sketch()->SetDefaultSketchNamePrefix("SKT_");
    : r' p* ^  Q' o1 O. N
  40. , T: X# @8 D* i/ r! U9 B8 _5 d
  41.     theSession->Preferences()->Sketch()->SetDefaultVertexNamePrefix("VRT_");
    # r9 X; D: c% R( M3 v' @9 j
  42. ( U/ c: k( a6 O
  43.     theSession->Preferences()->Sketch()->SetDefaultLineNamePrefix("LIN_");7 ~+ {& G: z& R/ U
  44. - ]" ~/ h% O  l4 h4 x2 e; Y
  45.     theSession->Preferences()->Sketch()->SetDefaultArcNamePrefix("ARC_");
    % L# z7 U6 i  N2 A5 p
  46. 0 L% u3 p' u: y
  47.     theSession->Preferences()->Sketch()->SetDefaultConicNamePrefix("CON_");
    % g$ \7 q/ L: ?

  48. ; G. K) k8 G% V+ h4 j6 E- X
  49.     theSession->Preferences()->Sketch()->SetDefaultSplineNamePrefix("SPL_");      
    0 C" `) ]' K2 s" Y. ?/ A
  50.    
    8 O. z: ?4 f' ]$ s: D
  51.     7 e! \# e% ~8 `( M
  52.     // ----------------------------------------------
    3 q0 v" J- c+ A1 i- K* g) o+ B6 b
  53.     //  Changing Grid values
    4 A/ x. u* A* C8 U+ N2 ?$ d
  54.     // ----------------------------------------------  
    4 D  `8 u1 d0 N4 r
  55.     5 d; v# d8 n/ J' P+ h$ D7 t
  56.     Preferences::WorkPlane *workPlane1;4 e+ N# u) G1 a* ~* P# G0 e
  57.     workPlane1 = workPart->Preferences()->Workplane();5 E5 X' c% z2 }: R9 N) g8 R
  58.     ; E+ j; ~# Z# N6 ~; v
  59.     workPlane1->SetGridType(Preferences::WorkPlane::GridPolar);* A7 h, f5 k. ^" Q
  60.     % v3 k; e2 J! G
  61.     Preferences::WorkPlane::PolarGridSize polarGridSize1;& ?' C( o: U! |4 j' f- ~* P, I
  62.     polarGridSize1.RadialGridSize.MajorGridSpacing = 75.0;
    . \3 D6 e$ P8 x1 F/ \3 V5 x  U  I
  63.     polarGridSize1.RadialGridSize.MinorLinesPerMajor = 3;" }# E. \7 J4 w, l- T8 z; {# E
  64.     polarGridSize1.RadialGridSize.SnapPointsPerMinor = 5;' l, m( V5 v9 B
  65.     polarGridSize1.AngularGridSize.MajorGridSpacing = 45.0;2 P9 ^% A7 K8 }
  66.     polarGridSize1.AngularGridSize.MinorLinesPerMajor = 4;
    4 y- {. e' N" L2 W& T
  67.     polarGridSize1.AngularGridSize.SnapPointsPerMinor = 2;
    8 O4 C1 J( M$ ^5 i& F
  68.     workPlane1->SetPolarGridSize(polarGridSize1);8 F# m# _. Z/ k8 w. H
  69.     - I; I7 i( U! h3 a/ U/ \* X
  70.     workPlane1->SetShowGrid(true);/ Z: z7 M8 p4 O7 x5 q! S
  71.    
    * c  N1 f3 B6 n9 B7 e5 z
  72.     workPlane1->SetShowLabels(false);* T$ j: \2 }2 T$ c( J6 ?
  73.    
    5 V! m6 q. A' P% B  i' R
  74.     workPlane1->SetSnapToGrid(false);
    0 w" Z$ J) f" @$ \2 v: M
  75.     + x/ i4 X0 n( z5 F3 T! w
  76.     workPlane1->SetGridOnTop(false);
    8 E$ w3 F) z5 [
  77.    
    5 F3 s. i1 H' |; A$ J
  78.     workPlane1->SetRectangularShowMajorLines(false);7 m. J7 p# J4 y! ?
  79.     ' B7 i: c( a5 R
  80.     workPlane1->SetPolarShowMajorLines(true);
    ( n; i3 L( t0 f+ |: O/ v
  81.     ) t, q! a# c. ~5 j! X1 O" Z
  82.     workPlane1->SetGridColor(130);
    # R0 b: Y$ \% W
  83. }
复制代码
+ X: |) A% p! w9 O  n4 v8 y- C2 _  H
  N4 X7 [/ f# \, k

8 M7 s  V' S6 e9 v# M' n; G: V" G
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了