SEToolbox.Models.StructureCubeGridModel.RotateStructure C# (CSharp) Method

RotateStructure() public method

public RotateStructure ( VRageMath quaternion ) : void
quaternion VRageMath
return void
        public void RotateStructure(VRageMath.Quaternion quaternion)
        {
            // Rotate the ship/station in specified direction.
            var o = CubeGrid.PositionAndOrientation.Value.ToQuaternion() * quaternion;
            o.Normalize();
            var p = new MyPositionAndOrientation(o.ToMatrix());

            CubeGrid.PositionAndOrientation = new MyPositionAndOrientation
            {
                Position = CubeGrid.PositionAndOrientation.Value.Position,
                Forward = p.Forward,
                Up = p.Up
            };

            UpdateGeneralFromEntityBase();
        }