API reference - Class ImageDataMapping

Notation used in Ruby API documentation

Description: A structure describing the data mapping of an image object

Data mapping is the process of transforming the data into RGB pixel values. This implementation provides four adjustment steps: first, in the case of monochrome data, the data is converted to a RGB triplet using the color map. The default color map will copy the value to all channels rendering a gray scale. After having normalized the data to 0..1 cooresponding to the min_value and max_value settings of the image, a color channel-independent brightness and contrast adjustment is applied. Then, a per-channel multiplier (red_gain, green_gain, blue_gain) is applied. Finally, the gamma function is applied and the result converted into a 0..255 pixel value range and clipped.

Public constructors

new ImageDataMappingnewCreate a new data mapping object with default settings

Public methods

voidadd_colormap_entry(double value,
unsigned int color)
Add a colormap entry for this data mapping object.
[const]voidassign(const ImageDataMapping other)Assign the contents of another object to self
[const]doubleblue_gainThe blue channel gain
voidblue_gain=(double blue_gain)Set the blue_gain
[const]doublebrightnessThe brightness value
voidbrightness=(double brightness)Set the brightness
voidclear_colormapThe the color map of this data mapping object.
[const]unsigned intcolormap_color(unsigned int n)Returns the color for a given color map entry.
[const]doublecolormap_value(unsigned int n)Returns the vlue for a given color map entry.
[const]doublecontrastThe contrast value
voidcontrast=(double contrast)Set the contrast
voidcreateEnsures the C++ object is created
voiddestroyExplicitly destroy the object
[const]booldestroyed?Returns a value indicating whether the object was already destroyed
[const]ImageDataMappingdupCreates a copy of self
[const]doublegammaThe gamma value
voidgamma=(double gamma)Set the gamma
[const]doublegreen_gainThe green channel gain
voidgreen_gain=(double green_gain)Set the green_gain
[const]boolis_const_object?Returns a value indicating whether the reference is a const reference
[const]unsigned intnum_colormap_entriesReturns the current number of color map entries.
[const]doublered_gainThe red channel gain
voidred_gain=(double red_gain)Set the red_gain

Detailed description

void add_colormap_entry(double value,unsigned int color)

Description: Add a colormap entry for this data mapping object.

value:The value at which the given color should be applied.
color:The color to apply (a 32 bit RGB value).

This settings establishes a color mapping for a given value in the monochrome channel. The color must be given as a 32 bit integer, where the lowest order byte describes the blue component (0 to 255), the second byte the green component and the third byte the red component, i.e. 0xff0000 is red and 0x0000ff is blue.

[const] void assign(const ImageDataMapping other)

Description: Assign the contents of another object to self

This method assigns the contents of another object to self. This is a deep copy that does not only copy the reference but the actual content.

[const] double blue_gain

Description: The blue channel gain

This value is the multiplier by which the blue channel is scaled after applying false color transformation and contrast/brightness/gamma.

1.0 is a neutral value. The gain should be >=0.0.

void blue_gain=(double blue_gain)

Description: Set the blue_gain

See blue_gain for a description of this property.

[const] double brightness

Description: The brightness value

The brightness is a double value between roughly -1.0 and 1.0. Neutral (original) brightness is 0.0.

void brightness=(double brightness)

Description: Set the brightness

See brightness for a description of this property.

void clear_colormap

Description: The the color map of this data mapping object.

[const] unsigned int colormap_color(unsigned int n)

Description: Returns the color for a given color map entry.

n:The index of the entry (0..num_colormap_entries-1)
Returns:The color (see add_colormap_entry for a description).

[const] double colormap_value(unsigned int n)

Description: Returns the vlue for a given color map entry.

n:The index of the entry (0..num_colormap_entries-1)
Returns:The value (see add_colormap_entry for a description).

[const] double contrast

Description: The contrast value

The contrast is a double value between roughly -1.0 and 1.0. Neutral (original) contrast is 0.0.

void contrast=(double contrast)

Description: Set the contrast

See contrast for a description of this property.

void create

Description: Ensures the C++ object is created

Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created.

void destroy

Description: Explicitly destroy the object

Explicitly destroy the object on C++ side if it was owned by the Ruby interpreter. Subsequent access to this object will throw an exception. If the object is not owned by Ruby, this method will do nothing.

[const] bool destroyed?

Description: Returns a value indicating whether the object was already destroyed

This method returns true, if the object was destroyed, either explicitly or by the C++ side. The latter may happen, if the object is owned by a C++ object which got destroyed itself.

[const] ImageDataMapping dup

Description: Creates a copy of self

[const] double gamma

Description: The gamma value

The gamma value allows to adjust for non-linearities in the display chain and to enhance contrast. A value for linear intensity reproduction on the screen is roughly 0.5. The exact value depends on the monitor calibration. Values below 1.0 give a "softer" appearance while values above 1.0 give a "harder" appearance.

void gamma=(double gamma)

Description: Set the gamma

See gamma for a description of this property.

[const] double green_gain

Description: The green channel gain

This value is the multiplier by which the green channel is scaled after applying false color transformation and contrast/brightness/gamma.

1.0 is a neutral value. The gain should be >=0.0.

void green_gain=(double green_gain)

Description: Set the green_gain

See green_gain for a description of this property.

[const] bool is_const_object?

Description: Returns a value indicating whether the reference is a const reference

This method returns true, if self is a const reference. In that case, only const methods may be called on self.

[static] new ImageDataMapping new

Description: Create a new data mapping object with default settings

[const] unsigned int num_colormap_entries

Description: Returns the current number of color map entries.

Returns:The number of entries.

[const] double red_gain

Description: The red channel gain

This value is the multiplier by which the red channel is scaled after applying false color transformation and contrast/brightness/gamma.

1.0 is a neutral value. The gain should be >=0.0.

void red_gain=(double red_gain)

Description: Set the red_gain

See red_gain for a description of this property.