#include /* for convenience, but to be avoided if possible */ /*! * \brief set a category color * * The red, green, and * blue intensities for the color associated with category cat * are set in the colors structure. The intensities must be in the * range 0 -­ 255. Values below zero are set as zero, values above 255 are set as * 255. * Use of this routine is discouraged because it defeats the new color * logic. It is provided only for backward compatibility. Overuse can create * large color tables. G_add_color_rule should be used whenever * possible. * Note. The colors structure must have been initialized by * G_init_color. * * \param cat * \param red * \param green * \param blue * \param colors * \return */ void G_set_color(CELL cat, int r, int g, int b, struct Colors *colors) { if (G_is_c_null_value(&cat)) G_set_null_value_color(r, g, b, colors); else G_add_color_rule(cat, r, g, b, cat, r, g, b, colors); } void G_set_d_color(DCELL val, int r, int g, int b, struct Colors *colors) { if (G_is_d_null_value(&val)) G_set_null_value_color(r, g, b, colors); else G_add_d_raster_color_rule(&val, r, g, b, &val, r, g, b, colors); } /*! * \brief * * Sets the color (in colors) for the NULL-value to r,g,b. * * \param r * \param g * \param b * \param colors * \return */ void G_set_null_value_color(int red, int grn, int blu, struct Colors *colors) { colors->null_red = red; colors->null_grn = grn; colors->null_blu = blu; colors->null_set = 1; } /*! * \brief * * Sets the default color (in colors) to r,g,b. This is * the color for values which do not have an explicit rule. * * \param r * \param g * \param b * \param colors * \return */ void G_set_default_color(int red, int grn, int blu, struct Colors *colors) { colors->undef_red = red; colors->undef_grn = grn; colors->undef_blu = blu; colors->undef_set = 1; }