HyperWorks二次開發(fā)基礎(chǔ)【2】
2016-09-27 by:CAE仿真在線 來(lái)源:互聯(lián)網(wǎng)
使用API編程時(shí),Handles 必須開啟:
? 每個(gè)API都可以在對(duì)象層級(jí)中找到,API用于打開handles,handles被打開之前,不能夠被使用,可以用一個(gè)比喻來(lái)解釋這個(gè)問(wèn)題,假如你想吃 冰激凌,首先你要打開冰箱找到裝有冰激凌的抽屜,打開抽屜,找到裝有冰激凌的盒子,然后打開盒子,拿出冰激凌,才能夠吃到冰箱中有不止一種冰激凌,每個(gè)人 會(huì)根據(jù)自己的喜好來(lái)選擇自己喜歡的口味,因此每個(gè)人就會(huì)決定去打開那個(gè)抽屜。為了獲得特定的APIs,用戶必須明確打開所需要的handle來(lái)獲取響應(yīng)的 API。
? 一旦handle被打開,就可以自由使用,直到handle被釋放。在冰激凌的例子中,就想關(guān)閉蓋子,除非重新打開蓋子,否則用戶無(wú)法獲取盒子中的冰激凌。同樣的,Handles可以被在此打開,并且可以重復(fù)無(wú)限次,這對(duì)于handle的反復(fù)使用是重要的。
? handle一般繼承自上層(parenthandle),并通過(guò)某種方式相關(guān)聯(lián)。所有的handle都從parents 對(duì)象獲取。
下圖顯示了HyperWorks中數(shù)據(jù)庫(kù)的層級(jí)結(jié)構(gòu):
例如:
使用hwlProject handle中AddPage API,必須首先打開project handle下面的session handle。
? 在打開每一個(gè)handle的時(shí)候需要指定handle的名字已方便后續(xù)使用。
hwi GetSessionHandle sess
*hwi 是最高層handle,連接所有API
*sess 是獲取handle后指定的名字,名稱可以隨便取,但需要
當(dāng)一次打開很多handle時(shí),需要明確那一個(gè)handle進(jìn)行后續(xù)操作,例如,希望打開一個(gè)page的handle時(shí),而此時(shí)存在許多page,就需要指定那個(gè)page的handle希望被獲取。
hwi GetSessionHandle sess
sess GetProjectHandle proj
proj GetPageHandle p1 1
所有API具有如下格式:
Handle Method args
某些API沒(méi)有參數(shù)項(xiàng),某些有很多參數(shù),某些handle被實(shí)例化后才能被打開,否則找不到對(duì)象的handle。例如,打開一條畫圖(plot)的handle,必須添加一條曲線后才能打開plot的handle。
hwi GetSessionHandle sess
sessGetProjectHandle proj
projGetPageHandle p1 1
p1 GetWindowHandle w1 1
w1 GetClientHandle plot
plotAddCurve
plotGetCurveHandle c1 1
對(duì)于不清楚的API的使用情況,可以參考系統(tǒng)幫助信息,另外可以使用API中的函數(shù)ListMethod命令查看所有命令。
相關(guān)標(biāo)簽搜索:HyperWorks二次開發(fā)基礎(chǔ)【2】 HyperWorks有限元分析培訓(xùn) HyperMesh網(wǎng)格劃分培訓(xùn) hyperMesh視頻教程 HyperWorks學(xué)習(xí)教程 HyperWorks培訓(xùn)教程 HyperWorks資料下載 HyperMesh代做 HyperMesh基礎(chǔ)知識(shí) Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓(xùn) Abaqus培訓(xùn)