FlatRedBall.Glue.ElementRuntime.DetachAndMoveParentToOrigin C# (CSharp) Method

DetachAndMoveParentToOrigin() private static method

private static DetachAndMoveParentToOrigin ( PositionedObject asPositionedObject, PositionedObject parent, Vector3 &oldParentPosition, Matrix &oldParentRotation ) : void
asPositionedObject PositionedObject
parent PositionedObject
oldParentPosition Vector3
oldParentRotation Matrix
return void
        private static void DetachAndMoveParentToOrigin(PositionedObject asPositionedObject, PositionedObject parent, ref Vector3 oldParentPosition, ref Matrix oldParentRotation)
        {
            if (parent != null)
            {
                asPositionedObject.Detach();

                oldParentPosition = parent.Position;
                oldParentRotation = parent.RotationMatrix;

                parent.Position = new Vector3();

                if (parent is Camera)
                {
                    parent.Z = 40;
                }
                parent.RotationMatrix = Matrix.Identity;
            }
        }