@@ -1713,238 +1713,6 @@ TEST_P(EntityTest, SrgbToLinearFilter) {
17131713 ASSERT_TRUE (OpenPlaygroundHere (callback));
17141714}
17151715
1716- TEST_P (EntityTest, TTTBlendColor) {
1717- {
1718- Color src = {1 , 0 , 0 , 0.5 };
1719- Color dst = {1 , 0 , 1 , 1 };
1720- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kClear ),
1721- Color (0 , 0 , 0 , 0 ));
1722- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSource ),
1723- Color (1 , 0 , 0 , 0.5 ));
1724- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestination ),
1725- Color (1 , 0 , 1 , 1 ));
1726- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOver ),
1727- Color (1.5 , 0 , 0.5 , 1 ));
1728- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOver ),
1729- Color (1 , 0 , 1 , 1 ));
1730- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceIn ),
1731- Color (1 , 0 , 0 , 0.5 ));
1732- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationIn ),
1733- Color (0.5 , 0 , 0.5 , 0.5 ));
1734- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOut ),
1735- Color (0 , 0 , 0 , 0 ));
1736- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOut ),
1737- Color (0.5 , 0 , 0.5 , 0.5 ));
1738- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceATop ),
1739- Color (1.5 , 0 , 0.5 , 1 ));
1740- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationATop ),
1741- Color (0.5 , 0 , 0.5 , 0.5 ));
1742- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kXor ),
1743- Color (0.5 , 0 , 0.5 , 0.5 ));
1744- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kPlus ), Color (1 , 0 , 1 , 1 ));
1745- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kModulate ),
1746- Color (1 , 0 , 0 , 0.5 ));
1747- }
1748-
1749- {
1750- Color src = {1 , 1 , 0 , 1 };
1751- Color dst = {1 , 0 , 1 , 1 };
1752-
1753- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kClear ),
1754- Color (0 , 0 , 0 , 0 ));
1755- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSource ),
1756- Color (1 , 1 , 0 , 1 ));
1757- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestination ),
1758- Color (1 , 0 , 1 , 1 ));
1759- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOver ),
1760- Color (1 , 1 , 0 , 1 ));
1761- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOver ),
1762- Color (1 , 0 , 1 , 1 ));
1763- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceIn ),
1764- Color (1 , 1 , 0 , 1 ));
1765- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationIn ),
1766- Color (1 , 0 , 1 , 1 ));
1767- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOut ),
1768- Color (0 , 0 , 0 , 0 ));
1769- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOut ),
1770- Color (0 , 0 , 0 , 0 ));
1771- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceATop ),
1772- Color (1 , 1 , 0 , 1 ));
1773- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationATop ),
1774- Color (1 , 0 , 1 , 1 ));
1775- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kXor ), Color (0 , 0 , 0 , 0 ));
1776- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kPlus ), Color (1 , 1 , 1 , 1 ));
1777- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kModulate ),
1778- Color (1 , 0 , 0 , 1 ));
1779- }
1780-
1781- {
1782- Color src = {1 , 1 , 0 , 0.2 };
1783- Color dst = {1 , 1 , 1 , 0.5 };
1784-
1785- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kClear ),
1786- Color (0 , 0 , 0 , 0 ));
1787- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSource ),
1788- Color (1 , 1 , 0 , 0.2 ));
1789- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestination ),
1790- Color (1 , 1 , 1 , 0.5 ));
1791- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOver ),
1792- Color (1.8 , 1.8 , 0.8 , 0.6 ));
1793- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOver ),
1794- Color (1.5 , 1.5 , 1 , 0.6 ));
1795- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceIn ),
1796- Color (0.5 , 0.5 , 0 , 0.1 ));
1797- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationIn ),
1798- Color (0.2 , 0.2 , 0.2 , 0.1 ));
1799- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOut ),
1800- Color (0.5 , 0.5 , 0 , 0.1 ));
1801- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOut ),
1802- Color (0.8 , 0.8 , 0.8 , 0.4 ));
1803- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceATop ),
1804- Color (1.3 , 1.3 , 0.8 , 0.5 ));
1805- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationATop ),
1806- Color (0.7 , 0.7 , 0.2 , 0.2 ));
1807- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kXor ),
1808- Color (1.3 , 1.3 , 0.8 , 0.5 ));
1809- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kPlus ),
1810- Color (1 , 1 , 1 , 0.7 ));
1811- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kModulate ),
1812- Color (1 , 1 , 0 , 0.1 ));
1813- }
1814-
1815- {
1816- Color src = {1 , 0.5 , 0 , 0.2 };
1817- Color dst = {1 , 1 , 0.5 , 0.5 };
1818- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kClear ),
1819- Color (0 , 0 , 0 , 0 ));
1820- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSource ),
1821- Color (1 , 0.5 , 0 , 0.2 ));
1822- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestination ),
1823- Color (1 , 1 , 0.5 , 0.5 ));
1824- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOver ),
1825- Color (1.8 , 1.3 , 0.4 , 0.6 ));
1826- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOver ),
1827- Color (1.5 , 1.25 , 0.5 , 0.6 ));
1828- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceIn ),
1829- Color (0.5 , 0.25 , 0 , 0.1 ));
1830- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationIn ),
1831- Color (0.2 , 0.2 , 0.1 , 0.1 ));
1832- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOut ),
1833- Color (0.5 , 0.25 , 0 , 0.1 ));
1834- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOut ),
1835- Color (0.8 , 0.8 , 0.4 , 0.4 ));
1836- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceATop ),
1837- Color (1.3 , 1.05 , 0.4 , 0.5 ));
1838- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationATop ),
1839- Color (0.7 , 0.45 , 0.1 , 0.2 ));
1840- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kXor ),
1841- Color (1.3 , 1.05 , 0.4 , 0.5 ));
1842- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kPlus ),
1843- Color (1 , 1 , 0.5 , 0.7 ));
1844- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kModulate ),
1845- Color (1 , 0.5 , 0 , 0.1 ));
1846- }
1847-
1848- {
1849- Color src = {0.5 , 0.5 , 0 , 0.2 };
1850- Color dst = {0 , 1 , 0.5 , 0.5 };
1851- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kClear ),
1852- Color (0 , 0 , 0 , 0 ));
1853- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSource ),
1854- Color (0.5 , 0.5 , 0 , 0.2 ));
1855- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestination ),
1856- Color (0 , 1 , 0.5 , 0.5 ));
1857- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOver ),
1858- Color (0.5 , 1.3 , 0.4 , 0.6 ));
1859- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOver ),
1860- Color (0.25 , 1.25 , 0.5 , 0.6 ));
1861- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceIn ),
1862- Color (0.25 , 0.25 , 0 , 0.1 ));
1863- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationIn ),
1864- Color (0 , 0.2 , 0.1 , 0.1 ));
1865- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOut ),
1866- Color (0.25 , 0.25 , 0 , 0.1 ));
1867- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOut ),
1868- Color (0 , 0.8 , 0.4 , 0.4 ));
1869- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceATop ),
1870- Color (0.25 , 1.05 , 0.4 , 0.5 ));
1871- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationATop ),
1872- Color (0.25 , 0.45 , 0.1 , 0.2 ));
1873- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kXor ),
1874- Color (0.25 , 1.05 , 0.4 , 0.5 ));
1875- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kPlus ),
1876- Color (0.5 , 1 , 0.5 , 0.7 ));
1877- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kModulate ),
1878- Color (0 , 0.5 , 0 , 0.1 ));
1879- }
1880-
1881- {
1882- Color src = {0.5 , 0.5 , 0.2 , 0.2 };
1883- Color dst = {0.2 , 1 , 0.5 , 0.5 };
1884- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kClear ),
1885- Color (0 , 0 , 0 , 0 ));
1886- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSource ),
1887- Color (0.5 , 0.5 , 0.2 , 0.2 ));
1888- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestination ),
1889- Color (0.2 , 1 , 0.5 , 0.5 ));
1890- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOver ),
1891- Color (0.66 , 1.3 , 0.6 , 0.6 ));
1892- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOver ),
1893- Color (0.45 , 1.25 , 0.6 , 0.6 ));
1894- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceIn ),
1895- Color (0.25 , 0.25 , 0.1 , 0.1 ));
1896- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationIn ),
1897- Color (0.04 , 0.2 , 0.1 , 0.1 ));
1898- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOut ),
1899- Color (0.25 , 0.25 , 0.1 , 0.1 ));
1900- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOut ),
1901- Color (0.16 , 0.8 , 0.4 , 0.4 ));
1902- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceATop ),
1903- Color (0.41 , 1.05 , 0.5 , 0.5 ));
1904- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationATop ),
1905- Color (0.29 , 0.45 , 0.2 , 0.2 ));
1906- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kXor ),
1907- Color (0.41 , 1.05 , 0.5 , 0.5 ));
1908- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kPlus ),
1909- Color (0.7 , 1 , 0.7 , 0.7 ));
1910- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kModulate ),
1911- Color (0.1 , 0.5 , 0.1 , 0.1 ));
1912- }
1913-
1914- {
1915- Color src = {0.5 , 0.5 , 0.2 , 0.2 };
1916- Color dst = {0.2 , 0.2 , 0.5 , 0.5 };
1917- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kClear ),
1918- Color (0 , 0 , 0 , 0 ));
1919- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSource ),
1920- Color (0.5 , 0.5 , 0.2 , 0.2 ));
1921- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestination ),
1922- Color (0.2 , 0.2 , 0.5 , 0.5 ));
1923- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOver ),
1924- Color (0.66 , 0.66 , 0.6 , 0.6 ));
1925- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOver ),
1926- Color (0.45 , 0.45 , 0.6 , 0.6 ));
1927- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceIn ),
1928- Color (0.25 , 0.25 , 0.1 , 0.1 ));
1929- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationIn ),
1930- Color (0.04 , 0.04 , 0.1 , 0.1 ));
1931- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceOut ),
1932- Color (0.25 , 0.25 , 0.1 , 0.1 ));
1933- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationOut ),
1934- Color (0.16 , 0.16 , 0.4 , 0.4 ));
1935- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kSourceATop ),
1936- Color (0.41 , 0.41 , 0.5 , 0.5 ));
1937- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kDestinationATop ),
1938- Color (0.29 , 0.29 , 0.2 , 0.2 ));
1939- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kXor ),
1940- Color (0.41 , 0.41 , 0.5 , 0.5 ));
1941- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kPlus ),
1942- Color (0.7 , 0.7 , 0.7 , 0.7 ));
1943- ASSERT_EQ (Color::BlendColor (src, dst, BlendMode::kModulate ),
1944- Color (0.1 , 0.1 , 0.1 , 0.1 ));
1945- }
1946- }
1947-
19481716TEST_P (EntityTest, SdfText) {
19491717 auto callback = [&](ContentContext& context, RenderPass& pass) -> bool {
19501718 SkFont font;
0 commit comments