struct mp2p_icp::color_mode_t


#include <render_params.h>

struct color_mode_t
    // fields

    bool keep_original_cloud_color = false;
    mrpt::img::TColormap colorMap = mrpt::img::cmHOT;
    std::optional<Coordinate> recolorizeByCoordinate;
    std::optional<float> colorMapMinCoord;
    std::optional<float> colorMapMaxCoord;
    std::optional<float> autoBoundingBoxOutliersPercentile = {0.025};

    // methods

    bool operator == (const color_mode_t& o) const;
    bool operator != (const color_mode_t& o) const;


bool keep_original_cloud_color = false

If set, keep the intensity or RGB channels from the original clouds

mrpt::img::TColormap colorMap = mrpt::img::cmHOT

The colormap palette to use.

std::optional<Coordinate> recolorizeByCoordinate

If set, the coordinate to use to recolorize points.

std::optional<float> colorMapMinCoord

Optional fixed minimum and maximum bounding box limits for interpolating the color map. If not set, they will be set to the point cloud bounding box. For example, to recolor points so the coolest and hottest colors are at heights of 0.0 m and 5.0 m, respectively, set these variables to 0.0f and 5.0f and set the mrpt::img::cmHOT color map.

std::optional<float> autoBoundingBoxOutliersPercentile = {0.025}

If colorMapMinCoord & colorMapMaxCoord are not set, the limits will be taken from the cloud bounding box. However, if this value is set (default), an outlier filter will be applied to prevent gross outliers to modify the coloring of the whole cloud. The option to disable it is provided since this has a non-negligible computational cost, which may be important for very large clouds.