Skip to content

SweepGradient

SweepGradient #

Bases: Gradient

Creates a sweep gradient centered at center that starts at start_angle and ends at end_angle.

More information here.

center #

center: Alignment = field(default_factory=lambda: CENTER)

The center of the gradient, as an offset into the (-1.0, -1.0) x (1.0, 1.0) square describing the gradient which will be mapped onto the paint box.

For example, an Alignment.CENTER will place the sweep gradient in the center of the box.

colors #

colors: list[str]

The colors the gradient should obtain at each of the stops. This list must contain at least two colors.

If stops is provided, this list must have the same length as stops.

end_angle #

end_angle: Number = pi * 2

The angle in radians at which stop 1.0 of the gradient is placed.

rotation #

rotation: Number | None = None

The rotation of the gradient in radians, around the center-point of its bounding box.

start_angle #

start_angle: Number = 0.0

The angle in radians at which stop 0.0 of the gradient is placed.

stops #

stops: list[Number] | None = None

A list of values from 0.0 to 1.0 that denote fractions along the gradient.

If provided, this list must have the same length as colors. If the first value is not 0.0, then a stop with position 0.0 and a color equal to the first color in colors is implied. If the last value is not 1.0, then a stop with position 1.0 and a color equal to the last color in colors is implied.

tile_mode #

tile_mode: GradientTileMode = CLAMP

How this gradient should tile the plane beyond in the region before begin and after end.

Examples#

Container with sweep gradient#

import math

import flet as ft


def main(page: ft.Page):
    page.add(
        ft.Container(
            alignment=ft.Alignment.CENTER,
            width=150,
            height=150,
            border_radius=ft.BorderRadius.all(5),
            gradient=ft.SweepGradient(
                center=ft.Alignment.CENTER,
                start_angle=0.0,
                end_angle=math.pi * 2,
                stops=[0.0, 0.25, 0.5, 0.75, 1.0],
                colors=[
                    "0xFF4285F4",
                    "0xFF34A853",
                    "0xFFFBBC05",
                    "0xFFEA4335",
                    "0xFF4285F4",
                ],
            ),
        )
    )


ft.run(main)

container