/// <summary> /// Initializes a new instance of the <see cref="RandomColourStyle" /> class. /// </summary> /// <param name="from">The first colour to interpolate from.</param> /// <param name="to">The second colour to interpolate to.</param> /// <param name="position">The position.</param> public RandomColourStyle(Colour @from, Colour to, Vector2 position = default(Vector2)) { From = @from; To = to; Position = position; float x = (float) Math.Round(position.X, 3); float y = (float) Math.Round(position.Y, 3); float rand = TileRandom.Random(From.ToArgb() + to.ToArgb(), x, y); PositionColour = Colour.Interpolate(From, To, rand); }
/// <summary> /// Serializes the specified colour to an XML element. /// </summary> /// <param name="colour">The colour.</param> /// <param name="name">The name of the created element.</param> /// <param name="content">Any additional content to store in the element.</param> /// <returns></returns> private static XElement Serialize(Colour colour, [NotNull] string name, [NotNull] params object[] content) { return new XElement( name, new XAttribute("red", colour.R.ToString("R", _culture)), new XAttribute("green", colour.G.ToString("R", _culture)), new XAttribute("blue", colour.B.ToString("R", _culture)), new XAttribute("alpha", colour.A.ToString("R", _culture)), content); }
/// <summary> /// Initializes a new instance of the <see cref="SolidColourStyle" /> class. /// </summary> /// <param name="red">The red component.</param> /// <param name="green">The green component.</param> /// <param name="blue">The blue component.</param> /// <param name="alpha">The alpha component.</param> public SolidColourStyle(float red, float green, float blue, float alpha = 1f) { Colour = new Colour(red, green, blue, alpha); }
/// <summary> /// Initializes a new instance of the <see cref="SolidColourStyle" /> class. /// </summary> /// <param name="red">The red component.</param> /// <param name="green">The green component.</param> /// <param name="blue">The blue component.</param> /// <param name="alpha">The alpha component.</param> public SolidColourStyle(byte red, byte green, byte blue, byte alpha = 255) { Colour = new Colour(red, green, blue, alpha); }
/// <summary> /// Initializes a new instance of the <see cref="SolidColourStyle" /> class. /// </summary> /// <param name="colour">The colour.</param> /// <param name="alpha">The alpha.</param> public SolidColourStyle(Colour colour, float alpha) { Colour = new Colour(colour, alpha); }
/// <summary> /// Initializes a new instance of the <see cref="SolidColourStyle" /> class. /// </summary> /// <param name="colour">The colour.</param> public SolidColourStyle(Colour colour) { Colour = colour; }