Coverage for characterisation/datasets/filters/sds.py: 0%

1"""

2 Spectral Distributions of Filters

3=================================

4

5 Define the spectral distributions of filters.

6

7 Each filter dataset is provided as a :class:`dict` mapping filter names to

8:class:`colour.SpectralDistribution` class instances with the following

9 structure::

10

11 {'name': SpectralDistribution, ..., 'name': SpectralDistribution}

12

13 The following filters are available:

14

15- ISO 7589 Diffuser

16

17 References

18----------

19- :cite:`InternationalOrganizationforStandardization2002` : International

20 Organization for Standardization. (2002). INTERNATIONAL STANDARD ISO

21 7589-2002 - Photography - Illuminants for sensitometry - Specifications for

22 daylight, incandescent tungsten and printer.

23"""

24

25 from __future__ import annotations

26

27 from functools import partial

28

29 from colour.colorimetry import SpectralDistribution

30 from colour.utilities import LazyCanonicalMapping

31

32 __author__ = "Colour Developers"

33 __copyright__ = "Copyright 2013 Colour Developers"

34 __license__ = "BSD-3-Clause - https://opensource.org/licenses/BSD-3-Clause"

35 __maintainer__ = "Colour Developers"

36 __email__ = "colour-developers@colour-science.org"

37 __status__ = "Production"

38

39 __all__ = [

40 "DATA_FILTERS_ISO",

41 "SDS_FILTERS_ISO",

42 "SDS_FILTERS",

43]

44

45 DATA_FILTERS_ISO: dict = {

46 "ISO 7589 Diffuser": {

47 350: 0.00,

48 360: 0.00,

49 370: 0.00,

50 380: 0.10,

51 390: 0.43,

52 400: 0.69,

53 410: 0.78,

54 420: 0.83,

55 430: 0.86,

56 440: 0.88,

57 450: 0.90,

58 460: 0.91,

59 470: 0.93,

60 480: 0.94,

61 490: 0.95,

62 500: 0.96,

63 510: 0.97,

64 520: 0.98,

65 530: 0.99,

66 540: 0.99,

67 550: 1.00,

68 560: 1.00,

69 }

70}

71

72 SDS_FILTERS_ISO: LazyCanonicalMapping = LazyCanonicalMapping(

73 {

74 "ISO 7589 Diffuser": partial(

75 SpectralDistribution,

76 DATA_FILTERS_ISO["ISO 7589 Diffuser"],

77 name="ISO 7589 Diffuser",

78 ),

79 }

80)

81 SDS_FILTERS_ISO.__doc__ = """

82 Spectral distributions of *ISO* filters.

83

84 References

85----------

86:cite:`InternationalOrganizationforStandardization2002`

87"""

88

89 SDS_FILTERS: LazyCanonicalMapping = LazyCanonicalMapping(SDS_FILTERS_ISO)

90 SDS_FILTERS.__doc__ = """

91 Spectral distributions of filters.

92

93 References

94----------

95:cite:`InternationalOrganizationforStandardization2002`

96"""