Visual Servoing Platform
version 3.6.1 under development (2024-12-09)
|
#include <visp3/core/vpColor.h>
Public Types | |
enum | vpColorIdentifier { id_black = 0 , id_white , id_lightGray , id_gray , id_darkGray , id_lightRed , id_red , id_darkRed , id_lightGreen , id_green , id_darkGreen , id_lightBlue , id_blue , id_darkBlue , id_yellow , id_cyan , id_orange , id_purple , id_unknown } |
enum | AlphaDefault { alpha_default = 255 } |
Public Member Functions | |
vpColor () | |
vpColor (unsigned char r, unsigned char g, unsigned char b, vpColor::vpColorIdentifier cid=vpColor::id_unknown) | |
vpColor (unsigned char r, unsigned char g, unsigned char b, unsigned char alpha, vpColor::vpColorIdentifier cid=vpColor::id_unknown) | |
vpColor (const vpColor &color, unsigned char alpha) | |
virtual | ~vpColor () |
void | setColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a=vpRGBa::alpha_default) |
bool | operator== (const vpRGBa &v) const |
bool | operator!= (const vpRGBa &v) const |
vpColVector | operator- (const vpRGBa &v) const |
vpColVector | operator- (const vpColVector &v) const |
vpRGBa | operator+ (const vpRGBa &v) const |
vpColVector | operator+ (const vpColVector &v) const |
vpColVector | operator* (const float &v) const |
vpColVector | operator* (const double &v) const |
bool | operator< (const vpRGBa &v) const |
bool | operator> (const vpRGBa &v) const |
Static Public Member Functions | |
static vpColor | getColor (const unsigned int &i) |
Public Attributes | |
vpColorIdentifier | id |
unsigned char | R |
unsigned char | G |
unsigned char | B |
unsigned char | A |
Static Public Attributes | |
static const vpColor | black = vpColor(0, 0, 0, id_black) |
static const vpColor | white = vpColor(255, 255, 255, id_white) |
static const vpColor | lightGray = vpColor(192, 192, 192, id_lightGray) |
static const vpColor | gray = vpColor(128, 128, 128, id_gray) |
static const vpColor | darkGray = vpColor(64, 64, 64, id_darkGray) |
static const vpColor | lightRed = vpColor(255, 140, 140, id_lightRed) |
static const vpColor | red = vpColor(255, 0, 0, id_red) |
static const vpColor | darkRed = vpColor(128, 0, 0, id_darkRed) |
static const vpColor | lightGreen = vpColor(140, 255, 140, id_lightGreen) |
static const vpColor | green = vpColor(0, 255, 0, id_green) |
static const vpColor | darkGreen = vpColor(0, 128, 0, id_darkGreen) |
static const vpColor | lightBlue = vpColor(140, 140, 255, id_lightBlue) |
static const vpColor | blue = vpColor(0, 0, 255, id_blue) |
static const vpColor | darkBlue = vpColor(0, 0, 128, id_darkBlue) |
static const vpColor | yellow = vpColor(255, 255, 0, id_yellow) |
static const vpColor | cyan = vpColor(0, 255, 255, id_cyan) |
static const vpColor | orange = vpColor(255, 165, 0, id_orange) |
static const vpColor | purple = vpColor(128, 0, 128, id_purple) |
static const vpColor | none = vpColor(0, 0, 0, id_unknown) |
static const unsigned int | nbColors = 18 |
static const vpColor | allColors [] |
Friends | |
VISP_EXPORT bool | operator== (const vpColor &c1, const vpColor &c2) |
VISP_EXPORT bool | operator!= (const vpColor &c1, const vpColor &c2) |
Related Functions | |
(Note that these are not member functions.) | |
VISP_EXPORT std::ostream & | operator<< (std::ostream &os, const vpRGBa &rgba) |
Class to define RGB colors available for display functionalities.
An identifier vpColor::vpColorIdentifier is associated to each color. This identifier is useful to determine if a color is predefined or specified by it R,G,B values. In that last case, the identifier is always set to vpColor::id_unknown.
The example below shows how to display geometric features in a display overlay using predefined colors (here the blue color to draw a circle) and a specific brown color (used to draw a rectangle).
|
inherited |
Predefined colors identifier.
Enumerator | |
---|---|
id_black | Identifier associated to the predefined vpColor::black color. |
id_white | Identifier associated to the predefined vpColor::white color. |
id_lightGray | Identifier associated to the predefined vpColor::lightGray color. |
id_gray | Identifier associated to the predefined vpColor::gray color. |
id_darkGray | Identifier associated to the predefined vpColor::darkGray color. |
id_lightRed | Identifier associated to the predefined vpColor::lightRed color. |
id_red | Identifier associated to the predefined vpColor::red color. |
id_darkRed | Identifier associated to the predefined vpColor::darkRed color. |
id_lightGreen | Identifier associated to the predefined vpColor::lightGreen color. |
id_green | Identifier associated to the predefined vpColor::green color. |
id_darkGreen | Identifier associated to the predefined vpColor::darkGreen color. |
id_lightBlue | Identifier associated to the predefined vpColor::lightBlue color. |
id_blue | Identifier associated to the predefined vpColor::blue color. |
id_darkBlue | Identifier associated to the predefined vpColor::darkBlue color. |
id_yellow | Identifier associated to the predefined vpColor::yellow color. |
id_cyan | Identifier associated to the predefined vpColor::cyan color. |
id_orange | Identifier associated to the predefined vpColor::orange color. |
id_purple | Identifier associated to the predefined vpColor::purple color. |
id_unknown | Identifier associated to unknowned colors. By unknowned, we mean not a predefined color. This identifier can also be used to know the number of predefined colors. |
|
inline |
Default constructor. All the colors components are set to zero.
The color identifier is set to vpColor::id_unknown to indicate that this color is not a predefined one.
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
|
inlinestatic |
Get a predefined color
i | : color indice |
Definition at line 311 of file vpColor.h.
References allColors, and nbColors.
Referenced by vpIoTools::readConfigVar().
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
Definition at line 268 of file vpRGBa.cpp.
|
inherited |
|
inherited |
Definition at line 276 of file vpRGBa.cpp.
|
inline |
Set a color from its RGB values.
r | : Red component. |
g | : Green component. |
b | : Blue component. |
a | : Alpha component for transparency. |
The color identifier is set to vpColor::id_unknown to indicate that this color is not a predefined one.
Compare two colors.
Return true if the R,G,B components are different.
c1,c2 | : Color to compare. |
Definition at line 143 of file vpColor.cpp.
|
related |
Writes the RGBA values to the stream os, and returns a reference to the stream. The coordinates are separated by a comma.
The following code prints the intensity of the pixel in the middle of the image:
Definition at line 326 of file vpRGBa.cpp.
Compare two colors.
Return true if the R,G,B components are the same.
c1,c2 | : Color to compare. |
Definition at line 130 of file vpColor.cpp.
|
inherited |
Additionnal component.
Definition at line 170 of file vpRGBa.h.
Referenced by VISP_NAMESPACE_NAME::adjust(), vpImageConvert::convert(), vpImageTools::imageDifference(), vpImageTools::imageDifferenceAbsolute(), vpImageConvert::merge(), vpRGBa::operator!=(), vpRGBa::operator*(), vpRGBa::operator+(), vpRGBa::operator-(), vpRGBa::operator=(), vpRGBa::operator==(), vpPanda3DRGBRenderer::setBackgroundImage(), and VISP_NAMESPACE_NAME::stretchContrast().
|
static |
Definition at line 232 of file vpColor.h.
Referenced by getColor().
|
inherited |
Blue component.
Definition at line 169 of file vpRGBa.h.
Referenced by VISP_NAMESPACE_NAME::adjust(), vpImageConvert::convert(), vpImageConvert::depthToPointCloud(), vpImageDraw::drawCircle(), VISP_NAMESPACE_NAME::drawContours(), vpImageDraw::drawLine(), vpImageDraw::drawPolygon(), vpImageDraw::drawRectangle(), VISP_NAMESPACE_NAME::gammaCorrectionSpatialBased(), vpImageSimulator::getImage(), vpImageTools::imageDifference(), vpImageTools::imageDifferenceAbsolute(), vpImageConvert::merge(), vpRGBa::operator!=(), vpRGBa::operator*(), vpRGBa::operator+(), vpRGBa::operator-(), vpRGBa::operator<(), vpRGBa::operator=(), vpRGBa::operator==(), vpRGBa::operator>(), vpPanda3DRGBRenderer::setBackgroundImage(), VISP_NAMESPACE_NAME::stretchContrast(), vpColorBlindFriendlyPalette::to_colorRatio(), vpColorBlindFriendlyPalette::to_RGB(), VISP_NAMESPACE_NAME::unsharpMask(), and vpImageTools::warpLinear().
< Predefined black color with R=G=B=0 and identifier vpColor::id_black. Predefined white color with R=G=B=255 and identifier vpColor::id_white.
Predefined dark blue color with B= 128 and R=G=0 and identifier vpColor::id_darkBlue.
Definition at line 223 of file vpColor.h.
Referenced by vpMeSite::display(), vpMbDepthNormalTracker::display(), vpProjectionDisplay::displayCamera(), vpMbtFaceDepthNormal::displayFeature(), vpMbEdgeTracker::displayFeaturesOnImage(), vpImageDraw::drawFrame(), vpTemplateTrackerZone::initClick(), vpMeLine::sample(), vpDot2::searchDotsInArea(), vpMeLine::seekExtremities(), vpMeNurbs::seekExtremities(), and vpDot2::trackAndDisplay().
Predefined orange color with R=255, G=165 and B=0 and identifier vpColor::id_orange.
Definition at line 226 of file vpColor.h.
Referenced by vpFeatureSegment::display(), vpMeSite::display(), and vpMbEdgeTracker::displayFeaturesOnImage().
|
static |
Predefined yellow color with R=G=255 and B=0 and identifier vpColor::id_yellow.
|
static |
Predefined light red color with R= 255 and G=B=140 and identifier vpColor::id_lightRed.
|
static |
Predefined light blue color with B= 255 and R=G=140 and identifier vpColor::id_lightBlue.
|
static |
Predefined light green color with G= 255 and R=B=140 and identifier vpColor::id_lightGreen.
|
inherited |
Green component.
Definition at line 168 of file vpRGBa.h.
Referenced by VISP_NAMESPACE_NAME::adjust(), vpImageConvert::convert(), vpImageConvert::depthToPointCloud(), vpImageDraw::drawCircle(), VISP_NAMESPACE_NAME::drawContours(), vpImageDraw::drawLine(), vpImageDraw::drawPolygon(), vpImageDraw::drawRectangle(), VISP_NAMESPACE_NAME::gammaCorrectionSpatialBased(), vpImageSimulator::getImage(), vpImageTools::imageDifference(), vpImageTools::imageDifferenceAbsolute(), vpImageConvert::merge(), vpRGBa::operator!=(), vpRGBa::operator*(), vpRGBa::operator+(), vpRGBa::operator-(), vpRGBa::operator<(), vpRGBa::operator=(), vpRGBa::operator==(), vpRGBa::operator>(), vpPanda3DRGBRenderer::setBackgroundImage(), VISP_NAMESPACE_NAME::stretchContrast(), vpColorBlindFriendlyPalette::to_colorRatio(), vpColorBlindFriendlyPalette::to_RGB(), VISP_NAMESPACE_NAME::unsharpMask(), and vpImageTools::warpLinear().
Predefined dark gray color with R=G=B=192 and identifier vpColor::id_darkGray.
Predefined dark green color with G= 128 and R=B=0 and identifier vpColor::id_darkGreen.
Definition at line 220 of file vpColor.h.
Referenced by vpMeLine::computeRhoTheta(), vpMeSite::display(), vpKeyPoint::display(), vpProjectionDisplay::display(), vpProjectionDisplay::displayCamera(), vpMbEdgeTracker::displayFeaturesOnImage(), vpMeLine::displayLine(), vpKeyPoint::displayMatching(), vpImageDraw::drawFrame(), vpMbGenericTracker::initFromPose(), vpMeNurbs::initTracking(), vpMeLine::seekExtremities(), vpMeNurbs::seekExtremitiesCanny(), vpMeSite::track(), vpDot2::trackAndDisplay(), and vpMeSite::trackMultipleHypotheses().
vpColorIdentifier vpColor::id |
|
static |
Predefined blue color with R=G=0 and B=255 and identifier vpColor::id_blue.
|
static |
Predefined gray color with R=G=B=128 and identifier vpColor::id_gray.
|
static |
Predefined green color with G=255 and R=B=0 and identifier vpColor::id_green.
|
static |
Predefined red color with R=255 and G=B=0 and identifier vpColor::id_red.
|
static |
|
static |
Definition at line 229 of file vpColor.h.
Referenced by vpServoDisplay::display(), vpKeyPoint::displayMatching(), and vpImageDraw::drawFrame().
Predefined purple color with R=128, G=0 and B=128 and identifier vpColor::id_purple.
Definition at line 227 of file vpColor.h.
Referenced by vpMbtDistanceCylinder::computeInteractionMatrixError(), and vpMeNurbs::seekExtremitiesCanny().
Predefined none color with R=G=B=0 and identifier vpColor::id_unknown.
Definition at line 228 of file vpColor.h.
Referenced by vpMeSite::display(), and vpMbEdgeTracker::displayFeaturesOnImage().
|
inherited |
Red component.
Definition at line 167 of file vpRGBa.h.
Referenced by VISP_NAMESPACE_NAME::adjust(), vpImageConvert::convert(), vpImageConvert::depthToPointCloud(), vpImageDraw::drawCircle(), VISP_NAMESPACE_NAME::drawContours(), vpImageDraw::drawLine(), vpImageDraw::drawPolygon(), vpImageDraw::drawRectangle(), VISP_NAMESPACE_NAME::gammaCorrectionSpatialBased(), vpImageSimulator::getImage(), vpImageTools::imageDifference(), vpImageTools::imageDifferenceAbsolute(), vpImageConvert::merge(), vpRGBa::operator!=(), vpRGBa::operator*(), vpRGBa::operator+(), vpRGBa::operator-(), vpRGBa::operator<(), vpRGBa::operator=(), vpRGBa::operator==(), vpRGBa::operator>(), vpPanda3DRGBRenderer::setBackgroundImage(), VISP_NAMESPACE_NAME::stretchContrast(), vpColorBlindFriendlyPalette::to_colorRatio(), vpColorBlindFriendlyPalette::to_RGB(), VISP_NAMESPACE_NAME::unsharpMask(), and vpImageTools::warpLinear().
Predefined dark red color with R= 128 and G=B=0 and identifier vpColor::id_darkRed.
Definition at line 217 of file vpColor.h.
Referenced by vpMbtDistanceCylinder::computeInteractionMatrixError(), vpMeLine::computeRhoTheta(), vpMeSite::display(), vpMbDepthNormalTracker::display(), vpKeyPoint::display(), vpProjectionDisplay::displayCamera(), vpMbtFaceDepthNormal::displayFeature(), vpMbEdgeTracker::displayFeaturesOnImage(), vpKeyPoint::displayMatching(), vpImageDraw::drawFrame(), vpWireFrameSimulator::getInternalImage(), vpTemplateTrackerZone::initClick(), vpMbGenericTracker::initFromPose(), vpMeLine::initTracking(), vpMeEllipse::initTracking(), vpMeEllipse::sample(), vpMbDepthDenseTracker::segmentPointCloud(), vpMbDepthNormalTracker::segmentPointCloud(), vpDot::track(), vpMeLine::track(), vpDot2::track(), vpMeSite::track(), vpDot2::trackAndDisplay(), and vpMeSite::trackMultipleHypotheses().
Predefined light gray color with R=G=B=64 and identifier vpColor::id_lightGray.
Predefined cyan color with R=0 and G=B=255 and identifier vpColor::id_cyan.
Definition at line 225 of file vpColor.h.
Referenced by vpFeatureSegment::display(), vpMeSite::display(), vpMbEdgeTracker::displayFeaturesOnImage(), and vpMeSite::getQueryList().