Como usar um gradiente de preencher javafx

Em vez de usar uma cor sólida, você pode especificar um preenchimento Gradiente, que combina duas cores uniformemente em toda a forma. JavaFX proporciona duas classes para trabalhar com gradientes: Gradiente linear e RadialGradient.

UMA Gradiente linear é criado a partir de dois pontos de cor. Imagine uma linha traçada entre estes dois pontos. O preenchimento de gradiente varia a cor suavemente da cor que é definido no primeiro ponto para o conjunto de cores no segundo ponto. Em seguida, ele estende as cores desta linha em ângulos de 90 graus para a linha para preencher uma área inteira.

UMA gradiente radial é criado a partir de um ponto central de uma cor e uma segunda cor sobre o raio de um círculo. O preenchimento varia a cor suavemente do centro cor com a cor exterior.

A tabela mostra os construtores para o Gradiente linear e RadialGradient classes, em conjunto com o construtor para o Pare classe, que é usado para especificar as cores usadas para o gradiente.

Construtores de classes Gradiente
classe ConstructorDescrição
LinearGradient (double STARTX,
double starty,
double FimX,
double Endy,
boolean proporcional,
CycleMethod cycleMethod,
Pare ... pára)
Cria um gradiente linear. As paradas aparecem ao longo da linha
definida pelos pontos de início e fim.

Cyclemethod pode ser CycleMethod.NO_CYCLE,
CycleMethod.REPEAT, ou CycleMethod.REFLECT.

RadialGradient (double focusAngle,
double focusDistance,
double centerX,
double centerY,
raio duplo,
boolean proporcional,
CycleMethod cycleMethod,
Pare ... pára)
Cria um gradiente radial. As paragens são circulares, de partida
a partir do ponto central do gradiente e estendendo-se para o raio.
FocusAngle é geralmente definido como zero.
Parar (double offset, cor Cor)Define um limite de cor sobre o gradiente. O deslocamento é um duplo
que vai de 0.0 a 1.0. Para um gradiente linear, 0,0 representa
o ponto de início do gradiente e 1.0 representa o ponto final.
Para um gradiente radial, 0,0 representa o centro e 1.0 representa
o raio.

Vários dos parâmetros utilizados com esses construtores merecer um pouco de explicação:

  • Proporcional: Este parâmetro determina as unidades de medida utilizadas para os pontos de início e fim de um gradiente linear ou o ponto de centro e raio de um círculo. Se este parâmetro é falso, as coordenadas são expressos em pixels.

    Se for verdade, as coordenadas variam de 0,0 a 1,0 e são proporcionais ao tamanho da forma a ser preenchido. Na maioria dos casos, é mais fácil trabalhar com coordenadas proporcionais, de modo que este parâmetro deve normalmente ser definido como verdadeiro.



  • CyclicalMethod: O padrão é para um gradiente a começar com uma cor, a transição para uma outra cor, e em seguida terminar. No entanto, você pode criar gradientes que percorrer suas cores repetidamente usando um método de ciclo diferente NO_CYCLE.

    Se você especificar REPEAT, o gradiente se repete para cada ciclo. Se especificar refletir, o gradiente inverte a ordem das paradas para cada ciclo.

  • Pare de offset: As paragens de representar as cores usadas para a transição gradiente. O parâmetro de deslocamento para uma paragem determina onde ao longo do gradiente da paragem aparece.

    Um valor de 0,0 significa que o batente aparece no início de um gradiente linear ou o centro de um gradiente radial. Um valor de 1,0 significa que o batente aparece no final do gradiente linear ou no raio de um gradiente radial.

    Todos os gradientes deve ter pelo menos duas paradas, uma no início ou no centro e outra no final ou raio. No entanto, você pode criar mais gradientes complexos adicionando paragens suplementares. Nesse caso, a paragem de deslocamento proporcional representa uma posição ao longo do comprimento da inclinação. Por exemplo, uma paragem de deslocamento de 0,5 a locais de paragem no centro da linha de gradiente ou raio.

    Além disso, as paradas de início e fim não tem que ser no deslocamento 0.0 ou 1.0. Por exemplo, se você não quer um pouco de cor sólida em cada extremidade do gradiente antes da transição de cor inicia, você pode especificar 0,2 e 0,8 como os deslocamentos de parada de início e fim.

Este exemplo cria um preenchimento gradiente que varia a cor de magenta para amarelo:

GradientPaint gp = new GradientPaint (0, 0, Color.Magenta, 0, 100, Color.YELLOW) -

Publicações relacionadas