protected override void Execute(WorldRange selection) { AffineTransform transform = new AffineTransform(); float radians = Mathf.DegToRad(this.angleDegrees); transform = transform.RotateY(radians); List <WorldEditBlock> blocks = new List <WorldEditBlock>(); blocks.AddRange(this.UserSession.Clipboard.GetBlocks()); blocks.AddRange(this.UserSession.Clipboard.GetPlants()); blocks.AddRange(this.UserSession.Clipboard.GetWorldObjects()); for (int i = 0; i < blocks.Count; i++) { WorldEditBlock block = blocks[i]; block.RotateBlock(transform, this.angleDegrees, radians); blocks[i] = block; } this.UserSession.Clipboard.Clear(); this.UserSession.Clipboard.Parse(blocks); }
public void Rotate(float degrees) { AffineTransform transform = new AffineTransform(); float radians = Mathf.DegToRad(degrees); transform = transform.RotateY(radians); List <WorldEditBlock> blocks = new List <WorldEditBlock>(); blocks.AddRange(this.GetBlocks()); blocks.AddRange(this.GetPlants()); blocks.AddRange(this.GetWorldObjects()); for (int i = 0; i < blocks.Count; i++) { WorldEditBlock block = blocks[i]; block.RotateBlock(transform, degrees, radians); blocks[i] = block; } this.Clear(); this.Parse(blocks); }
public AffineTransform RotateZDeg(float pAngleDeg) { return(RotateZ(Mathf.DegToRad(pAngleDeg))); }