Colour 0.3.15
Colour 0.3.15 - Alpha Milestone
This is mainly a maintenance release implementing support for Python 3.8, Numpy 1.18 and fixing a major issue in Krystek (1985) correlated colour temperature computation.
Features
colour.colorimetry
- The typical CIE LED illuminants spectral power distributions and chromaticity coordinates have been added to the datasets: (@KelSolaar)
- LED-B1
- LED-B2
- LED-B3
- LED-B4
- LED-B5
- LED-BH1,
- LED-RGB1
- LED-V1
- LED-V2
- The recommended indoor illuminants ID65 and ID50 spectral power distributions and chromaticity coordinates have been added to the datasets. (@KelSolaar)
- Add
colour.colorimetry.sds_and_multi_sds_to_multi_sds
definition that converts given spectral and multi-spectral distributions to multi-spectral distributions. (@KelSolaar)
colour.models
- Implement support for Display P3 RGB colourspace as per https://developer.apple.com/documentation/coregraphics/cgcolorspace/1408916-displayp3#discussion. (@sobotka)
- Add
colour.models.Jab_to_JCh
andcolour.models.JCh_to_Jab
definitions. (@KelSolaar)
Fixes
colour
Various fixes have been implemented to ensure compatibility with Python 3.8 and Numpy 1.18. (@KelSolaar, @MaxSchambach, @mzszym)
colour.io
- Prevent spi3d LUT index duplicates because of floating point precision related issues. (@KelSolaar, @sobotka, @nick-shaw)
colour.notation
- Fix incorrect Domain-Range scale in Munsell Renotation System implementation. (@KelSolaar)
colour.temperature
colour.temperature.CCT_to_uv_Krystek1985
definition was incorrectly implemented. Incorrect reading of the reference publications ended up with exponentiations being different, e.g.10**4
was replaced with10e4
. (@OlliNiemitalo)
Changes
colour.algebra
colour.algebra.cartesian_to_spherical
andcolour.algebra.spherical_to_cartesian
use ISO conversion convention. ρ is in range [0, +inf], θ is in range [0, pi] radians, i.e. [0, 180] degrees, and φ is in range [-pi, pi] radians, i.e. [-180, 180] degrees.
colour.volume
colour.is_within_visible_spectrum
: (@KelSolaar)- Signature:
XYZ_outer_surface(XYZ, cmfs=STANDARD_OBSERVERS_CMFS['CIE 1931 2 Degree Standard Observer'].clone().align(DEFAULT_SPECTRAL_SHAPE_XYZ_OUTER_SURFACE), illuminant=sd_ones(DEFAULT_SPECTRAL_SHAPE_XYZ_OUTER_SURFACE), tolerance=None, **kwargs)
- Signature:
colour.volume.XYZ_outer_surface
: (@KelSolaar)- Signature:
XYZ_outer_surface(cmfs=STANDARD_OBSERVERS_CMFS['CIE 1931 2 Degree Standard Observer'].clone().align(DEFAULT_SPECTRAL_SHAPE_XYZ_OUTER_SURFACE), illuminant=sd_ones(DEFAULT_SPECTRAL_SHAPE_XYZ_OUTER_SURFACE), **kwargs)
- Implementation: The generated CIE XYZ tristimulus values are not normalised anymore, this will only affect computation if a different illuminant than CIE Illuminant E is chosen.
- Signature:
colour.plotting
: (@KelSolaar)colour.plotting.common.wrap_title
- Remove