拼接

  • 类型:SplitJoint

描述

拼接是一个将两个物体固定在相对位置的约束,两个物体保持相对位置和相对朝向;因此当一个零件移动时,另一个零件也将同时移动并且移动的量也相同。所有有拼接关系的对象,都算作一个拼接。

  • 拼接的特性
  1. 他们共享一个刚体,在设置主权时只需要设置其中的一个就可以。
  2. 两个零件没有接触时,也能使用拼接约束将其连接在一起。
  3. 拼接成为车辆时,轮胎会根据共享的刚体寻找朝向,只能同通过组合单位的MoveTo来去移动刚体。
  4. 所有被拼接在一起的零件共享一个刚体,因此为其中的一个零件施加力时,这个力会作用于整个个刚体。
  5. 被拼接的所有零件共享一个刚体,因此他们只有一个质心,他们的质心是这个共享的刚体的质心。
  6. 当拼接零件中的其中一个零件被移动时,不会影响其他被拼接零件的位置。

属性

    ConnectedTarget     连接目标   SubjectProperty   
    连接的目标零件

继承自RWObject

    Name     名称   string   
    该对象的自定义名称

    ClassName     类型   string   
    该对象对应的对象类型名称

    Parent     父级   RWObject   
    该对象的父级对象

函数

继承自RWObject

    DelAllChild()
    删除所有子对象

    Available()
    检查对象是否可用

    Clone(parent)
    复制自身,若有参数则以参数为父级

    Destroy()
    删除自身

    GetAncestorByName(Name)
    通过对象名字寻找父级对象

    GetAncestorByClassName(className)
    通过对象类型寻找父级对象

    GetChildByName(Name,recursive)
    通过对象名字寻找子级对象

    GetChildByClassName(className,recursive)
    通过对象类型寻找子级对象

    GetAllChild()
    寻找自身所有子级对象,并作为一个列表返回

    GetAllDescendant()
    递归寻找自身所有后代,并作为一个列表返回

    IsAncestor(TarObj)
    判断自身是否为目标对象的祖先

    IsDescendant(TarObj)
    判断自身是否为目标对象的后代

    WaitForChild(childName,timeout)
    寻找自身的子对象。如果没有子对象,在没有填写timeout参数时,会暂停进程直到找到子对象;如果填写了timeout参数,会根据参数时间暂停进程,超出参数时间后,进程照常进行

    Child(childName)
    根据给定的名字寻找自身的子对象

    Equals(TarObj)
    判断自身是否为目标对象,结果为真返回True,结果为假返回False;注意克隆、新建同类型、同名对象,equal结果均为假

    IsClass(className)
    判断自身是否为给定的对象类型

事件

继承自RWObject

    Destroyed()
    删除自身时触发

    ChildAdded(childobject)
    添加子对象时触发

    ChildRemoved(childobject)
    移除子对象时触发

    DescendantAdded(descendantobject)
    添加后代时触发

    DescendantRemoved(descendantobject)
    移除后代时触发

    AncestryChanged(AncestryChanged)
    祖先变更时触发

文档更新时间: 2020-08-25 10:44   作者:雷达