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

[资料分享] 一种自定义颜色条的方法,直接可以用,可以作为CAE后处理

[复制链接]

2023-3-6 11:55:57 954 0

admin 发表于 2023-3-6 11:55:57 |阅读模式

admin 楼主

2023-3-6 11:55:57

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

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

x

; w& H; p  T4 W
0 g3 d* d/ S2 _" u4 s3 ~5 w6 I
  R9 v7 r( O* ~6 O7 A4 g/ e+ [一种自定义颜色条的方法,直接可以用,可以作为CAE后处理
9 ~; x5 b: ^/ U  B- |# D$ I0 ]( K* c% }8 Y9 I! C
QQ截图20230306115545.png ! ]% l; u% d+ Z% M4 C
: J. p7 N) O- Q# U9 D7 C

  1. , I1 E2 U. [+ y- n; t7 E
  2. : C4 |% j: {5 _( a

  3. 5 z# O  a- B* U7 y* i, I! {7 Z) t
  4. $ k( _) B4 M' j" |
  5. void UI_ColorRangeUDB::UI_ShowColorMapBlocks()
    : T; V5 I3 z8 T# y0 r
  6. {
    9 `3 O2 f" `: i+ k
  7.         int colorNum = integerColorNum->Value();
    ) e- e0 @, D0 b7 m
  8.         vector<BlockStyler::UIBlock*> hiddenGroup;
    * R$ `+ f0 G+ ]/ p1 b" y! O
  9.         hiddenGroup.clear();2 |3 f( f7 {6 L* x& s- _& k
  10.         vector<BlockStyler::UIBlock*> shownGroup;
    ) P4 G5 v, e- p8 D1 V, W  Q
  11.         shownGroup.clear();
    5 [. `0 @6 R5 F: {4 \; u( y+ n( u
  12.         string groupPreStr = "groupColorRange";! i5 t7 c7 p! C6 ]& J. S
  13.         string doubleUPreStr = "doubleU";
    0 t7 ~6 ^! I2 w  Z1 p& B1 T
  14.         string doubleLPreStr = "doubleL";
    6 }/ t: \5 p) Y' ~
  15.         //get all the groups with the name str //groupColorRange6; K6 ~- k+ `8 j* n  F3 Y  U
  16.         vector<BlockStyler::UIBlock*> allBlocks = theUserDefinedUIBlock->TopBlock()->GetBlocks();
    * _% z2 u( y- u+ C
  17.         //type: Group          name : groupColorRange
    + Y# G9 L. R3 x" v. g
  18.         //type : Group          name : groupColorRange19 E+ r% a6 ^/ e2 X) z+ F: w: y- `5 R3 n
  19.         //type : Group          name : groupColorRange10$ ]3 m3 [' [4 K
  20.         //type : Group          name : groupColorRange11
    ) y8 K+ H- z+ Y8 H: Z- S% B% N
  21.         //type : Group          name : groupColorRange12; G) L/ D$ ]. F. ~( r, e4 ?
  22.         //type : Group          name : groupColorRange2
    / Q; `# k2 X( ]
  23.         //type : Group          name : groupColorRange3
    6 R8 M. T, \+ f4 f; b9 j$ j
  24.         //type : Group          name : groupColorRange4
    ' U& O9 z7 `% v
  25.         //type : Group          name : groupColorRange5/ r: \: u2 j) ~) x
  26.         //type : Group          name : groupColorRange64 M- A$ ^7 k+ A7 N  V
  27.         //type : Group          name : groupColorRange7- ~  Y! v1 s6 {8 q. M+ h5 L/ `
  28.         //type : Group          name : groupColorRange8
    % U4 n4 [$ }6 F% H7 x' Z9 q
  29.         //type : Group          name : groupColorRange9
    + D' i0 C- _8 m- p0 X( @

  30. , j* P4 \3 h! E# f8 i+ u& ~
  31.         for (int i = 0; i < allBlocks.size(); i++)
    0 `. T& i+ @. h7 b: Z) {
  32.         {6 b; Z) W, i/ n' ~4 C9 t7 x9 R
  33.                 BlockStyler::UIBlock* tempBlock = allBlocks[i];! U* R% }2 W8 m& E3 ]
  34.                 if (isSameNXString("Group", tempBlock->Type().GetText()))% s/ ~# |. S( C! F' k" o: L1 L
  35.                 {0 V; f* l9 H5 K& u) _% n3 ]
  36.                         string blockNameStr = tempBlock->Name().GetLocaleText();
    $ ^( X& L" L1 }3 M( p5 _
  37.                         size_t findIndex = blockNameStr.find("groupColorRange");9 h' `: {3 B, A7 K! b  p% o
  38.                         if (findIndex != string::npos)0 h4 I7 a; ]8 z/ Z; i+ V) R7 [2 ]
  39.                         {
    : L6 w4 d1 \1 `5 e9 Q' _% {
  40.                                 string subStr = blockNameStr.substr(groupPreStr.length());7 L# |1 U* w3 F) {
  41.                                 // Echo("%s", subStr.c_str());
    7 }- E' M" D; {" k
  42.          //Echo("%d -- %d", atoi(subStr.c_str()), colorNum);
    ! z4 z- C0 C8 j8 q5 \7 _# t8 J, d
  43.                                 if (colorNum >= atoi(subStr.c_str()))3 Y8 n8 q0 ]3 \" Y; U
  44.                                 {/ M$ d# H) f& |5 z! Q
  45.                                         shownGroup.push_back(tempBlock);
    4 E7 i$ j; B& {3 B8 W
  46.                                 }
    ( m, o3 ]3 _* Y6 u
  47.                                 else
    9 M# s; @( W/ Q) w& V0 X. F; T' I
  48.                                 {
    " o3 v8 N. y, d1 H$ a
  49.                                         hiddenGroup.push_back(tempBlock);
    / T, [: E+ H) U" V9 F# O' J; |
  50.                                 }
    / P' e8 _* @; F1 T
  51.                         }
    : x& Y3 l0 D1 `1 B2 o* k9 P7 _
  52.                 }
    ' z7 z/ B2 @3 D0 y
  53.         }! U+ I! ]+ I" `+ W$ t9 w
  54.         if (!shownGroup.empty())
    7 i! j3 P) [8 |, c5 s) u, ?% t
  55.         {
    0 ~4 U- M% |! x/ S: [3 J
  56.                 for (auto a : shownGroup)* a- e$ a) o0 y- ]- e
  57.                 {3 `; p! E  L8 P3 l6 F; O$ A
  58.                         a->SetShow(true);
    : I- d; \5 T/ R8 w

  59. 5 x7 ?5 a! H5 j5 q* X1 x- u
  60.                 }
    , p) g- }1 f" Y" I% ~+ ~0 u* l! S) V" G
  61.         }3 l% ?( K  s# ]7 K/ U
  62.         if (!hiddenGroup.empty())
    8 b9 ^# i9 |' G* ~3 w& c
  63.         {& \: K0 O! K8 [4 L! @9 f& z! M
  64.                 for (auto a : hiddenGroup). k4 w7 b- l) A4 G0 ~  w0 \; Y
  65.                 {
    1 S) b1 A; U: d4 P( e; m
  66.                         a->SetShow(false);
    & J" @4 m* n; ]0 S4 U3 |3 G& q
  67.                 }
    + ]4 x' ?! P5 C) s& b) w
  68.         }6 Y" y3 n( N& Z8 M* Y

  69. 5 I! [+ W" Q0 Y  ?' r: n3 Z
  70.     //实时更新显示
    5 T/ Y$ k+ Y3 Q
  71. . x7 U8 _! I1 X' x1 B- ]/ {
  72.     UI_UpdateDoubleRangeValue();
    2 Q9 Z- ~, I9 {
  73. }
复制代码

5 N1 x1 s) n# s1 @5 M. Y
4 r# J8 N8 y& l5 U4 i
/ U* J- h1 c& Y2 C* s* a3 @& `
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了