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

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

[复制链接]

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

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

admin 楼主

2023-3-6 11:55:57

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

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

x
8 h# `/ _) h+ t) t+ f- h+ K

( I* z3 F& N9 C* R
, N; d: F6 M- [: J: D( t一种自定义颜色条的方法,直接可以用,可以作为CAE后处理
) s! q& y" C5 M$ U6 I, A4 Z8 M7 Q) p6 v+ u
QQ截图20230306115545.png
' J% T% t6 y: F/ h
) e) L- i, s% s) [% R5 j% ?# n
  1. & b- f9 N6 O1 {8 x$ s
  2. 0 z+ y8 \: V3 u# f( B  X

  3. : B2 l" ?! p: V. P9 x; s0 t
  4. 1 a, S& g5 I1 B. `% ~5 t5 B
  5. void UI_ColorRangeUDB::UI_ShowColorMapBlocks()
      [5 w( {0 {$ ^) j8 z8 s$ W. m+ |
  6. {
    6 A* m' b2 M. t) n: ?. e) B
  7.         int colorNum = integerColorNum->Value();# p, l4 l7 ?% G+ U; H
  8.         vector<BlockStyler::UIBlock*> hiddenGroup;
    . d& S: p3 x3 u1 x4 R- h+ I
  9.         hiddenGroup.clear();
    3 P6 i0 ^* K! G% K1 C5 l
  10.         vector<BlockStyler::UIBlock*> shownGroup;2 a& Y- x. d0 H( @1 q& [
  11.         shownGroup.clear();
    - g$ G' z$ }+ G  u) u" y3 J- w4 [
  12.         string groupPreStr = "groupColorRange";! u9 W+ D4 O: G4 v
  13.         string doubleUPreStr = "doubleU";* s. `/ }' \3 h2 M5 f8 E
  14.         string doubleLPreStr = "doubleL";
    , U! \+ b" `: |- n
  15.         //get all the groups with the name str //groupColorRange6
    $ U7 C. H/ h4 c% m$ W6 f! i) p
  16.         vector<BlockStyler::UIBlock*> allBlocks = theUserDefinedUIBlock->TopBlock()->GetBlocks();
    / r9 a0 H, G3 n
  17.         //type: Group          name : groupColorRange
    ' R6 k+ B7 C9 ]$ l
  18.         //type : Group          name : groupColorRange1
    " `8 A3 L7 `) B3 O1 o' Z
  19.         //type : Group          name : groupColorRange10
    " k7 r5 d' K! B$ g  |  X
  20.         //type : Group          name : groupColorRange11/ X$ Y) Y2 i  f3 v9 v. N3 A0 ^
  21.         //type : Group          name : groupColorRange12
    6 [+ O$ V3 w' @
  22.         //type : Group          name : groupColorRange2
    + k$ z  N( T" h2 F
  23.         //type : Group          name : groupColorRange3
    * Z. g7 A: a9 j. T% J
  24.         //type : Group          name : groupColorRange4
    2 ]! }: l, X& a* d
  25.         //type : Group          name : groupColorRange5
    + V# }6 `, p( N9 P! ?+ I
  26.         //type : Group          name : groupColorRange6" N8 X( k2 j6 S! K  e+ A
  27.         //type : Group          name : groupColorRange7. J! ^5 G7 K2 H/ @' r5 N: H3 l
  28.         //type : Group          name : groupColorRange8. J1 u5 w5 T  |) z9 V3 n
  29.         //type : Group          name : groupColorRange95 i/ [; _3 g" Q( }: h8 s1 \
  30. ) w5 M( F( j* E+ Z4 B: @
  31.         for (int i = 0; i < allBlocks.size(); i++)
    . Y" |0 Q& n4 W
  32.         {
    & c2 a4 a4 O7 n% \8 {& h, t0 L% N
  33.                 BlockStyler::UIBlock* tempBlock = allBlocks[i];
      @/ P) d+ ?" v0 E2 e. b
  34.                 if (isSameNXString("Group", tempBlock->Type().GetText()))
    ( U  W  n; N% x
  35.                 {( P. t3 D9 p' W8 r/ w! ^9 N- Q  M
  36.                         string blockNameStr = tempBlock->Name().GetLocaleText();
    7 ]; m+ p7 ~2 _  t0 b9 e& \
  37.                         size_t findIndex = blockNameStr.find("groupColorRange");
      c3 T) b: `( Q0 z5 b7 X. }
  38.                         if (findIndex != string::npos)
    9 I' _- l( G& d( A/ ]! M; N
  39.                         {0 o2 J; g- p) ?4 @/ @* d
  40.                                 string subStr = blockNameStr.substr(groupPreStr.length());
    ' d  f! M& n) y' ]5 {) y
  41.                                 // Echo("%s", subStr.c_str());
    ' Q) ^* _- H' F- ?& m7 X
  42.          //Echo("%d -- %d", atoi(subStr.c_str()), colorNum);5 @4 L. J, D+ Z- t& ^3 _' c
  43.                                 if (colorNum >= atoi(subStr.c_str()))
    . [+ ^4 ?; e: ?* w! b, z
  44.                                 {
      ~7 c* ~; {  J9 r
  45.                                         shownGroup.push_back(tempBlock);8 e' P5 ]8 T- Y* V. D% k, [- c
  46.                                 }- Q/ \0 W* X0 x% t  W
  47.                                 else
    ; D6 N# f# c8 }$ e/ y, y9 [& q
  48.                                 {
    * x( R8 b' T3 W( T* k7 u
  49.                                         hiddenGroup.push_back(tempBlock);
    ) T9 o9 K3 X% d7 U: a( k
  50.                                 }
    ! `! x% o1 u9 a5 A
  51.                         }
    8 I; [7 \4 Z. g5 ~
  52.                 }
    ; ]* W4 a0 ?; F, M8 S+ ]  \9 F# E& s
  53.         }
    3 {. I$ ~) r- {4 S7 B$ c
  54.         if (!shownGroup.empty())
    5 y' [6 L- p$ N* y! L) X8 s
  55.         {) f6 j- z' h1 Q  J/ T1 u
  56.                 for (auto a : shownGroup)" s; O6 W" n# P; ~- `9 O7 ?
  57.                 {/ l2 X. T3 a+ W/ y6 l9 X. B
  58.                         a->SetShow(true);) y! Z0 I6 p4 Z9 e

  59. 4 Y) a$ s  c# t; p2 u5 K- o
  60.                 }& n) l% m/ V0 i/ W* Z2 g
  61.         }9 k- N1 M5 c# [' W! u
  62.         if (!hiddenGroup.empty())7 W& w% r, e6 u" |. L# X; D9 k  |
  63.         {! g$ f. W! q# V: ?# \6 I* P
  64.                 for (auto a : hiddenGroup)
    ; G: o* |- U) b6 U9 P2 R
  65.                 {
    ( D" j& d3 W# U1 Z# }% ~' a8 y
  66.                         a->SetShow(false);5 P8 ~- B6 R+ c% f+ D& M! ?
  67.                 }
    ! q% H, i$ T: s# h. K, @1 J. |
  68.         }9 k2 W2 \$ @" r

  69. ; ^# [# V( s& q. [9 P# v
  70.     //实时更新显示9 E  @. P' p5 k  P0 c
  71. 6 }& z0 K. C: U: L; z% e% K
  72.     UI_UpdateDoubleRangeValue();
    , b' ~9 x0 C+ y" A  ^4 U
  73. }
复制代码
: ^( e, r8 |4 v) |( v# f

& C0 @5 y( h- D& m' p
+ U6 C0 @1 d& _- p# \3 J# I9 ~
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了