Cómo utilizar un relleno de degradado en javafx

En lugar de utilizar un color sólido, se puede especificar una relleno de degradado, que combina dos colores uniformemente a través de la forma. JavaFX proporciona dos clases para trabajar con gradientes: Gradiente lineal y radialGradient.

UN gradiente lineal se crea a partir de dos puntos de color. Imagine una línea trazada entre estos dos puntos. El relleno de gradiente varía el color suavemente desde el color que se ha configurado en el primer punto al color establecido en el segundo punto. A continuación, se extiende los colores en esta línea en ángulo de 90 grados a la línea para llenar toda una zona.

UN gradiente radial se crea a partir de un punto central de un color y un segundo color en el radio de un círculo. El relleno varía el color suavemente desde el centro color para el color exterior.

La tabla muestra los constructores para el Gradiente lineal y radialGradient clases, junto con el constructor de la Detener clase, que se utiliza para especificar los colores que se utilizan para el gradiente.

Constructores para las clases de gradiente
clase ConstructorDescripción
LinearGradient (doble startX,
doble starty,
doble EndX,
doble EndY,
boolean proporcional,
CycleMethod cycleMethod,
Detener detiene ...)
Crea un gradiente lineal. Las paradas aparecen a lo largo de la línea de
definida por los puntos de inicio y fin.

Cyclemethod puede ser CycleMethod.NO_CYCLE,
CycleMethod.REPEAT, o CycleMethod.REFLECT.

RadialGradient (doble focusAngle,
doble focusDistance,
doble centerx,
doble centery,
radio doble,
boolean proporcional,
CycleMethod cycleMethod,
Detener detiene ...)
Crea un gradiente radial. Los topes son circulares, de partida
desde el punto central del gradiente y se extiende hasta el radio.
FocusAngle por lo general se pone a cero.
Detener (doble desplazamiento, el color del color)Define un nivel de color en el gradiente. El desplazamiento es un doble
que oscila de 0,0 a 1,0. Para un gradiente lineal, 0.0 representa
el punto de inicio del gradiente y 1,0 representa el punto final.
Para un gradiente radial, 0,0 representa el centro y 1,0 representa
el radio.

Varios de los parámetros utilizados con estos constructores merecen un poco de explicación:

  • Proporcional: Este parámetro determina las unidades de medida utilizados para los puntos de inicio y fin de un gradiente lineal o el punto central y el radio de un círculo. Si este parámetro es falso, las coordenadas se expresan en píxeles.

    Si es verdad, las coordenadas varían de 0,0 a 1,0 y son proporcionales al tamaño de la forma que se llena. En la mayoría de los casos, es más fácil trabajar con coordenadas proporcionales, por lo que este parámetro tiene que ajustarse a la realidad.

  • CyclicalMethod: El valor por defecto es para un gradiente de empezar con un color, transición a otro color, y luego termina. Sin embargo, puede crear gradientes que desplazarse a través de sus colores en varias ocasiones por el uso de un método de ciclo que no sea NO_CYCLE.

    Si especifica REPEAT, el gradiente se repite para cada ciclo. Si especifica reflexionar, el gradiente se invierte el orden de las paradas para cada ciclo.

  • Deja de offset: Las paradas representan los colores utilizados para la transición de gradiente. El parámetro de desplazamiento para una parada determina dónde lo largo del gradiente aparece la parada.

    Un valor de 0,0 significa que la parada aparece al comienzo de un gradiente lineal o el centro de un gradiente radial. Un valor de 1,0 significa que la parada aparece al final del gradiente lineal o en el radio de un gradiente radial.

    Todos los gradientes deben tener al menos dos paradas, una en el inicio o en el centro y el otro al final o el radio. Sin embargo, puede crear más degradados complejos mediante la adición de paradas adicionales. En ese caso, el tope de desplazamiento representa una posición proporcional a lo largo de la longitud del gradiente. Por ejemplo, una parada de desplazamiento de 0,5 lugares de la parada en el centro de la línea de gradiente o el radio.

    Además, las paradas de inicio y fin no tienen que estar en el offset 0.0 o 1.0. Por ejemplo, si usted no quiere un poco de color sólido en cualquiera de los extremos del gradiente antes del comienzo de la transición de color, puede especificar 0,2 y 0,8 como los desplazamientos inicial y final de parada.

Este ejemplo crea un relleno de gradiente que varía el color de magenta a amarillo:

GradientPaint gp = new GradientPaint (0, 0, Color.Magenta, 0, 100, Color.YELLOW) -
Artículos Relacionados