切换到宽版
  • 广告投放
  • 稿件投递
  • 繁體中文
    • 1015阅读
    • 0回复

    [分享]结构化属性设置 [复制链接]

    上一主题 下一主题
    离线infotek
     
    发帖
    5302
    光币
    20742
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2021-01-21

    该文档讨论设置表面光学特性(如coatings, importance samples, materials, raytrace controls, scatter等)的最简易的方式,它利用基于脚本语言的结构化(或分层次)模块,等价于在图形化的交互式用户接口中的拖拉方式。

    首先参考一个树状结构目标,如下所示:

    -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

    编程思想是,用户已把目标树整理成包含相似功能特征的小组,然后想通过脚本编程语言容易地修改任一组的所有表面的光学特性,即Subassembly 1中的Optical components。形如SetAll___的一组命令能实现这一功能,它运行用户指定根节点ID#及期望的特性值。现在考虑下面的例子,我们想为分层次结构中Subassembly 1下面的所有表面设置Transmit coating,相应的命令为:

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

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

    coatNode = FindCoating(“Transmit”)

    count = SetAllCoatingProp( idNode, coatNode )

    在这个脚本中,Custom Element 2和Custom Element 3中的所有表面将被指定为Transmit coating。

    QQ:2987619807

     
    分享到