Share via


OrienterThreeBody 类

定义

支持在具有位置) 的完整 3-DOF (6-DOF 中计算隐式旋转的派生类。

public class OrienterThreeBody : Microsoft.MixedReality.WorldLocking.Core.Orienter
type OrienterThreeBody = class
    inherit Orienter
Public Class OrienterThreeBody
Inherits Orienter
继承
UnityEngine.MonoBehaviour
OrienterThreeBody

注解

基本 Orienter 类使用仅调整偏航的简化假设,即沿重力矢量 Y 轴旋转,而 OrienterThreeBody 计算任意 3-DOF 旋转,使建模空间与提供的物理参考点对齐。 由于计算这种旋转至少需要三个非共线点,因此在它们可用之前,它会回退到简化的计算上。 总结一下:1) 零点 - 标识转换 2) 1 点 - 位置对齐仅 (标识旋转) 3) 所有点共线 - 偏航和俯仰线,但不滚动线。 4) 非共线 - 3-DOF 对齐。

构造函数

OrienterThreeBody()

支持在具有位置) 的完整 3-DOF (6-DOF 中计算隐式旋转的派生类。

字段

actives

当前正在处理的片段中的可定向。

(继承自 Orienter)

属性

AlignmentManager

支持在具有位置) 的完整 3-DOF (6-DOF 中计算隐式旋转的派生类。

(继承自 Orienter)

方法

AverageRotation(Orienter+WeightedRotation, Orienter+WeightedRotation)

计算表示两个输入加权旋转的新加权旋转。

(继承自 Orienter)
ComputeRotation(IOrientable, IOrientable)

计算偏航和俯仰,使虚拟直线与物理线保持一致。

ComputeRotations()

替代 以计算不受约束的旋转,作为重力向量的旋转,Y 轴。

Register(IOrientable)

支持在具有位置) 的完整 3-DOF (6-DOF 中计算隐式旋转的派生类。

(继承自 Orienter)
Reorient(FragmentId, IAlignmentManager)

支持在具有位置) 的完整 3-DOF (6-DOF 中计算隐式旋转的派生类。

(继承自 Orienter)
Unregister(IOrientable)

支持在具有位置) 的完整 3-DOF (6-DOF 中计算隐式旋转的派生类。

(继承自 Orienter)

适用于