|
ACF $AcfVersion:0$
|
CCieLabColorModel implements the CIE Lab color model. More...
#include <CCieLabColorModel.h>
Public Member Functions | |
| CCieLabColorModel (const ITristimulusSpecification &spec=CTristimulusSpecification()) | |
| Constructs a CIE Lab color model with the given tristimulus specification. | |
| void | SetTristimulusSpecification (const ITristimulusSpecification &spec) |
| Sets the tristimulus specification for this color model. | |
| const ITristimulusSpecification & | GetTristimulusSpecification () const |
| Returns the current tristimulus specification. | |
| virtual ModelType | GetModelType () const override |
| Gets the type of the color model. | |
| virtual ModelClass | GetModelClass () const override |
| Gets the classification of the color model. | |
| virtual ColorSpaceClass | GetColorSpaceClass () const override |
| Gets the classification of the color space defined by this model. | |
| virtual int | GetColorSpaceDimensionality () const override |
| Gets the dimensionality (number of components) of the color space. | |
| virtual const imath::IUnitInfo * | GetColorSpaceComponentInfo (int componentIndex) const override |
| Gets mathematical unit information for a color model component. | |
| virtual QString | GetColorSpaceComponentName (int componentIndex) const override |
| Gets the human-readable name of a color model component. | |
| virtual const icmm::IColorTransformation * | CreateColorTranformation (const IColorModel &otherColorModel, const QByteArray &transformationId=QByteArray()) const override |
| Creates a color transformation for conversion to another color model. | |
| virtual IColorSpecification::ConstColorSpecPtr | GetSpecification () const override |
| Gets the color specification for this model, if available. | |
| virtual int | GetSupportedOperations () const override |
| Get set of flags for supported operations. | |
| virtual bool | CopyFrom (const istd::IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override |
| Copy this object from another one. | |
| virtual istd::IChangeableUniquePtr | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override |
| Make a copy of this object. | |
Public Member Functions inherited from istd::IChangeable | |
| virtual bool | IsEqual (const IChangeable &object) const |
| Compare this object with another object. | |
| virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) |
| Reset data to its default state. | |
| virtual void | BeginChanges (const ChangeSet &changeSet) |
| Starts the change transaction. | |
| virtual void | EndChanges (const ChangeSet &changeSet) |
| Ends the change transaction. | |
| virtual void | BeginChangeGroup (const ChangeSet &changeSet) |
| Starts group of changes. | |
| virtual void | EndChangeGroup (const ChangeSet &changeSet) |
| Ends group of changes. | |
Public Member Functions inherited from istd::IPolymorphic | |
| virtual | ~IPolymorphic () |
Additional Inherited Members | |
Public Types inherited from icmm::IColorModel | |
| enum | ModelType { MT_HSI , MT_HSV , MT_HSL , MI_YIQ , MI_YUV , MI_YCBCR , MT_RGB , MT_COLORANTS , MT_LUV , MT_LAB , MT_LCH , MT_XYZ , MT_YXY , MI_SPECTRAL , MI_USER = 1024 } |
| enum | ModelClass { MC_DEVICE_DEPENDENT , MC_DEVICE_INDEPENDENT } |
| enum | ColorSpaceClass { CSC_ADDITIVE , CSC_SUBSTRACTIVE , CSC_PERCEPTUAL } |
Public Types inherited from istd::IChangeable | |
| enum | ChangeFlags { CF_ACF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING , CF_DELEGATED , CF_NO_UNDO } |
| Data model change notification flags. More... | |
| enum | SupportedOperations { SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 , SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4 } |
| Flags for supported operations. More... | |
| enum | CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT } |
| Control how relationship betweeen objects are interpreted. More... | |
| typedef QMultiMap< QByteArray, QVariant > | ChangeInfoMap |
Static Public Member Functions inherited from istd::IChangeable | |
| static const ChangeSet & | GetNoChanges () |
| Get empty set of changes. | |
| static const ChangeSet & | GetAnyChange () |
| Get anonymous change set. | |
| static const ChangeSet & | GetAllChanges () |
| Get anonymous change set. | |
| static const ChangeSet & | GetDelegatedChanges () |
| Get delegated change set. | |
Protected Member Functions inherited from istd::IChangeable | |
| virtual void | OnBeginChanges () |
| Callback function for begin change event. | |
| virtual void | OnEndChanges (const ChangeSet &changeSet) |
| Callback function for end change event. | |
CCieLabColorModel implements the CIE Lab color model.
This class provides a device-independent color model based on the CIE Lab color space. It allows configuration of the tristimulus specification and provides information about the color space, its components, and related transformations.
Definition at line 23 of file CCieLabColorModel.h.
| icmm::CCieLabColorModel::CCieLabColorModel | ( | const ITristimulusSpecification & | spec = CTristimulusSpecification() | ) |
Constructs a CIE Lab color model with the given tristimulus specification.
| spec | Tristimulus specification to use for the model. |
|
overridevirtual |
Make a copy of this object.
Reimplemented from istd::IChangeable.
|
overridevirtual |
Copy this object from another one.
Default implementation in istd::IChangeable does nothing.
Reimplemented from istd::IChangeable.
|
overridevirtual |
Creates a color transformation for conversion to another color model.
Constructs and returns a transformation object that can convert colors from this model to the specified target model. The transformation may be direct or may internally use intermediate color spaces (typically XYZ).
| otherColorModel | The target color model to convert to |
| transformationId | Optional identifier for a specific transformation algorithm. Empty (default) uses the standard transformation. |
Implements icmm::IColorModel.
|
overridevirtual |
Gets the classification of the color space defined by this model.
Indicates the physical basis of color mixing: additive (light-based), subtractive (pigment-based), or perceptual (human perception-based).
Implements icmm::IColorModel.
|
overridevirtual |
Gets mathematical unit information for a color model component.
Returns information about the mathematical unit, range, and properties of the specified component (axis) in the color space.
| componentIndex | Zero-based index of the component (0 to dimensionality-1) |
Implements icmm::IColorModel.
|
overridevirtual |
Gets the human-readable name of a color model component.
Returns the name of the component at the specified index, such as "Red", "Green", "Blue" for RGB, or "Lightness", "a*", "b*" for Lab.
| componentIndex | Zero-based index of the component |
Implements icmm::IColorModel.
|
overridevirtual |
Gets the dimensionality (number of components) of the color space.
Returns the number of values needed to represent a color in this model. Common values are 3 (RGB, HSV, Lab) or 4 (CMYK). Spectral models may have higher dimensionality.
Implements icmm::IColorModel.
|
overridevirtual |
Gets the classification of the color model.
Indicates whether the color model is device-dependent or device-independent. Device-dependent models (RGB, CMYK) produce different colors on different devices, while device-independent models (XYZ, Lab) represent absolute colors.
Implements icmm::IColorModel.
|
overridevirtual |
Gets the type of the color model.
Returns the specific type identifier for this color model (e.g., MT_RGB, MT_CMYK). This identifies the mathematical representation and component structure.
Implements icmm::IColorModel.
|
overridevirtual |
Gets the color specification for this model, if available.
Returns additional specification information about the color model, such as white point, primaries (for RGB), or viewing conditions (for Lab). Not all models have specifications.
Reimplemented from icmm::IColorModel.
|
overridevirtual |
Get set of flags for supported operations.
Reimplemented from istd::IChangeable.
| const ITristimulusSpecification & icmm::CCieLabColorModel::GetTristimulusSpecification | ( | ) | const |
Returns the current tristimulus specification.
| void icmm::CCieLabColorModel::SetTristimulusSpecification | ( | const ITristimulusSpecification & | spec | ) |
Sets the tristimulus specification for this color model.
| spec | New tristimulus specification. |