private void SetFlip(bool value, bool isX) { if (isX) { _isFlipX = value; } else { _isFlipY = value; } _rotateAngle = -_rotateAngle; Calculation.LimitAngle(ref _rotateAngle); _shear = -_shear; if (isX) { _rotatePoint.X = 1 - RotatePoint.X; } else { _rotatePoint.Y = 1 - RotatePoint.Y; } DataBk.State = ControlState.Center; SetRect(CalculateOffset()); }
protected internal RectangleF BaseGroupRotate(float angle, PointF center) { DataBk.State = ControlState.GroupRotate; DataBk.Offset = Calculation.GetRotateAtOffset(DataBk, center, angle); _rotateAngle = DataBk.RotateAngle + angle; Calculation.LimitAngle(ref _rotateAngle); return(CalculateOffset()); }