private SpacePin FindPinByName(GameObject rig, string pinName) { GameObject pinObject = GameObject.Find(pinName); Assert.IsNotNull(pinObject); SpacePin spacePin = pinObject.GetComponent <SpacePin>(); return(spacePin); }
private void FindAndSetPin(GameObject rig, string pinName, Vector3 offset) { SpacePin spacePin = FindPinByName(rig, pinName); Assert.IsNotNull(spacePin); Pose virtualPose = spacePin.ModelingPoseGlobal; Pose frozenPose = virtualPose; frozenPose.position += offset; spacePin.SetFrozenPose(frozenPose); }
private void FindAndCheckPin(GameObject rig, string pinName) { SpacePin spacePin = FindPinByName(rig, pinName); Pose virtualPose = spacePin.ModelingPoseGlobal; Pose lockedPose = spacePin.LockedPose; Pose frozenPose = WorldLockingManager.GetInstance().FrozenFromLocked.Multiply(lockedPose); Vector3 offset = frozenPose.position - virtualPose.position; float len = Mathf.Abs(offset.magnitude - 1.0f); Assert.Less(len, 1.0e-4f); }
private void FindAndCheckPin(GameObject rig, string pinName) { SpacePin spacePin = FindPinByName(rig, pinName); Pose virtualPose = spacePin.ModelingPoseGlobal; Pose lockedPose = spacePin.LockedPose; Debug.Log($"FFL:{WorldLockingManager.GetInstance().FrozenFromLocked.position.ToString("F3")}" + $"/ {WorldLockingManager.GetInstance().FrozenFromLocked.rotation.ToString("F3")}"); Pose frozenPose = WorldLockingManager.GetInstance().FrozenFromLocked.Multiply(lockedPose); Vector3 offset = frozenPose.position - virtualPose.position; float len = Mathf.Abs(offset.magnitude - 1.0f); Assert.Less(len, 1.0e-4f, $"pin={spacePin.name} fr={frozenPose.position.ToString("F3")} vi={virtualPose.position.ToString("F3")}"); }
/// <summary> /// Find the index of a space pin in the space pins list. /// </summary> /// <param name="spacePin">The pin to find.</param> /// <returns>Index in the list if found, else -1.</returns> private int FindSpacePin(SpacePin spacePin) { return(FindByPredicate(spacePins, x => x == spacePin)); }