.. _program_listing_file_include_flamegpu_visualiser_color_HSVInterpolation.h: Program Listing for File HSVInterpolation.h =========================================== |exhale_lsh| :ref:`Return to documentation for file ` (``include/flamegpu/visualiser/color/HSVInterpolation.h``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #ifndef INCLUDE_FLAMEGPU_VISUALISER_COLOR_HSVINTERPOLATION_H_ #define INCLUDE_FLAMEGPU_VISUALISER_COLOR_HSVINTERPOLATION_H_ #include #include "flamegpu/visualiser/color/ColorFunction.h" namespace flamegpu { namespace visualiser { class HSVInterpolation : public ColorFunction { public: static HSVInterpolation REDGREEN(const std::string &variable_name, const float& min_bound = 0.0f, const float& max_bound = 1.0f); static HSVInterpolation GREENRED(const std::string& variable_name, const float& min_bound = 0.0f, const float& max_bound = 1.0f); HSVInterpolation(const std::string& variable_name, const float& hMin, const float& hMax, const float& s = 1.0f, const float& v = 0.88f); HSVInterpolation &setBounds(const float& min_bound, const float& max_bound); HSVInterpolation& setWrapHue(const bool& _wrapHue); std::string getSrc(unsigned int array_len) const override; std::string getSamplerName() const override; std::string getAgentVariableName() const override; std::type_index getAgentVariableRequiredType() const override; private: float min_bound = 0.0f, max_bound = 1.0f; bool wrap_hue = false; const float hue_min, hue_max; const float saturation; const float val; const std::string variable_name; }; } // namespace visualiser } // namespace flamegpu #endif // INCLUDE_FLAMEGPU_VISUALISER_COLOR_HSVINTERPOLATION_H_