public Color ColorAt(UVPoint uv) { if (uv.V > 0.8f) { if (uv.U < 0.2f) { return(Ul); } if (uv.U > 0.8f) { return(Ur); } } else if (uv.V < 0.2f) { if (uv.U < 0.2f) { return(Bl); } if (uv.U > 0.8f) { return(Br); } } return(Main); }
public void TakesUV() { var uv = new UVPoint(0, 1); uv.U.Should().Be(0f); uv.V.Should().Be(1f); }
public Color ColorAt(UVPoint uv) { var u2 = MathF.Floor(uv.U * Width); var v2 = MathF.Floor(uv.V * Height); // ReSharper disable once CompareOfFloatsByEqualityOperator return((u2 + v2) % 2f == 0f ? A : B); }
public Color ColorAt(UVPoint uv) { var v = 1f - uv.V; var x = uv.U * (_canvas.Width - 1); var y = v * (_canvas.Height - 1); return(_canvas.PixelAt(Round(in x), Round(in y))); }
public void Scale() { var uv = new UVPoint(0, 1); (uv * 10f).Should().Be(new UVPoint(0, 10)); }