Skip to content

Colour 0.3.6

Compare
Choose a tag to compare
@KelSolaar KelSolaar released this 09 Aug 09:59
· 4143 commits to develop since this release

Colour 0.3.6 - Alpha Milestone

Colour 0.3.6 is the last API version to support Python 2.6.

Features

colour.colorimetry

  • Implement colour.SpectralPowerDistribution.interpolate and colour.TriSpectralPowerDistribution.interpolate methods now also support Piecewise Cubic Hermite Interpolation. (@KelSolaar)
  • Implement colour.wavelength_to_XYZ definition supports all the API interpolation methods: (@KelSolaar)
    • Cubic Spline
    • Linear
    • Pchip
    • Sprague (1880)

colour.colorimetry.dataset

  • Add Kinoton 75P spectral power distribution and associated chromaticity coordinates. (@KelSolaar)

colour.models

  • Implement colour.xy_to_xyY and colour.xyY_to_xy definitions to provide support for illuminant arguments with Luminance value in various colour.models objects. (@KelSolaar)

colour.plotting

  • Implement colour.plotting.RGB_colourspaces_gamuts_plot definition to visualise RGB colourspaces gamuts. (@KelSolaar)
  • Implement colour.plotting.RGB_scatter_plot definition to visualise RGB values within RGB colourspaces gamuts. (@KelSolaar)
  • Implement colour.plotting.quad geometry plotting helper definition. (@KelSolaar)
  • Implement colour.plotting.grid geometry plotting helper definition. (@KelSolaar)
  • Implement colour.plotting.cube geometry plotting helper definition. (@KelSolaar)
  • Implement colour.plotting.multi_spd_colour_rendering_index_bars_plot definition to visualise colour rendering index of multiple illuminants or light sources spectral power distributions. (@henczati, @KelSolaar)
  • Implement colour.plotting.multi_spd_colour_quality_scale_bars_plot definition to visualise colour quality scale of multiple illuminants or light sources spectral power distributions. (@henczati, @KelSolaar)

colour.utilities

  • Implement colour.ArbitraryPrecisionMapping class based providing support for floating point keys by rounding them at a specific decimals count. (@KelSolaar)

colour.volume

  • Implement colour.is_within_mesh_volume definition returning if given points are within given mesh volume using Delaunay triangulation. (@KelSolaar)
  • Implement colour.is_within_pointer_gamut definition returning if given tristimulus values are within Pointer's Gamut. (@KelSolaar)
  • Implement colour.is_within_visible_spectrum definition returning if given tristimulus values are within Visible Spectrum. (@KelSolaar)
  • Implement colour.RGB_colourspace_pointer_gamut_coverage_MonteCarlo definition returning given RGB colourspace percentage coverage of Pointer's Gamut using Monte Carlo method. (@KelSolaar)
  • Implement colour.RGB_colourspace_visible_spectrum_coverage_MonteCarlo definition returning given RGB colourspace percentage coverage of Visible Spectrum using Monte Carlo method. (@KelSolaar)

Fixes

colour.colorimetry

  • Ensure colour.SpectralPowerDistribution.zeros method raises an exception if unsuccessful.
  • Implement colour.SpectralMapping class based on colour.ArbitraryPrecisionMapping class providing better support for floating point wavelengths keys by rounding them at a specific decimals count. (@KelSolaar)

Changes

colour.algebra

  • colour.LinearInterpolator1d: (@KelSolaar)
    • Name: colour.LinearInterpolator
  • colour.SplineInterpolator: (@KelSolaar)
    • Name: colour.CubicSplineInterpolator

colour.colorimetry.dataset

  • colour.wavelength_to_XYZ: (@KelSolaar)
    • Signature: colour.wavelength_to_XYZ(wavelength, cmfs=STANDARD_OBSERVERS_CMFS.get('CIE 1931 2 Degree Standard Observer'), method=None)
  • Rename D63 illuminant to DCI-P3. (@KelSolaar)
  • Remove D63 spectral power distribution and associated chromaticity coordinates. (@KelSolaar)

colour.models

  • colour.XYZ_to_Lab: (@KelSolaar)
    • Arguments:
      • illuminant: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.
  • colour.Lab_to_XYZ: (@KelSolaar)
    • Arguments:
      • illuminant: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.
  • colour.XYZ_to_Luv: (@KelSolaar)
    • Arguments:
      • illuminant: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.
  • colour.Luv_to_XYZ: (@KelSolaar)
    • Arguments:
      • illuminant: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.
  • colour.Luv_to_uv: (@KelSolaar)
    • Arguments:
      • illuminant: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.
  • colour.XYZ_to_UVW: (@KelSolaar)
    • Arguments:
      • illuminant: Reference illuminant xy chromaticity coordinates or CIE xyY colourspace array.
  • colour.XYZ_to_RGB: (@KelSolaar)
    • Arguments:
      • illuminant_XYZ: CIE XYZ tristimulus values illuminant xy chromaticity coordinates or CIE xyY colourspace array.
      • illuminant_RGB: RGB colourspace illuminant xy chromaticity coordinates or CIE xyY colourspace array.
  • colour.RGB_to_XYZ: (@KelSolaar)
    • Arguments:
      • illuminant_RGB: RGB colourspace illuminant xy chromaticity coordinates or CIE xyY colourspace array.
      • illuminant_XYZ: CIE XYZ tristimulus values illuminant xy chromaticity coordinates or CIE xyY colourspace array.

colour.plotting

  • colour.plotting.single_spd_plot: (@henczati, @fangjy88, @KelSolaar)
    • Arguments:
      • out_of_gamut_clipping: Out of gamut colours will be clipped if True otherwise, the colours
        will be offset by the absolute minimal colour leading to a rendering on
        gray background, less saturated and smoother.
  • colour.plotting.visible_spectrum_plot: (@henczati, @fangjy88, @KelSolaar)
    • Arguments:
      • out_of_gamut_clipping: Out of gamut colours will be clipped if True otherwise, the colours
        will be offset by the absolute minimal colour leading to a rendering on
        gray background, less saturated and smoother.
  • colour.plotting.colour_rendering_index_bars_plot: (@henczati, @KelSolaar)
    • Name: colour.plotting.single_spd_colour_rendering_index_bars_plot
  • colour.plotting.colour_quality_scale_bars_plot: (@henczati, @KelSolaar)
    • Name: colour.plotting.single_spd_colour_quality_scale_bars_plot

colour.volume

  • colour.volume.rgb.sample_RGB_colourspace_volume_MonteCarlo: (@KelSolaar)
    • Code vectorisation.