切換到寬版
  • 廣告投放
  • 稿件投遞
  • 繁體中文
    • 1009閱讀
    • 0回復(fù)

    [分享]結(jié)構(gòu)化屬性設(shè)置 [復(fù)制鏈接]

    上一主題 下一主題
    離線infotek
     
    發(fā)帖
    5414
    光幣
    21250
    光券
    0
    只看樓主 倒序閱讀 樓主  發(fā)表于: 2021-08-25

    該文檔討論設(shè)置表面光學(xué)特性(如coatings, importance samples, materials, raytrace controls, scatter等)的最簡易的方式,它利用基于腳本語言的結(jié)構(gòu)化(或分層次)模塊,等價(jià)于在圖形化的交互式用戶接口中的拖拉方式。

    首先參考一個(gè)樹狀結(jié)構(gòu)目標(biāo),如下所示:

    -Geometry

    -Subassembly 1 (Optical components)

    -Custom Element 2

    -Surface 3

    -Surface 4

    +Custom Element 3

    +Subassembly 2 (Mechanical components)

    +Subassembly 3 (Auxiliary components)

    -Custom Element 1 (Detector components)

    -Surface 1

    編程思想是,用戶已把目標(biāo)樹整理成包含相似功能特征的小組,然后想通過腳本編程語言容易地修改任一組的所有表面的光學(xué)特性,即Subassembly 1中的Optical components。形如SetAll___的一組命令能實(shí)現(xiàn)這一功能,它運(yùn)行用戶指定根節(jié)點(diǎn)ID#及期望的特性值。現(xiàn)在考慮下面的例子,我們想為分層次結(jié)構(gòu)中Subassembly 1下面的所有表面設(shè)置Transmit coating,相應(yīng)的命令為:

    Dim idNode As Long, coatNode As Long, count As Long

    idNode = FindFullName(“Geometry.Subassembly 1 (Optical components)”)

    coatNode = FindCoating(“Transmit”)

    count = SetAllCoatingProp( idNode, coatNode )

    在這個(gè)腳本中,Custom Element 2和Custom Element 3中的所有表面將被指定為Transmit coating。

    QQ:2987619807

     
    分享到