Hypemesh二次開發-部件名稱修改

1 引言

在進行hypemesh前處理二次開發過程中,一個主要的工作就是對部件(compent)名稱的管理,通過定義component的命名規范,促使部件名稱中包含部件的單元類型、材料、厚度等信息,為后續的自動化處理提供基礎。一種常見的命名規范為:單元類型編號_零件號(零件名稱)_部件厚度_材料,以下劃線“_”進行區分,這種命名方式必須保證原有的component名稱中不包含下劃線“_”。本文主要實現的功能為對導入的component名稱進行檢測,并將名稱中的下劃線“_”修改為中劃線“-”。

2 基本思路及主要函數

基本思路如下:

  1. 獲取部件名稱;

  2. 判斷名稱中是否存在制定字符;

  3. 修改字符串并重新命名部件。

要實現上述功能,主要用到了TCl的流程控制命令Foreach、以及Tcl針對字符串操作的命令:string first、string map,主要功能及用法如下:

string first needleString haystackString ? startIndex?

搜尋在haystackString字符串中與needleString字符串完全匹配的字符段,如果找到了返回第一次匹配在haystackString字符串中的索引,如果找不到則返回-1。如果指定了startIndex則在haystackString中從索引startIndex開始搜索,用法:

  string first "tcltk" "This is a tcltk example"

    10

string map ?-nocase? mapping string

根據mapping表里面的key-value關系替換string中的子字符串,mapping是一個類似于key value key value …的列表,每個在string中的key都會被value替換。如果指定了-nocase,匹配就不需要考慮差別。key和value都可以是多字符的,置換按照一定的順序進行,所以在列表前面的key會被優先置換。string只會被置換一次,所以前面做過置換操作的字符將不匹配后面的key。例如:

string map {abc 1 ab 2 a 3 1 0} 1abcaababcabababc

將返回01321221。

4 程序效果

部件名稱:

Hypemesh二次開發-部件名稱修改的圖1

調用TCl腳本,完成部件名稱修改:

Hypemesh二次開發-部件名稱修改的圖2

Hypemesh二次開發-部件名稱修改的圖3

以下內容為付費內容,請購買后觀看

   6人購買

收費內容為tcl腳本。

App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

6
3
7