kimy777 |
2010-12-22 11:30 |
FRED-結構化屬性設置
該文檔討論設置表面光學特性(如coatings, importance samples, materials, raytrace controls, scatter等)的最簡易的方式,它利用基于腳本語言的結構化(或分層次)模塊,等價于在圖形化的交互式用戶接口中的拖拉方式。 :@A&HkF 首先參考一個樹狀結構目標,如下所示: 0w?da~ -Geometry eYOY -Subassembly 1 (Optical components) l|CM/(99- -Custom Element 2 FO!Td -Surface 3 B8&q$QV -Surface 4 6$u/N gS +Custom Element 3 |OeyPD# +Subassembly 2 (Mechanical components) [xS7ae +Subassembly 3 (Auxiliary components) qu=~\t1[6 -Custom Element 1 (Detector components) 1w,_D.1' -Surface 1 ]so/AdT9hA 編程思想是,用戶已把目標樹整理成包含相似功能特征的小組,然后想通過腳本編程語言容易地修改任一組的所有表面的光學特性,即Subassembly 1中的Optical components。形如SetAll___的一組命令能實現(xiàn)這一功能,它運行用戶指定根節(jié)點ID#及期望的特性值,F(xiàn)在考慮下面的例子,我們想為分層次結構中Subassembly 1下面的所有表面設置Transmit coating,相應的命令為: l.Q Dim idNode As Long, coatNode As Long, count As Long ah>c)1DA*H idNode = FindFullName(“Geometry.Subassembly 1 (Optical components)”) 0~|0D#klB coatNode = FindCoating(“Transmit”) &<&tdShI count = SetAllCoatingProp( idNode, coatNode ) g~lv/.CnA+ 在這個腳本中,Custom Element 2和Custom Element 3中的所有表面將被指定為Transmit coating。 MZgaQU
| |