CFx SDK Documentation
2020SP3
|
Go to the documentation of this file.
26 #ifndef __ODGIPROCEDURALGENERATOR_H__
27 #define __ODGIPROCEDURALGENERATOR_H__
86 kLinearInterpolation = 0,
321 static double linterp(
double a,
double b,
double t);
325 static double einterp(
double a,
double b,
double t);
329 static double cinterp(
double a,
double b,
double t);
333 static double ieinterp(
double a,
double b,
double t);
413 #endif // __ODGIPROCEDURALGENERATOR_H__
OdGiGradientGenerator(const OdGiGradientGenerator &other)
virtual bool generateProceduralTexture(OdGiProceduralTexturePtr pTexture, OdGiImageBGRA32 &image, double renderCoef=1.0)=0
OdUInt32 clampToRange(OdUInt32 inVal) const
OdUInt32Array m_colorGradient
void createColorArrayFilled(ODCOLORREF color, OdUInt32 nColors)
virtual const OdGiGradientGenerator & colorGradient() const =0
OdSmartPtr< OdGiProceduralGeneratorPE > OdGiProceduralGeneratorPEPtr
virtual void setColorGradient(const OdGiGradientGenerator &gradient)=0
void createGradient(ODCOLORREF color1, ODCOLORREF color2, ODCOLORREF color3, OdUInt32 nColors, OdGiGradientGenerator::InterpolationType ipl1, OdGiGradientGenerator::InterpolationType ipl2)
void createGradient(ODCOLORREF color1, ODCOLORREF color2, ODCOLORREF color3, ODCOLORREF color4, ODCOLORREF color5, OdUInt32 nColors, OdGiGradientGenerator::InterpolationType ipl=OdGiGradientGenerator::kLinearInterpolation)
OdGiProceduralGeneratorPE()
void createGradient(ODCOLORREF color1, ODCOLORREF color2, OdUInt32 nColors, OdGiGradientGenerator::InterpolationType ipl=OdGiGradientGenerator::kLinearInterpolation)
ODRX_DECLARE_MEMBERS(OdGiProceduralGenerator)
void setAddressMode(OdGiGradientGenerator::AddressMode mode)
void copyGradient(const ODCOLORREF *colors, OdUInt32 nColors)
const OdUInt32Array & asArray() const
void fillInterval(ODCOLORREF color, double from=0.0, double to=1.0)
static double cinterp(double a, double b, double t)
static double einterp(double a, double b, double t)
void createGradient(ODCOLORREF color1, ODCOLORREF color2, ODCOLORREF color3, ODCOLORREF color4, OdUInt32 nColors, OdGiGradientGenerator::InterpolationType ipl=OdGiGradientGenerator::kLinearInterpolation)
bool isInitialized() const
static ODCOLORREF interpolateColor(ODCOLORREF color1, ODCOLORREF color2, double at, OdGiGradientGenerator::InterpolationType ipl=OdGiGradientGenerator::kLinearInterpolation, OdGiGradientGenerator::AddressMode mode=OdGiGradientGenerator::kWrapMode)
void createGradient(ODCOLORREF color1, ODCOLORREF color2, ODCOLORREF color3, ODCOLORREF color4, OdUInt32 nColors, OdGiGradientGenerator::InterpolationType ipl1, OdGiGradientGenerator::InterpolationType ipl2, OdGiGradientGenerator::InterpolationType ipl3)
void fillInterval(ODCOLORREF color, OdUInt32 from, OdUInt32 to)
AddressMode m_addressMode
OdGiGradientGenerator::AddressMode addressMode() const
OdUInt32 clampToRange(double inVal) const
OdSmartPtr< OdGiProceduralGenerator > OdGiProceduralGeneratorPtr
static double ieinterp(double a, double b, double t)
void appendGradient(const OdGiGradientGenerator &other)
virtual void generateProceduralMarble(OdGiPixelBGRA32 stoneColor, OdGiPixelBGRA32 veinColor, double veinSpacing, double veinWidth, OdGiImageBGRA32 &image, double renderCoef=1.0)=0
void createGradient(ODCOLORREF color1, ODCOLORREF color2, ODCOLORREF color3, ODCOLORREF color4, ODCOLORREF color5, OdUInt32 nColors, OdGiGradientGenerator::InterpolationType ipl1, OdGiGradientGenerator::InterpolationType ipl2, OdGiGradientGenerator::InterpolationType ipl3, OdGiGradientGenerator::InterpolationType ipl4)
ODCOLORREF colorAt(double at) const
ODRX_DECLARE_MEMBERS(OdGiProceduralGeneratorPE)
void createGradient(ODCOLORREF color1, ODCOLORREF color2, ODCOLORREF color3, OdUInt32 nColors, OdGiGradientGenerator::InterpolationType ipl=OdGiGradientGenerator::kLinearInterpolation)
ODCOLORREF colorAt(OdUInt32 nColor) const
void copyGradient(const OdUInt32Array &other)
void createColorArray(OdUInt32 nColors)
double toDoubleRange(OdUInt32 inVal) const
void generateInterval(ODCOLORREF color1, ODCOLORREF color2, OdUInt32 from, OdUInt32 to, OdGiGradientGenerator::InterpolationType ipl=OdGiGradientGenerator::kLinearInterpolation)
virtual bool generateProceduralTexture(OdGiProceduralTexturePtr pTexture, OdGiImageBGRA32 &image, double renderCoef=1.0)=0
OdUInt32 colorsCount() const
GLfloat GLfloat GLfloat alpha
static OdGiGradientGenerator createSpectrumGradient(OdUInt32 nColors, OdUInt8 alpha=0)
void generateInterval(ODCOLORREF color1, ODCOLORREF color2, double from=0.0, double to=1.0, OdGiGradientGenerator::InterpolationType ipl=OdGiGradientGenerator::kLinearInterpolation)
static double linterp(double a, double b, double t)
virtual void generateProceduralWood(OdGiPixelBGRA32 color1, OdGiPixelBGRA32 color2, double radialNoise, double axialNoise, double grainThickness, OdGiImageBGRA32 &image, double renderCoef=1.0)=0