private static Vector2[] setupGradient(int gradSize) { Vector2[] gradients = new Vector2[gradSize]; for (int i = 0; i < gradients.Length; ++i) { Vector2 v = new Vector2(JryMath.Sin(0.785398163f * i) , JryMath.Cos(0.785398163f * i)); gradients[i] = v; } return(gradients); }
public void RotateSelected(float factor, Vector2 center) { if (!HasSelectedPoints) { return; } for (int i = 0; i < _points.Count; i++) { var pt = _points[i]; var index = _selectedPoints.IndexOf(pt); if (index != -1) { pt = pt - center; var p = new Vector2(JryMath.Cos(factor) * pt.X - JryMath.Sin(factor) * pt.Y, JryMath.Sin(factor) * pt.X + JryMath.Cos(factor) * pt.Y); _points[i] = p + center; _selectedPoints[index] = _points[i]; } } recalcEdges(); }