Hypemesh二次開發-部件名稱修改
1 引言
在進行hypemesh前處理二次開發過程中,一個主要的工作就是對部件(compent)名稱的管理,通過定義component的命名規范,促使部件名稱中包含部件的單元類型、材料、厚度等信息,為后續的自動化處理提供基礎。一種常見的命名規范為:單元類型編號_零件號(零件名稱)_部件厚度_材料,以下劃線“_”進行區分,這種命名方式必須保證原有的component名稱中不包含下劃線“_”。本文主要實現的功能為對導入的component名稱進行檢測,并將名稱中的下劃線“_”修改為中劃線“-”。
2 基本思路及主要函數
基本思路如下:
獲取部件名稱;
判斷名稱中是否存在制定字符;
修改字符串并重新命名部件。
要實現上述功能,主要用到了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 程序效果
部件名稱:
調用TCl腳本,完成部件名稱修改:
以下內容為付費內容,請購買后觀看
6人購買
收費內容為tcl腳本。
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















