Learn R Programming

munsellinterpol (version 2.0.1)

IsWithinMacAdamLimits: Test xyY Coordinates for being Inside the MacAdam Limits

Description

Test xyY Coordinates for being Inside the MacAdam Limits for Illuminants C and D65

Usage

IsWithinMacAdamLimits( xyY, Illuminant='C' )

Arguments

xyY

a numeric Nx3 matrix with CIE xyY coordinates in the rows, or a vector that can be converted to such a matrix, by row. The reference white is asssumed to satisfy Y=100.

Illuminant

either 'C' or 'D65'. Partial matching is enabled, and is case-insensitive.

Value

A logical vector of length N. A value is TRUE iff. the corresponding row in xyY is inside the optimal color solid for the illuminant.

Details

The MacAdam Limits is the boundary of the optimal color solid (also called the R<U+00F6>sch Farbk<U+00F6>rper), in XYZ coordinates. The optimal color solid is convex and depends on the illuminant. Points on the boundary of the solid are called optimal colors. This color solid has a smooth boundary (in the physical sense), except at black and white. It is symmetric about the midpoint of the segment joining black and white (the 50% gray point). It can be approximated as the convex hull of a large number of optimal colors. For Illuminant D65 about 200 points (in xyY coordinates) were computed and published by Wyszecki&Stiles (1982).. For Illuminant C a similar set of 994 points was computed using package colorSpec; for details please see the header of file OptimalColorsForIlluminantC.txt. Tesselations of the convex hulls are stored privately inside this package, and ready to go.

References

R<U+00F6>sch, S. Darstellung der Farbenlehre f<U+00FC>r die Zwecke des Mineralogen. Fortschr. Mineral. Krist. Petrogr. Vol. 13 No. 143. 1929.

MacAdam, David L. Maximum Visual Efficiency of Colored Materials. Journal of the Optical Society of America. Vol 25, No. 11. pp. 361-367. November 1935.

G<U+00FC>nther Wyszecki and W. S. Stiles. Color Science: Concepts and Methods, Quantitative Data and Formulae, Second Edition. John Wiley & Sons, 1982. Table II(3.7). p. 778-779.

See Also

delaunayn(), tsearchn()

Examples

Run this code
# NOT RUN {
IsWithinMacAdamLimits( c(0.6,0.3,10, 0.6,0.3,20, 0.6,0.3,30, 0.6,0.3,40  ), 'C' )
##  [1]  TRUE  TRUE FALSE FALSE
# }

Run the code above in your browser using DataLab