Package edu.wpi.first.wpilibj.util
Class Color
java.lang.Object
edu.wpi.first.wpilibj.util.Color
Represents colors.
Limited to 12 bits of precision.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
Represents a color channel in an RGB color. -
Field Summary
FieldsModifier and TypeFieldDescriptionfinal double
Blue component (0-1).final double
Green component (0-1).static final Color
0xF0F8FF.static final Color
0xFAEBD7.static final Color
0x00FFFF.static final Color
0x7FFFD4.static final Color
0xF0FFFF.static final Color
0xF5F5DC.static final Color
0xFFE4C4.static final Color
0x000000.static final Color
0xFFEBCD.static final Color
0x0000FF.static final Color
0x8A2BE2.static final Color
0xA52A2A.static final Color
0xDEB887.static final Color
0x5F9EA0.static final Color
0x7FFF00.static final Color
0xD2691E.static final Color
0xFF7F50.static final Color
0x6495ED.static final Color
0xFFF8DC.static final Color
0xDC143C.static final Color
0x00FFFF.static final Color
0x00008B.static final Color
0x008B8B.static final Color
0xB8860B.static final Color
0xA9A9A9.static final Color
0x006400.static final Color
0xBDB76B.static final Color
0x8B008B.static final Color
0x556B2F.static final Color
0xFF8C00.static final Color
0x9932CC.static final Color
0x8B0000.static final Color
0xE9967A.static final Color
0x8FBC8F.static final Color
0x483D8B.static final Color
0x2F4F4F.static final Color
0x00CED1.static final Color
0x9400D3.static final Color
0xFF1493.static final Color
0x00BFFF.static final Color
0x1560BD.static final Color
0x696969.static final Color
0x1E90FF.static final Color
0xB22222.static final Color
0x0066B3.static final Color
0xED1C24.static final Color
0xFFFAF0.static final Color
0x228B22.static final Color
0xFF00FF.static final Color
0xDCDCDC.static final Color
0xF8F8FF.static final Color
0xFFD700.static final Color
0xDAA520.static final Color
0x808080.static final Color
0x008000.static final Color
0xADFF2F.static final Color
0xF0FFF0.static final Color
0xFF69B4.static final Color
0xCD5C5C.static final Color
0x4B0082.static final Color
0xFFFFF0.static final Color
0xF0E68C.static final Color
0xE6E6FA.static final Color
0xFFF0F5.static final Color
0x7CFC00.static final Color
0xFFFACD.static final Color
0xADD8E6.static final Color
0xF08080.static final Color
0xE0FFFF.static final Color
0xFAFAD2.static final Color
0xD3D3D3.static final Color
0x90EE90.static final Color
0xFFB6C1.static final Color
0xFFA07A.static final Color
0x20B2AA.static final Color
0x87CEFA.static final Color
0x778899.static final Color
0xB0C4DE.static final Color
0xFFFFE0.static final Color
0x00FF00.static final Color
0x32CD32.static final Color
0xFAF0E6.static final Color
0xFF00FF.static final Color
0x800000.static final Color
0x66CDAA.static final Color
0x0000CD.static final Color
0xBA55D3.static final Color
0x9370DB.static final Color
0x3CB371.static final Color
0x7B68EE.static final Color
0x00FA9A.static final Color
0x48D1CC.static final Color
0xC71585.static final Color
0x191970.static final Color
0xF5FFFA.static final Color
0xFFE4E1.static final Color
0xFFE4B5.static final Color
0xFFDEAD.static final Color
0x000080.static final Color
0xFDF5E6.static final Color
0x808000.static final Color
0x6B8E23.static final Color
0xFFA500.static final Color
0xFF4500.static final Color
0xDA70D6.static final Color
0xEEE8AA.static final Color
0x98FB98.static final Color
0xAFEEEE.static final Color
0xDB7093.static final Color
0xFFEFD5.static final Color
0xFFDAB9.static final Color
0xCD853F.static final Color
0xFFC0CB.static final Color
0xDDA0DD.static final Color
0xB0E0E6.static final Color
0x800080.static final Color
0xFF0000.static final Color
0xBC8F8F.static final Color
0x4169E1.static final Color
0x8B4513.static final Color
0xFA8072.static final Color
0xF4A460.static final Color
0x2E8B57.static final Color
0xFFF5EE.static final Color
0xA0522D.static final Color
0xC0C0C0.static final Color
0x87CEEB.static final Color
0x6A5ACD.static final Color
0x708090.static final Color
0xFFFAFA.static final Color
0x00FF7F.static final Color
0x4682B4.static final Color
0xD2B48C.static final Color
0x008080.static final Color
0xD8BFD8.static final Color
0xFF6347.static final Color
0x40E0D0.static final Color
0xEE82EE.static final Color
0xF5DEB3.static final Color
0xFFFFFF.static final Color
0xF5F5F5.static final Color
0xFFFF00.static final Color
0x9ACD32.final double
Red component (0-1). -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
static Color
fromHSV
(int h, int s, int v) Creates a Color from HSV values.int
hashCode()
static int
hsvToRgb
(int h, int s, int v) Converts HSV values to RGB values.static int
lerpRGB
(double r1, double g1, double b1, double r2, double g2, double b2, double t) Linearly interpolates between two RGB colors represented by the (r1, g1, b1) and (r2, g2, b2) triplets.static int
lerpRGB
(int r1, int g1, int b1, int r2, int g2, int b2, double t) Linearly interpolates between two RGB colors represented by the (r1, g1, b1) and (r2, g2, b2) triplets.static Color
Performs a linear interpolation between two colors in the RGB colorspace.static int
packRGB
(int r, int g, int b) Packs 3 RGB values into a single 32-bit integer.Return this color represented as a hex string.toString()
static int
unpackRGB
(int packedColor, Color.RGBChannel channel) Unpacks a single color channel from a packed 32-bit RGB integer.
-
Field Details
-
red
Red component (0-1). -
green
Green component (0-1). -
blue
Blue component (0-1). -
kDenim
0x1560BD. -
kFirstBlue
0x0066B3. -
kFirstRed
0xED1C24. -
kAliceBlue
0xF0F8FF. -
kAntiqueWhite
0xFAEBD7. -
kAqua
0x00FFFF. -
kAquamarine
0x7FFFD4. -
kAzure
0xF0FFFF. -
kBeige
0xF5F5DC. -
kBisque
0xFFE4C4. -
kBlack
0x000000. -
kBlanchedAlmond
0xFFEBCD. -
kBlue
0x0000FF. -
kBlueViolet
0x8A2BE2. -
kBrown
0xA52A2A. -
kBurlywood
0xDEB887. -
kCadetBlue
0x5F9EA0. -
kChartreuse
0x7FFF00. -
kChocolate
0xD2691E. -
kCoral
0xFF7F50. -
kCornflowerBlue
0x6495ED. -
kCornsilk
0xFFF8DC. -
kCrimson
0xDC143C. -
kCyan
0x00FFFF. -
kDarkBlue
0x00008B. -
kDarkCyan
0x008B8B. -
kDarkGoldenrod
0xB8860B. -
kDarkGray
0xA9A9A9. -
kDarkGreen
0x006400. -
kDarkKhaki
0xBDB76B. -
kDarkMagenta
0x8B008B. -
kDarkOliveGreen
0x556B2F. -
kDarkOrange
0xFF8C00. -
kDarkOrchid
0x9932CC. -
kDarkRed
0x8B0000. -
kDarkSalmon
0xE9967A. -
kDarkSeaGreen
0x8FBC8F. -
kDarkSlateBlue
0x483D8B. -
kDarkSlateGray
0x2F4F4F. -
kDarkTurquoise
0x00CED1. -
kDarkViolet
0x9400D3. -
kDeepPink
0xFF1493. -
kDeepSkyBlue
0x00BFFF. -
kDimGray
0x696969. -
kDodgerBlue
0x1E90FF. -
kFirebrick
0xB22222. -
kFloralWhite
0xFFFAF0. -
kForestGreen
0x228B22. -
kFuchsia
0xFF00FF. -
kGainsboro
0xDCDCDC. -
kGhostWhite
0xF8F8FF. -
kGold
0xFFD700. -
kGoldenrod
0xDAA520. -
kGray
0x808080. -
kGreen
0x008000. -
kGreenYellow
0xADFF2F. -
kHoneydew
0xF0FFF0. -
kHotPink
0xFF69B4. -
kIndianRed
0xCD5C5C. -
kIndigo
0x4B0082. -
kIvory
0xFFFFF0. -
kKhaki
0xF0E68C. -
kLavender
0xE6E6FA. -
kLavenderBlush
0xFFF0F5. -
kLawnGreen
0x7CFC00. -
kLemonChiffon
0xFFFACD. -
kLightBlue
0xADD8E6. -
kLightCoral
0xF08080. -
kLightCyan
0xE0FFFF. -
kLightGoldenrodYellow
0xFAFAD2. -
kLightGray
0xD3D3D3. -
kLightGreen
0x90EE90. -
kLightPink
0xFFB6C1. -
kLightSalmon
0xFFA07A. -
kLightSeaGreen
0x20B2AA. -
kLightSkyBlue
0x87CEFA. -
kLightSlateGray
0x778899. -
kLightSteelBlue
0xB0C4DE. -
kLightYellow
0xFFFFE0. -
kLime
0x00FF00. -
kLimeGreen
0x32CD32. -
kLinen
0xFAF0E6. -
kMagenta
0xFF00FF. -
kMaroon
0x800000. -
kMediumAquamarine
0x66CDAA. -
kMediumBlue
0x0000CD. -
kMediumOrchid
0xBA55D3. -
kMediumPurple
0x9370DB. -
kMediumSeaGreen
0x3CB371. -
kMediumSlateBlue
0x7B68EE. -
kMediumSpringGreen
0x00FA9A. -
kMediumTurquoise
0x48D1CC. -
kMediumVioletRed
0xC71585. -
kMidnightBlue
0x191970. -
kMintcream
0xF5FFFA. -
kMistyRose
0xFFE4E1. -
kMoccasin
0xFFE4B5. -
kOldLace
0xFDF5E6. -
kOlive
0x808000. -
kOliveDrab
0x6B8E23. -
kOrange
0xFFA500. -
kOrangeRed
0xFF4500. -
kOrchid
0xDA70D6. -
kPaleGoldenrod
0xEEE8AA. -
kPaleGreen
0x98FB98. -
kPaleTurquoise
0xAFEEEE. -
kPaleVioletRed
0xDB7093. -
kPapayaWhip
0xFFEFD5. -
kPeachPuff
0xFFDAB9. -
kPeru
0xCD853F. -
kPink
0xFFC0CB. -
kPlum
0xDDA0DD. -
kPowderBlue
0xB0E0E6. -
kPurple
0x800080. -
kRed
0xFF0000. -
kRosyBrown
0xBC8F8F. -
kRoyalBlue
0x4169E1. -
kSaddleBrown
0x8B4513. -
kSalmon
0xFA8072. -
kSandyBrown
0xF4A460. -
kSeaGreen
0x2E8B57. -
kSeashell
0xFFF5EE. -
kSienna
0xA0522D. -
kSilver
0xC0C0C0. -
kSkyBlue
0x87CEEB. -
kSlateBlue
0x6A5ACD. -
kSlateGray
0x708090. -
kSnow
0xFFFAFA. -
kSpringGreen
0x00FF7F. -
kSteelBlue
0x4682B4. -
kTan
0xD2B48C. -
kTeal
0x008080. -
kThistle
0xD8BFD8. -
kTomato
0xFF6347. -
kTurquoise
0x40E0D0. -
kViolet
0xEE82EE. -
kWheat
0xF5DEB3. -
kWhite
0xFFFFFF. -
kWhiteSmoke
0xF5F5F5. -
kYellow
0xFFFF00. -
kYellowGreen
0x9ACD32.
-
-
Constructor Details
-
Color
public Color()Constructs a default color (black). -
Color
Constructs a Color from doubles.- Parameters:
red
- Red value (0-1)green
- Green value (0-1)blue
- Blue value (0-1)
-
Color
Constructs a Color from ints.- Parameters:
red
- Red value (0-255)green
- Green value (0-255)blue
- Blue value (0-255)
-
Color
Constructs a Color from a Color8Bit.- Parameters:
color
- The color
-
Color
Constructs a Color from a hex string.- Parameters:
hexString
- a string of the format#RRGGBB
- Throws:
IllegalArgumentException
- if the hex string is invalid.
-
-
Method Details
-
fromHSV
Creates a Color from HSV values.- Parameters:
h
- The h value [0-180)s
- The s value [0-255]v
- The v value [0-255]- Returns:
- The color
-
equals
-
hashCode
-
toString
-
toHexString
Return this color represented as a hex string.- Returns:
- a string of the format
#RRGGBB
-
hsvToRgb
Converts HSV values to RGB values. The returned RGB color is packed into a 32-bit integer for memory performance reasons.- Parameters:
h
- The h value [0-180)s
- The s value [0-255]v
- The v value [0-255]- Returns:
- the packed RGB color
-
packRGB
Packs 3 RGB values into a single 32-bit integer. These values can be unpacked withunpackRGB(int, RGBChannel)
to retrieve the values. This is helpful for avoiding memory allocations of newColor
objects and its resulting garbage collector pressure.- Parameters:
r
- the value of the first channel to packg
- the value of the second channel to packb
- the value of the third channel to pack- Returns:
- the packed integer
-
unpackRGB
Unpacks a single color channel from a packed 32-bit RGB integer.Note: Packed RGB colors are expected to be in byte order [empty][red][green][blue].
- Parameters:
packedColor
- the packed color to extract fromchannel
- the color channel to unpack- Returns:
- the value of the stored color channel
-
lerpRGB
Performs a linear interpolation between two colors in the RGB colorspace.- Parameters:
a
- the first color to interpolate fromb
- the second color to interpolate fromt
- the interpolation scale in [0, 1]- Returns:
- the interpolated color
-
lerpRGB
public static int lerpRGB(double r1, double g1, double b1, double r2, double g2, double b2, double t) Linearly interpolates between two RGB colors represented by the (r1, g1, b1) and (r2, g2, b2) triplets. For memory performance reasons, the output color is returned packed into a single 32-bit integer; useunpackRGB(int, RGBChannel)
to extract the values for the individual red, green, and blue channels.- Parameters:
r1
- the red value of the first color, in [0, 1]g1
- the green value of the first color, in [0, 1]b1
- the blue value of the first color, in [0, 1]r2
- the red value of the second color, in [0, 1]g2
- the green value of the second color, in [0, 1]b2
- the blue value of the second color, in [0, 1]t
- the interpolation value, in [0, 1]- Returns:
- the interpolated color, packed in a 32-bit integer
-
lerpRGB
Linearly interpolates between two RGB colors represented by the (r1, g1, b1) and (r2, g2, b2) triplets. For memory performance reasons, the output color is returned packed into a single 32-bit integer; useunpackRGB(int, RGBChannel)
to extract the values for the individual red, green, and blue channels.- Parameters:
r1
- the red value of the first color, in [0, 255]g1
- the green value of the first color, in [0, 255]b1
- the blue value of the first color, in [0, 255]r2
- the red value of the second color, in [0, 255]g2
- the green value of the second color, in [0, 255]b2
- the blue value of the second color, in [0, 255]t
- the interpolation value, in [0, 1]- Returns:
- the interpolated color, packed in a 32-bit integer
-