Farvemodeller er metoder til numerisk kortlægge farvespektret . Modellerne består normalt af tre eller fire komponent værdier , såsom de røde , grønne og blå komponenter i RGB-farvemodel . Af hensyn til at skabe en følelse af dybde eller andre grafiske effekter , er det ofte ønskeligt at anvende modellerne til at oprette farveforløb , som er glidende overgange mellem en farve og en anden. Oprettelse gradienter er et spørgsmål om matematisk interpolation mellem farvemodel komponenter. De gradient beregninger kan være så enkel eller kompliceret som du vil. Instruktioner
1
Definer et par koordinater svarer til begyndelsen og slutningen af forløbet. For en lineær gradient , koordinerer dem også angive forløbets retning, så i realiteten , de tjener som hoved og hale af en vektor , der er et retningsbestemt mængde . For en radial gradient , svarer vektoren hale til centrum , og vektoren s størrelse er lig med radius. For eksempel . Hvis du ønsker en diagonal gradient til at fylde et kvadrat, hvis øverste venstre koordinat er ( 0 , 0), og den nederste højre er (100 , 100) , definerer dem samme koordinater som hoved og hale af vektoren Hver linje vinkelret på vektoren mellem hale og hoved vil gradvist ændre sig fra udgangspunktet farve ( 0 , 0 ) til den endelige farve på ( 100 , 100).
2
Beregn størrelsen af den gradient vektor med ligningen M = sqrt ( ( x2 - x1 ) ² + ( y2 - y1 ) ² ), hvor ( x1 , y1 ) og ( x2, y2) er koordinaterne af halen og hovedet hhv . For eksempel , M = sqrt ( (100 - 0) + (100 - 0) ²) = 141,4
3
Beregn afstanden til gradientvektor hale for hvert punkt i . område . For en radial vektor , er ligningen D = sqrt ( ( x - x1 ) ² + (y - y1 ) ² ) , hvor (x , y) er punktets koordinater par . For lineære gradienter , er afstanden ikke til halen selv , men til den linje , der passerer gennem halen vinkelret på vektoren. Ligningen er D = ( x * ( x2 - x1 ) - x1 * x2 + x1 ² + y * ( y2 - y1 ) - y1 * y2 + y1 ²) /M. Sæt enhver afstand mindre end 0 til 0 , og indstille enhver afstand større end størrelsen på størrelsesorden. For eksempel er afstanden af punktet ( 20 , 30 ) D = (20 * 100 + 30 * 100) /141,1 = 35,4 . Alle punkter på linjen passerer vinkelret gennem dette punkt har den samme afstand.
4
Beregn punktets afstand til størrelsesorden forholdet med ligningen R = D /M. For eksempel er forholdet til punktet ( 20, 30 ) R = 35.4/141.4 = 0.25
5
Find de enkelte farvekomponenter for punktet med formlen Cp = R ( C2. - C1 ) + C1 , hvor C1 og C2 er de tilsvarende komponenter for den indledende og endelige farve af gradienten . Denne formel virker for enhver farve model, men når man arbejder med cykliske komponenter, såsom nuancen på HSL model ( Hue Saturation Lightness model) , brugsværdier for C1 og C2 sådan, at C2 minus C1 er mindre end halvdelen af komponenten rækkevidde. < br >
for eksempel, hvis din gradient indledende og afsluttende HSL farver er (10 , 93, 33) og (355 , 28, 60) , forskellen C2 minus C1 for nuance er 355-10 = 345 , hvilket er mere end halvdelen af HSL sortiment af 360 grader , så ligesom arbejdet med vinkler af en cirkel , tilsættes 360 grader for at finde en tilsvarende vinkel . Lad C1 = 360 + 10 = 370 . Derfor nuance komponent er Cp = 0,25 * ( 355-370 ) + 370 = 366,3 . Det er uden for rækkevidde, så trække 360 til en værdi af 6.3. De andre HSL komponenter ikke cyklisk , så beregningerne er mere ligetil. For mætning , Cp = 0,25 * ( 28-93 ) + 93 = 76,8 , og lethed , Cp = 0,25 * (60 - 33) + 33 = 40,0 . Afrunde alle beregninger for en endelig HSL farve (6 , 77, 40).