Compose Gradients

Jetpack Compose Mesh Gradient #190

Remix

Mesh Points

Point Position Preview Hex
1, 1 0f, 0f
1, 2 0.33f, 0f
1, 3 0.67f, 0f
1, 4 1f, 0f
2, 1 0f, 0.33f
2, 2 0.31f, 0.47f
2, 3 0.78f, 0.33f
2, 4 1f, 0.33f
3, 1 0f, 0.67f
3, 2 0.44f, 0.81f
3, 3 0.76f, 0.67f
3, 4 1f, 0.74f
4, 1 0f, 1f
4, 2 0.27f, 1f
4, 3 0.65f, 1f
4, 4 1f, 1f

Jetpack Compose Code

val meshGradient = remember {
    MeshGradientPainter(
        rows = 3,
        columns = 3,
        hasBicubicColor = false,
    ) {
        setVertex(0, 0, Offset(0f, 0f), Color(0xFF6B5DCB))
        setVertex(0, 1, Offset(0.33f, 0f), Color(0xFFFE885B))
        setVertex(0, 2, Offset(0.67f, 0f), Color(0xFFFFA65A))
        setVertex(0, 3, Offset(1f, 0f), Color(0xFFF4CC69))
        setVertex(1, 0, Offset(0f, 0.33f), Color(0xFFF23D64))
        setVertex(1, 1, Offset(0.31f, 0.47f), Color(0xFFFF5B5A))
        setVertex(1, 2, Offset(0.78f, 0.33f), Color(0xFFFF8C5A))
        setVertex(1, 3, Offset(1f, 0.33f), Color(0xFF6965CE))
        setVertex(2, 0, Offset(0f, 0.67f), Color(0xFFFF565A))
        setVertex(2, 1, Offset(0.44f, 0.81f), Color(0xFFFF3456))
        setVertex(2, 2, Offset(0.76f, 0.67f), Color(0xFFFFC95A))
        setVertex(2, 3, Offset(1f, 0.74f), Color(0xFFFCAB5D))
        setVertex(3, 0, Offset(0f, 1f), Color(0xFFFFC45B))
        setVertex(3, 1, Offset(0.27f, 1f), Color(0xFFFFA65A))
        setVertex(3, 2, Offset(0.65f, 1f), Color(0xFFFE4355))
        setVertex(3, 3, Offset(1f, 1f), Color(0xFF6860CC))
    }
}