zoukankan      html  css  js  c++  java
  • Maxscript replaceInstances referenceReplace instanceReplace 的区别

    replaceInstances <old_MAXWrapper> <new_MAXWrapper> transferCAs:
    用新的MAXWrapper替换旧的MAXWrapper的所有实例。新旧MAXWrapper必须具有相同的超类。
    如果 transferCAs为 true,则如果发生至少一次转移引用,则old_MAXWrapper上的所有自定义属性都将转移到new_MAXWrapper上。
    不会为MAXWrapper值传输参考。
    警告:
    最少的错误检查,请格外小心。


    instanceReplace <dest_node> <src_node> -- mapped
    referenceReplace <dest_node> <src_node> -- mapped
    使您可以将现有节点转换为实例以及对其他节点的引用。例如,您可以使用它们将一个节点的几何结构替换为另一个节点,也许用于实现自定义的详细程度工具。

    所述 <dest_node>变成一个实例或参考 <src_node> 。作为一个新实例,现有的几何图形和修改器将被删除并由<src_node>代替 ,但所有与节点相关的属性都将保留,例如材质,变换,可见性,名称等。作为新参考,<dest_node>的基础对象成为 <src_node>的世界状态,因此对 src_node的任何更改都会影响 <dest_node>,但是对<dest_node>的更改 是本地的。

    通过临时更改当前场景中一个节点的名称,并与另一个命名节点合并,使第一个节点成为一个节点,可以使用这些功能和mergeMAXFile()函数开发File / Replace函数的自定义脚本版本。 使用instanceReplace()合并的新节点的 实例,删除新合并的节点,然后再次将旧节点重命名。

    这两个函数都是集合映射的,因此您可以选择对象(所有实例)或引用相同的对象。
    例如:

    instanceReplace $foo* $baz
    --makes all the foo* objects be instances of baz's geometry
    --and modifier stack.

  • 相关阅读:
    织梦当前位置去除最后字符
    一霎清明雨,实现考勤管理。
    浅谈:C#中的非泛型集合
    简述结构和类的区别
    项目经理评分系统
    那些年我们一起~做过的魔兽系统
    浅谈:什么是.NET
    MyKTV系统项目的感想
    开发“航班查询及预定”系统
    java面试的一些问题
  • 原文地址:https://www.cnblogs.com/trykle/p/13766746.html
Copyright © 2011-2022 走看看