The dufy Reference Manual

This is the dufy Reference Manual, version 0.4.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 16:19:24 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 dufy

Color library for Common Lisp

Author

Hugo I.

License

MIT

Version

0.4.1

Dependencies
Source

dufy.asd.

Child Components

2.2 dufy/core

Author

Hugo I.

License

MIT

Dependencies
Source

dufy.asd.

Child Component

core (module).


2.3 dufy/internal

Common definitions not exported in the main package

Author

Hugo I.

License

MIT

Dependency

alexandria (system).

Source

dufy.asd.

Child Component

internal (module).


2.4 dufy/munsell

Munsell Color System

Author

Hugo I.

License

MIT

Dependencies
Source

dufy.asd.

Child Component

munsell (module).


2.5 dufy/hsluv

HSLuv and HPLuv color spaces

Author

Hugo I.

License

MIT

Dependency

dufy/core (system).

Source

dufy.asd.

Child Component

hsluv (module).


3 Modules

Modules are listed depth-first from the system components tree.


3.1 dufy/dat

Source

dufy.asd.

Parent Component

dufy (system).

Child Components

3.2 dufy/src

Source

dufy.asd.

Parent Component

dufy (system).

Child Component

package.lisp (file).


3.3 dufy/core/core

Source

dufy.asd.

Parent Component

dufy/core (system).

Child Components

3.4 dufy/internal/internal

Source

dufy.asd.

Parent Component

dufy/internal (system).

Child Components

3.5 dufy/munsell/munsell

Source

dufy.asd.

Parent Component

dufy/munsell (system).

Child Components

3.6 dufy/hsluv/hsluv

Source

dufy.asd.

Parent Component

dufy/hsluv (system).

Child Components

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


4.1 Lisp


4.1.1 dufy/dufy.asd

Source

dufy.asd.

Parent Component

dufy (system).

ASDF Systems

4.1.2 dufy/src/package.lisp

Source

dufy.asd.

Parent Component

src (module).

Packages

dufy.


4.1.3 dufy/core/core/package.lisp

Source

dufy.asd.

Parent Component

core (module).

Packages

dufy/core.


4.1.4 dufy/core/core/cmf-data.lisp

Source

dufy.asd.

Parent Component

core (module).

Internals

4.1.5 dufy/core/core/spectrum.lisp

Source

dufy.asd.

Parent Component

core (module).

Public Interface
Internals

4.1.6 dufy/core/core/illuminants-data.lisp

Source

dufy.asd.

Parent Component

core (module).

Public Interface
Internals

+illum-c-table+ (special variable).


4.1.7 dufy/core/core/xyz.lisp

Source

dufy.asd.

Parent Component

core (module).

Public Interface

4.1.8 dufy/core/core/rgb.lisp

Source

dufy.asd.

Parent Component

core (module).

Public Interface
Internals

4.1.9 dufy/core/core/lab-and-luv.lisp

Source

dufy.asd.

Parent Component

core (module).

Public Interface
Internals

4.1.10 dufy/core/core/cat.lisp

Source

dufy.asd.

Parent Component

core (module).

Public Interface
Internals

4.1.11 dufy/core/core/builtin-rgbspaces.lisp

Source

dufy.asd.

Parent Component

core (module).

Public Interface
Internals

4.1.12 dufy/core/core/deltae.lisp

Source

dufy.asd.

Parent Component

core (module).

Public Interface

4.1.13 dufy/internal/internal/package.lisp

Source

dufy.asd.

Parent Component

internal (module).

Packages

dufy/internal.


4.1.14 dufy/internal/internal/utilities.lisp

Source

dufy.asd.

Parent Component

internal (module).

Public Interface
Internals

4.1.15 dufy/internal/internal/arithmetic.lisp

Source

dufy.asd.

Parent Component

internal (module).

Public Interface

4.1.16 dufy/internal/internal/matrix.lisp

Source

dufy.asd.

Parent Component

internal (module).

Public Interface
Internals

determinant (function).


4.1.17 dufy/internal/internal/colorspace.lisp

Source

dufy.asd.

Parent Component

internal (module).

Public Interface
Internals

4.1.18 dufy/internal/internal/mb-line.lisp

Source

dufy.asd.

Parent Component

internal (module).

Public Interface
Internals

4.1.19 dufy/munsell/munsell/package.lisp

Source

dufy.asd.

Parent Component

munsell (module).

Packages

dufy/munsell.


4.1.20 dufy/munsell/munsell/y-to-value-data.lisp

Source

dufy.asd.

Parent Component

munsell (module).

Internals

+y-to-munsell-value-table+ (special variable).


4.1.21 dufy/munsell/munsell/renotation-data.lisp

Source

dufy.asd.

Parent Component

munsell (module).

Internals

4.1.22 dufy/munsell/munsell/inversed-renotation-data.lisp

Source

dufy.asd.

Parent Component

munsell (module).

Internals

4.1.23 dufy/munsell/munsell/fundamental.lisp

Source

dufy.asd.

Parent Component

munsell (module).

Public Interface
Internals

4.1.24 dufy/munsell/munsell/convert.lisp

Source

dufy.asd.

Parent Component

munsell (module).

Public Interface
Internals

4.1.25 dufy/munsell/munsell/invert.lisp

Source

dufy.asd.

Parent Component

munsell (module).

Public Interface
Internals

4.1.26 dufy/hsluv/hsluv/package.lisp

Source

dufy.asd.

Parent Component

hsluv (module).

Packages

dufy/hsluv.


4.1.27 dufy/hsluv/hsluv/hsluv.lisp

Source

dufy.asd.

Parent Component

hsluv (module).

Public Interface
Internals

4.2 Static


4.2.1 dufy/dat/ciede2000-test-data.csv

Source

dufy.asd.

Parent Component

dat (module).


4.2.2 dufy/dat/FL3.x.tsv

Source

dufy.asd.

Parent Component

dat (module).


5 Packages

Packages are listed by definition order.


5.1 dufy/munsell

Source

package.lisp.

Nickname

dufy-munsell

Use List
Used By List

dufy.

Public Interface
Internals

5.2 dufy/core

Source

package.lisp.

Nickname

dufy-core

Use List
Used By List
Public Interface
Internals

5.3 dufy/hsluv

Source

package.lisp.

Use List
Used By List

dufy.

Public Interface
Internals

5.4 dufy/internal

Source

package.lisp.

Use List
  • alexandria.
  • common-lisp.
Used By List
Public Interface
Internals

5.5 dufy

Source

package.lisp.

Use List

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


6.1 Public Interface


6.1.1 Constants

Constant: +360/two-pi+
Package

dufy/internal.

Source

arithmetic.lisp.

Constant: +two-pi/360+
Package

dufy/internal.

Source

arithmetic.lisp.

Constant: two-pi
Package

dufy/internal.

Source

arithmetic.lisp.


6.1.2 Special variables

Special Variable: *dat-dir-path*
Package

dufy/internal.

Source

utilities.lisp.

Special Variable: *most-positive-non-large-double-float*
Package

dufy/munsell.

Source

fundamental.lisp.

Special Variable: +adobe+

Adobe RGB (1998), 8-bit per channel

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +adobe-16+

Adobe RGB (1998), 16-bit per channel.

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +bg-srgb-10+

bg-sRGB, 10-bit per channel http://www.color.org/chardata/rgb/bgsrgb.xalter

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +bg-srgb-12+

bg-sRGB, 12-bit per channel, http://www.color.org/chardata/rgb/bgsrgb.xalter

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +bg-srgb-16+

bg-sRGB, 16-bit per channel, http://www.color.org/chardata/rgb/bgsrgb.xalter

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +bradford+
Package

dufy/core.

Source

cat.lisp.

Special Variable: +cat02+

Note that the CAT function returned by (gen-cat-function ... :cat +cat02+) is different from the one in CIECAM02 since the latter is non-linear.

Package

dufy/core.

Source

cat.lisp.

Special Variable: +cat97s-revised+

Fairchild, Mark D. (2001)."A Revision of CIECAM97s for Practical Applications" http://rit-mcsl.org/fairchild//PDFs/PAP10.pdf

Package

dufy/core.

Source

cat.lisp.

Special Variable: +cie-rgb+

CIE RGB (1931), no gamma-correction, 8-bit per channel.

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +cmccat2000+
Package

dufy/core.

Source

cat.lisp.

Special Variable: +cmccat97+
Package

dufy/core.

Source

cat.lisp.

Special Variable: +empty-matrix+

Used instead of NIL

Package

dufy/internal.

Source

matrix.lisp.

Special Variable: +identity-matrix+
Package

dufy/internal.

Source

matrix.lisp.

Special Variable: +illum-a+
Package

dufy/core.

Source

illuminants-data.lisp.

Special Variable: +illum-c+
Package

dufy/core.

Source

illuminants-data.lisp.

Special Variable: +illum-d50+
Package

dufy/core.

Source

illuminants-data.lisp.

Special Variable: +illum-d65+
Package

dufy/core.

Source

illuminants-data.lisp.

Special Variable: +illum-e+
Package

dufy/core.

Source

illuminants-data.lisp.

Special Variable: +ntsc1953+

NTSC RGB, Rec. ITU-R BT.470-6, System M, 8-bit per channel. http://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.470-6-199811-S!!PDF-E.pdf

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +obs-cie1931+

CIE 1931 Standard Colorimetric Observer (2-degree).

Package

dufy/core.

Source

spectrum.lisp.

Special Variable: +obs-cie1964+

CIE 1964 Standard Colorimetric Observer (10-degree).

Package

dufy/core.

Source

spectrum.lisp.

Special Variable: +pal/secam+

PAL/SECAM RGB, Rec. ITU-R BT.470-6, 8-bit per channel. http://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.470-6-199811-S!!PDF-E.pdf

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +prophoto+

Prophoto RGB (also known as ROMM RGB), 8-bit per channel, http://www.color.org/ROMMRGB.pdf

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +prophoto-12+

Prophoto RGB (also known as ROMM RGB), 12-bit per channel, http://www.color.org/ROMMRGB.pdf

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +prophoto-16+

Prophoto RGB (also known as ROMM RGB), 16-bit per channel, http://www.color.org/ROMMRGB.pdf

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +scrgb-16+

scRGB(16), IEC 61966-2-2:2003 http://www.color.org/chardata/rgb/scrgb.xalter

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +scrgb-nl+

scRGB-nl, IEC 61966-2-2:2003 http://www.color.org/chardata/rgb/scrgb-nl.xalter

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +srgb+

sRGB, 8-bit per channel

Package

dufy/core.

Source

rgb.lisp.

Special Variable: +von-kries+
Package

dufy/core.

Source

cat.lisp.

Special Variable: +wide-gamut+

Wide-gamut RGB, 8-bit per channel.

Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Special Variable: +xyz-scaling+
Package

dufy/core.

Source

cat.lisp.


6.1.3 Macros

Macro: defconverter (from-colorspace to-colorspace &key name exclude-args documentation)

Generates and defines a converter function from FROM-COLORSPACE to TO-COLORSPACE automatically with linking primary converters.

These secondary converters are not inlined by default, different from primary converters. You can manually declare (inline <name>) to inline them. (Declared as sb-ext:maybe-inline on SBCL.)

Package

dufy/internal.

Source

colorspace.lisp.

Macro: defconverters (from-colorspaces to-colorspaces &key exclude-args)

Generates and defines converter functions from each color space in FROM-COLORSPACES into each color space in TO-COLORSPACES.

Package

dufy/internal.

Source

colorspace.lisp.

Macro: define-cat-function (name from-illuminant to-illuminant &key cat)

DEFINE-macro of GEN-CAT-FUNCTION. (define-cat-function d65-to-e +illum-d65+ +illum-e+) (d65-to-e 0.9504d0 1.0d0 1.0889d0)
;; => 0.9999700272441295d0
;; 0.999998887365445d0
;; 0.9999997282885571d0

Package

dufy/core.

Source

cat.lisp.

Macro: define-colorspace (name args &key arg-types return-types documentation)
Package

dufy/internal.

Source

colorspace.lisp.

Macro: define-functional ((fname colorspace &key term) lambda-list &body body)
Package

dufy/internal.

Source

colorspace.lisp.

Macro: define-primary-converter ((from-colorspace to-colorspace &key name) lambda-list &body body)

Defines FOO-TO-BAR function as a primary converter. Only &key arguments (without supplied-p-parameter) and &aux arguments are allowed.

Package

dufy/internal.

Source

colorspace.lisp.

Macro: dotimes-unroll ((var count &optional result) &body body)
Package

dufy/internal.

Source

utilities.lisp.

Macro: extend-functional (term colorspace &key fname exclude-args documentation)

Generates and defines a functional on another color space. The name of the function is [COLORSPACE]-[TERM] if FNAME is not given.

Package

dufy/internal.

Source

colorspace.lisp.

Macro: internal-real-time-after-gc (&body body)

INTERNAL-REAL-TIME macro after GC

Package

dufy/internal.

Source

utilities.lisp.

Macro: nearly-equal-values (threshold &rest forms)
Package

dufy/internal.

Source

arithmetic.lisp.

Macro: nlet (name args &body body)
Package

dufy/internal.

Source

utilities.lisp.

Macro: pow (base power)

Does fast exponentiation by squaring. POWER must be a literal of type (integer 1).

Package

dufy/internal.

Source

arithmetic.lisp.

Macro: time-after-gc (&body body)

TIME macro after GC

Package

dufy/internal.

Source

utilities.lisp.

Macro: time-median (num &body body)

Repeats BODY NUM times and returns the median of elapsed (internal real) times.

Package

dufy/internal.

Source

utilities.lisp.

Macro: with-ensuring-type (type vars &body body)

Ensures and declares that the type of variables are TYPE.

Package

dufy/internal.

Source

utilities.lisp.

Macro: with-profiling (names &body body)

Works only on SBCL.

Package

dufy/internal.

Source

utilities.lisp.


6.1.4 Compiler macros

Compiler Macro: make-illuminant (&key x z spectrum observer begin-wl end-wl band compile-time)
Package

dufy/core.

Source

spectrum.lisp.


6.1.5 Ordinary functions

Function: approximate-spectrum (spectrum &key begin-wl end-wl band)

Generates an approximate spectrum of SPECTRUM by pieacewise linearization. It is used to lighten a "heavy" spectrum function.

Package

dufy/core.

Source

spectrum.lisp.

Function: bb-spectrum (wavelength-nm &optional temperature)

Spectrum function of a blackbody. Note that it is not normalized.

Package

dufy/core.

Source

spectrum.lisp.

Function: call-with-profiling (names func)

Works only on SBCL.

Package

dufy/internal.

Source

utilities.lisp.

Reader: cat-inv-matrix (instance)
Writer: (setf cat-inv-matrix) (instance)
Package

dufy/core.

Source

cat.lisp.

Target Slot

inv-matrix.

Reader: cat-matrix (instance)
Writer: (setf cat-matrix) (instance)
Package

dufy/core.

Source

cat.lisp.

Target Slot

matrix.

Function: circular-clamp (number min max &optional perimeter)

A clamp function in a circle group. If NUMBER is not in
the (counterclockwise) closed interval [MIN, MAX], CIRCULAR-CLAMP returns MIN or MAX whichever is nearer to NUMBER.

Package

dufy/internal.

Source

arithmetic.lisp.

Function: circular-lerp (coef theta1 theta2 &optional perimeter)

Counterclockwise linear interpolation from THETA1 to THETA2 in a circle group. It is guaranteed that the returned value doesn’t exceed the given interval from THETA1 to THETA2 if COEF is in [0, 1]. It is, however, slower than CIRCULAR-LERP-LOOSE.

Package

dufy/internal.

Source

arithmetic.lisp.

Function: circular-lerp-loose (coef theta1 theta2 &optional perimeter)

Counterclockwise linear interpolation from THETA1 to THETA2 in a circle group. There is a possibility that the returned value slightly exceeds the interval [THETA1, THETA2] due to floating-point error. If that is incovenient, you should use CIRCULAR-LERP instead.

Package

dufy/internal.

Source

arithmetic.lisp.

Function: circular-member (number theta1 theta2 &optional perimeter)

Returns true if NUMBER is within the counterclockwise closed interval [THETA1, THETA2] in a circle group.

Package

dufy/internal.

Source

arithmetic.lisp.

Function: circular-nearer (theta1 x theta2 &optional perimeter)

Compares the counterclockwise distances between THETA1 and X and between X and THETA2, and returns THETA1 or THETA2 whichever is nearer.

Package

dufy/internal.

Source

arithmetic.lisp.

Function: copy-rgbspace (rgbspace &key illuminant bit-per-channel cat)

Returns a new RGBSPACE with different standard illuminant and/or bit-per-channel. All the parameters are properly recalculated. If both are nil, it is just a copier.

Package

dufy/core.

Source

cat.lisp.

Function: degree-to-radian (degree)
Package

dufy/internal.

Source

arithmetic.lisp.

Function: delinearize (x &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: dequantize (n &key rgbspace)

Dequantizes a QRGB value to an RGB value

Package

dufy/core.

Source

rgb.lisp.

Function: flat-spectrum (wavelength-nm)

(constantly 1d0)

Package

dufy/core.

Source

spectrum.lisp.

Function: gen-cat-function (from-illuminant to-illuminant &key cat)

Returns a chromatic adaptation function.
(funcall (gen-cat-function +illum-a+ +illum-e+) 0.9504d0 1.0d0 1.0889d0) => 0.9999700272441295d0
0.999998887365445d0
0.9999997282885571d0 ; transformed white point

Package

dufy/core.

Source

cat.lisp.

Function: gen-delinearizer (gamma)

Returns a gamma-correction function for a given gamma value. You shouldn’t call the returned function directly as it is not safe. Use DELINEARIZE instead.

Package

dufy/core.

Source

rgb.lisp.

Function: gen-illum-d-spectrum (temperature &key rectify)

Generates the spectrum of the illuminant series D for a given
temperature (from 300 nm to 830 nm with band-width 1 nm). If RECTIFY is true, the temperature multiplied by 1.4388/1.438 is used instead. (roughly 6504K for 6500K, etc.)

Package

dufy/core.

Source

spectrum.lisp.

Function: gen-linearizer (gamma)

Returns a linearization function for a given gamma value. You shouldn’t call the returned function directly as it is not safe. Use LINEARIZE instead.

Package

dufy/core.

Source

rgb.lisp.

Function: gen-rgbspace-changer (from-rgbspace to-rgbspace &key target cat)

Returns a function for changing RGB working space.

(funcall (gen-rgbspace-changer +srgb+ +adobe+ :target :rgb) 0 1 0) ;; => 0.5649506908657044d0
;; 1.0d0
;; 0.2344342037422755d0
;; change from sRGB to Adobe RGB.

TARGET ::= :LRGB | :RGB | :QRGB | :RGBPACK

Note about clamping:
LRGB case: no clamping;
RGB case: no clamping;
QRGB case: with clamping;
RGBPACK case: with clamping.

Package

dufy/core.

Source

cat.lisp.

Function: gen-spectrum (spectrum-seq &optional begin-wl end-wl)

GEN-SPECTRUM returns a spectral power distribution
function, #’(lambda (wavelength-nm) ...), which interpolates SPECTRUM-SEQ linearly.

Note: SPECTRUM-SEQ must be a sequence of double-float. If the type of SPECTRUM-SEQ is (simple-array double-float (*)), it is not copied but referenced, otherwise it is copied by (coerce spectrum-seq ’(simple-array double-float (*))).

Package

dufy/core.

Source

spectrum.lisp.

Function: hpluv-to-lchuv (huv psat lstar)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hpluv-to-lrgb (huv psat lstar &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hpluv-to-qrgb (huv psat lstar &key rgbspace clamp)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hpluv-to-rgb (huv psat lstar &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hpluv-to-rgbpack (huv psat lstar &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hpluv-to-xyz (huv psat lstar &key illuminant)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hsl-to-lrgb (hue sat lum &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: hsl-to-qrgb (hue sat lum &key rgbspace clamp)
Package

dufy/core.

Source

rgb.lisp.

Function: hsl-to-rgb (hue sat lum)

Non-normal RGB space is also accepted, though it depends on the situation whether the returned values are meaningful.

Package

dufy/core.

Source

rgb.lisp.

Function: hsl-to-rgbpack (hue sat lum &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: hsl-to-xyz (hue sat lum &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: hsluv-to-lchuv (huv sat lstar)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hsluv-to-lrgb (huv sat lstar &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hsluv-to-qrgb (huv sat lstar &key rgbspace clamp)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hsluv-to-rgb (huv sat lstar &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hsluv-to-rgbpack (huv sat lstar &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hsluv-to-xyz (huv sat lstar &key illuminant)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: hsv-to-lrgb (hue sat val &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: hsv-to-qrgb (hue sat val &key rgbspace clamp)
Package

dufy/core.

Source

rgb.lisp.

Function: hsv-to-rgb (hue sat val)

Non-normal RGB space is also accepted, though it depends on the situation whether the returned values are meaningful.

Package

dufy/core.

Source

rgb.lisp.

Function: hsv-to-rgbpack (hue sat val &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: hsv-to-xyz (hue sat val &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: illuminant-no-spd-p (illuminant)
Package

dufy/core.

Source

spectrum.lisp.

Reader: illuminant-observer (instance)
Writer: (setf illuminant-observer) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

observer.

Reader: illuminant-spectrum (instance)
Writer: (setf illuminant-spectrum) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

spectrum.

Reader: illuminant-x (instance)
Writer: (setf illuminant-x) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

x.

Function: illuminant-xy (illuminant)

Returns the xy chromacity coordinates of a given illuminant.

Package

dufy/core.

Source

spectrum.lisp.

Reader: illuminant-z (instance)
Writer: (setf illuminant-z) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

z.

Function: invert-matrix (mat)
Package

dufy/internal.

Source

matrix.lisp.

Function: lab-deltae00 (l1 a1 b1 l2 a2 b2)

CIEDE2000.

Tested with the test set by Sharma-Wu-Dalal. See "The CIEDE2000 Color-Difference Formula: Implementation Notes, Supplementary Test Data, and Mathematical Observations", 2004.

Package

dufy/core.

Source

deltae.lisp.

Function: lab-deltae94 (l1 a1 b1 l2 a2 b2 &key application)

CIE 1994.
APPLICATION ::= :graphic-arts | :textiles

Package

dufy/core.

Source

deltae.lisp.

Function: lab-deltaeab (l1 a1 b1 l2 a2 b2)

CIE 1976. Euclidean distance in L*a*b* space.

Package

dufy/core.

Source

deltae.lisp.

Function: lab-deltaecmc (l1 a1 b1 l2 a2 b2 &key l-factor c-factor)

CMC l:c

Package

dufy/core.

Source

deltae.lisp.

Function: lab-to-lchab (lstar astar bstar)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: lab-to-xyz (lstar astar bstar &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: lchab-to-lab (lstar cstarab hab)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: lchab-to-mhvc-illum-c (lstar cstarab hab &key max-iteration if-reach-max factor threshold)

Is an inverter of MHVC-TO-LCHAB-ILLUM-C with a simple iteration algorithm, which is almost same as the one in "An Open-Source Inversion Algorithm for the Munsell Renotation" by Paul Centore, 2011:

V := LSTAR-TO-MUNSELL-VALUE(L*);
C_0 := C*_ab / 5.5;
H_0 := h_ab / 9;
C_(n+1) := C_n + FACTOR * ΔC_n;
H_(n+1) := H_n + FACTOR * ΔH_n;

Δ(H_n) and Δ(C_n) are internally calculated at every step. This function returns Munsell HVC values if C_0 <= THRESHOLD or if V <= THRESHOLD or when max(Δ(H_n), Δ(C_n)) falls below THRESHOLD.

IF-REACH-MAX specifies the action to be taken if the loop reaches the MAX-ITERATION as follows:

:error: Error of type DUFY:LARGE-APPROXIMATION-ERROR is signaled. :return40: Three 40d0s are returned.
:raw: Just returns HVC as it is.

Package

dufy/munsell.

Source

invert.lisp.

Function: lchab-to-munsell-illum-c (lstar cstarab hab &key max-iteration if-reach-max factor threshold digits)

Illuminant C

Package

dufy/munsell.

Source

invert.lisp.

Function: lchab-to-xyz (lstar cstarab hab &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: lchuv-to-hpluv (lstar cstaruv huv)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: lchuv-to-hsluv (lstar cstaruv huv)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: lchuv-to-luv (lstar cstaruv huv)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: lchuv-to-xyz (lstar cstaruv huv &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: linearize (x &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: lms-to-xyz (l m s &key illuminant cat)

ILLUMINANT can be NIL and in that case the transform is virtually equivalent to that of illuminant E.

Package

dufy/core.

Source

cat.lisp.

Function: lrgb-out-of-gamut-p (lr lg lb &key rgbspace threshold)

Returns true if at least one of LR, LG, and LB is outside the interval [RGBSPACE-LMIN - THRESHOLD, RGBSPACE-LMAX + THRESHOLD].

Package

dufy/core.

Source

rgb.lisp.

Function: lrgb-to-hpluv (lr lg lb &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: lrgb-to-hsl (lr lg lb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: lrgb-to-hsluv (lr lg lb &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: lrgb-to-hsv (lr lg lb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: lrgb-to-qrgb (lr lg lb &key rgbspace clamp)
Package

dufy/core.

Source

rgb.lisp.

Function: lrgb-to-rgb (lr lg lb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: lrgb-to-rgbpack (lr lg lb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: lrgb-to-xyz (lr lg lb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: lstar-to-munsell-value (lstar)
Package

dufy/munsell.

Source

fundamental.lisp.

Function: lstar-to-y (lstar)

L* (of L*a*b*) to Y (of XYZ)

Package

dufy/core.

Source

lab-and-luv.lisp.

Function: luv-to-lchuv (lstar ustar vstar)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: luv-to-xyz (lstar ustar vstar &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: make-cat (mat)

Generates a (linear) CAT model from a 3*3 matrix.

Package

dufy/core.

Source

cat.lisp.

Function: make-illuminant (&key x z spectrum observer compile-time begin-wl end-wl band)

Generates an illuminant from a spectral distribution or a white point. If SPECTRUM is nil, the returned illuminant contains only a white point. If X and Z are nil, on the other hand, the white point (X, 1d0, Z) is automatically calculated from the spectrum. You can also specify the both though you should note that no error occurs even if the given white point and SPD contradicts to each other.

(make-illuminant :x 1.0 :z 1.0)
;; => illuminant without SPD

(make-illuminant :x 1.0 :z 1.0 :spectrum #’flat-spectrum)
(make-illuminant :spectrum #’flat-spectrum)
;; => (almost same) illuminants with SPD

(make-illuminant :x 0.9 :z 1.1 :spectrum #’flat-spectrum)
;; => (valid but meaningless) illuminant with SPD

If X and Y are NIL and COMPILE-TIME is T, the white point is
calculated at compile time. (Avoid side effects in this case as the parameters are EVALed.)

Package

dufy/core.

Source

spectrum.lisp.

Function: make-mb-line (&key slope intercept)
Package

dufy/internal.

Source

mb-line.lisp.

Function: make-observer (cmf-table &optional begin-wl end-wl)

Generates an observer object based on CMF arrays, which must be (SIMPLE-ARRAY DOUBLE-FLOAT (* 3)). The response outside the interval [begin-wl, end-wl] is regarded as 0.

Package

dufy/core.

Source

spectrum.lisp.

Function: make-rgbspace (xr yr xg yg xb yb &key illuminant lmin lmax linearizer delinearizer bit-per-channel force-normal)

xr, yr, xg, yg, xb, yb := primary coordinates in the xy plane.
[lmin, lmax] := range of linear values ([0, 1] typically).

LINEARIZER and DELINEARIZER must be (FUNCTION * (VALUES DOUBLE-FLOAT &OPTIONAL)).

If FORCE-NORMAL is T, the nominal range of gamma-corrected values is forcibly set to [0d0, 1d0]. This option is used to avoid the computed range being e.g. [0d0, 0.9999999999999999d0].

Package

dufy/core.

Source

rgb.lisp.

Function: max-chroma-in-mrd (hue40 value &key use-dark)

Returns the largest chroma in the Munsell Renotation Data (all.dat) for a given hue and value. If you want to ignore the data for value = 0.2, 0.4, 0.6, or 0.8, give NIL to USE-DARK(, though it is maybe only for development).

Package

dufy/munsell.

Source

fundamental.lisp.

Function: mb-line-distance-from-origin (line)

Return the distance from the line to the origin.

Package

dufy/internal.

Source

mb-line.lisp.

Function: mb-line-ray-intersect-distance (theta line)

Return the (signed) distance at which a ray, starting at the origin and travelling at angle THETA, intersects LINE.

Package

dufy/internal.

Source

mb-line.lisp.

Function: mhvc-out-of-mrd-p (hue40 value chroma)

Checks if Munsell HVC is out of the Munsell Renotation data.

Package

dufy/munsell.

Source

fundamental.lisp.

Function: mhvc-to-lchab-illum-c (hue40 value chroma)

Illuminant C.

Package

dufy/munsell.

Source

convert.lisp.

Function: mhvc-to-munsell (hue40 value chroma &key digits)
Package

dufy/munsell.

Source

fundamental.lisp.

Function: mhvc-to-xyz (hue40 value chroma)

Illuminant D65.
This converter involves the Bradford transformation from illuminant C to illuminant D65.

Package

dufy/munsell.

Source

convert.lisp.

Function: mhvc-to-xyz-illum-c (hue40 value chroma)

Illuminant C.

Package

dufy/munsell.

Source

convert.lisp.

Function: multiply-mat-mat (mat1 mat2)
Package

dufy/internal.

Source

matrix.lisp.

Function: multiply-mat-vec (matrix x y z)
Package

dufy/internal.

Source

matrix.lisp.

Function: multiply-matrices (mat1 &rest mats)
Package

dufy/internal.

Source

matrix.lisp.

Function: munsell-out-of-mrd-p (munsellspec)
Package

dufy/munsell.

Source

fundamental.lisp.

Function: munsell-to-lchab-illum-c (munsellspec)

Illuminant C.

Package

dufy/munsell.

Source

convert.lisp.

Function: munsell-to-mhvc (munsellspec)

Usage Example:
(dufy:munsell-to-mhvc "0.02RP 0.9/3.5")
;; => 36.008d0
;; 0.9d0
;; 3.5d0

Many other notations of numbers are acceptable; an ugly specification as follows are also available:

(dufy:munsell-to-mhvc "2d-2RP .9/ #x0ffffff")
;; => 36.008d0
;; 0.9d0
;; 1.6777215d7

However, the capital letters and ’/’ are reserved:

(dufy:munsell-to-mhvc "2D-2RP 9/10 / #X0FFFFFF")
;; => ERROR,

Package

dufy/munsell.

Source

fundamental.lisp.

Function: munsell-to-xyz (munsellspec)

Illuminant D65.

Package

dufy/munsell.

Source

convert.lisp.

Function: munsell-to-xyz-illum-c (munsellspec)

Illuminant C.

Package

dufy/munsell.

Source

convert.lisp.

Function: munsell-value-to-lstar (v)

Converts Munsell value to L*, whose nominal range is [0, 100].

Package

dufy/munsell.

Source

fundamental.lisp.

Function: munsell-value-to-y (v)

Converts Munsell value to Y, whose nominal range is [0, 1]. The formula is based on ASTM D1535-08e1. Note that this function does no clamping even if V is outside the interval [0, 10].

Package

dufy/munsell.

Source

fundamental.lisp.

Function: nearly-equal (threshold lst1 &rest lsts)

THRESHOLD is acceptable absolute error.

Package

dufy/internal.

Source

arithmetic.lisp.

Function: nearly<= (threshold number &rest more-numbers)
Package

dufy/internal.

Source

arithmetic.lisp.

Function: nearly= (threshold number &rest more-numbers)

THRESHOLD is acceptable absolute error.

Package

dufy/internal.

Source

arithmetic.lisp.

Reader: observer-begin-wl (instance)
Writer: (setf observer-begin-wl) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

begin-wl.

Reader: observer-cmf (instance)
Writer: (setf observer-cmf) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

cmf.

Reader: observer-cmf-x (instance)
Writer: (setf observer-cmf-x) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

cmf-x.

Reader: observer-cmf-y (instance)
Writer: (setf observer-cmf-y) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

cmf-y.

Reader: observer-cmf-z (instance)
Writer: (setf observer-cmf-z) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

cmf-z.

Reader: observer-end-wl (instance)
Writer: (setf observer-end-wl) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

end-wl.

Function: optimal-spectrum-peak (wavelength-nm &optional wl1 wl2)

Spectrum function of optimal colors: f(x) = 1d0 if wl1 <= x <= wl2, f(x) = 0d0 otherwise.

Package

dufy/core.

Source

spectrum.lisp.

Function: optimal-spectrum-trough (wavelength-nm &optional wl1 wl2)

Spectrum function of optimal colors: f(x) = 1d0 if x <= wl2 or wl1 <= x, f(x) = 0d0 otherwise.

Package

dufy/core.

Source

spectrum.lisp.

Function: print-make-array (var-name array &optional stream declaration load-time-value)

Prints a form like (defparameter VAR-NAME (make-array ...)).

Package

dufy/internal.

Source

utilities.lisp.

Function: qrgb-deltae00 (qr1 qg1 qb1 qr2 qg2 qb2 &key rgbspace)
Package

dufy/core.

Source

deltae.lisp.

Function: qrgb-deltae94 (qr1 qg1 qb1 qr2 qg2 qb2 &key rgbspace application)
Package

dufy/core.

Source

deltae.lisp.

Function: qrgb-deltaeab (qr1 qg1 qb1 qr2 qg2 qb2 &key rgbspace)
Package

dufy/core.

Source

deltae.lisp.

Function: qrgb-deltaecmc (qr1 qg1 qb1 qr2 qg2 qb2 &key rgbspace l-factor c-factor)
Package

dufy/core.

Source

deltae.lisp.

Function: qrgb-out-of-gamut-p (qr qg qb &key rgbspace threshold)
Package

dufy/core.

Source

rgb.lisp.

Function: qrgb-to-hpluv (qr qg qb &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: qrgb-to-hsl (qr qg qb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: qrgb-to-hsluv (qr qg qb &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: qrgb-to-hsv (qr qg qb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: qrgb-to-lrgb (qr qg qb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: qrgb-to-rgb (qr qg qb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: qrgb-to-rgbpack (qr qg qb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: qrgb-to-xyz (qr qg qb &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: quantize (x &key rgbspace clamp)

Quantizes an RGB value to a QRGB value

Package

dufy/core.

Source

rgb.lisp.

Function: radian-to-degree (radian)
Package

dufy/internal.

Source

arithmetic.lisp.

Function: rgb-out-of-gamut-p (r g b &key rgbspace threshold)

Returns true if at least one of R, G, and B is outside the interval [RGBSPACE-MIN - THRESHOLD, RGBSPACE-MAX + THRESHOLD].

Package

dufy/core.

Source

rgb.lisp.

Function: rgb-to-hpluv (r g b &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: rgb-to-hsl (r g b)

Non-normal RGB space is also accepted, though it depends on the situation whether the returned values are meaningful.

Package

dufy/core.

Source

rgb.lisp.

Function: rgb-to-hsluv (r g b &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: rgb-to-hsv (r g b)

Non-normal RGB space is also accepted, though it depends on the situation whether the returned values are meaningful.

Package

dufy/core.

Source

rgb.lisp.

Function: rgb-to-lrgb (r g b &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: rgb-to-qrgb (r g b &key rgbspace clamp)

Quantizes RGB values from [RGBSPACE-MIN, RGBSPACE-MAX] ([0, 1] typically) to 0, 1, ..., RGBSPACE-QMAX (255 typically), though it accepts all the real values and properly processes them as out-of-gamut color.

Package

dufy/core.

Source

rgb.lisp.

Function: rgb-to-rgbpack (r g b &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: rgb-to-xyz (r g b &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: rgbpack-to-hpluv (int &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: rgbpack-to-hsl (int &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: rgbpack-to-hsluv (int &key rgbspace)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: rgbpack-to-hsv (int &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: rgbpack-to-lrgb (int &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: rgbpack-to-qrgb (int &key rgbspace)

Decodes a packed RGB value, whose type depends on RGBSPACE but is typically unsigned 24-bit integer.

It is guaranteed that this converter can correctly process a packed RGBA value if its order is ARGB.

Package

dufy/core.

Source

rgb.lisp.

Function: rgbpack-to-rgb (int &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: rgbpack-to-xyz (int &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Reader: rgbspace-bit-per-channel (instance)
Writer: (setf rgbspace-bit-per-channel) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

bit-per-channel.

Reader: rgbspace-delinearizer (instance)
Writer: (setf rgbspace-delinearizer) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

delinearizer.

Reader: rgbspace-from-xyz-matrix (instance)
Writer: (setf rgbspace-from-xyz-matrix) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

from-xyz-matrix.

Reader: rgbspace-illuminant (instance)
Writer: (setf rgbspace-illuminant) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

illuminant.

Reader: rgbspace-linearizer (instance)
Writer: (setf rgbspace-linearizer) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

linearizer.

Reader: rgbspace-lmax (instance)
Writer: (setf rgbspace-lmax) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

lmax.

Reader: rgbspace-lmin (instance)
Writer: (setf rgbspace-lmin) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

lmin.

Reader: rgbspace-max (instance)
Writer: (setf rgbspace-max) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

max.

Reader: rgbspace-min (instance)
Writer: (setf rgbspace-min) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

min.

Reader: rgbspace-normal (instance)
Writer: (setf rgbspace-normal) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

normal.

Reader: rgbspace-qmax (instance)
Writer: (setf rgbspace-qmax) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

qmax.

Reader: rgbspace-to-xyz-matrix (instance)
Writer: (setf rgbspace-to-xyz-matrix) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

to-xyz-matrix.

Reader: rgbspace-xb (instance)
Writer: (setf rgbspace-xb) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

xb.

Reader: rgbspace-xg (instance)
Writer: (setf rgbspace-xg) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

xg.

Reader: rgbspace-xr (instance)
Writer: (setf rgbspace-xr) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

xr.

Reader: rgbspace-yb (instance)
Writer: (setf rgbspace-yb) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

yb.

Reader: rgbspace-yg (instance)
Writer: (setf rgbspace-yg) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

yg.

Reader: rgbspace-yr (instance)
Writer: (setf rgbspace-yr) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

yr.

Function: spectrum-to-xyz (spectrum &key illuminant begin-wl end-wl band)

Computes the XYZ values of SPECTRUM in reflective or transmissive case. The function SPECTRUM, a spectral reflectance, must be defined at least in [BEGIN-WL, END-WL]; the SPECTRUM is called for BEGIN-WL, BEGIN-WL + BAND, BEGIN-WL + 2*BAND, ..., BEGIN-WL + n*BAND (<= END-WL).

Package

dufy/core.

Source

xyz.lisp.

Function: square (x)
Package

dufy/internal.

Source

arithmetic.lisp.

Function: xyy-to-xyz (small-x small-y y)

Converts xyY to XYZ. The nominal range of Y is [0, 1], though all real values are accepted.

Package

dufy/core.

Source

xyz.lisp.

Function: xyz-deltae00 (x1 y1 z1 x2 y2 z2 &key illuminant)
Package

dufy/core.

Source

deltae.lisp.

Function: xyz-deltae94 (x1 y1 z1 x2 y2 z2 &key illuminant application)
Package

dufy/core.

Source

deltae.lisp.

Function: xyz-deltaeab (x1 y1 z1 x2 y2 z2 &key illuminant)
Package

dufy/core.

Source

deltae.lisp.

Function: xyz-deltaecmc (x1 y1 z1 x2 y2 z2 &key illuminant l-factor c-factor)
Package

dufy/core.

Source

deltae.lisp.

Function: xyz-to-hpluv (x y z &key illuminant)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: xyz-to-hsl (x y z &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: xyz-to-hsluv (x y z &key illuminant)
Package

dufy/hsluv.

Source

hsluv.lisp.

Function: xyz-to-hsv (x y z &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: xyz-to-lab (x y z &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: xyz-to-lchab (x y z &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: xyz-to-lchuv (x y z &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: xyz-to-lms (x y z &key illuminant cat)

ILLUMINANT can be NIL and in that case the transform is virtually equivalent to that of illuminant E.

Package

dufy/core.

Source

cat.lisp.

Function: xyz-to-lrgb (x y z &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: xyz-to-luv (x y z &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: xyz-to-mhvc (x y z &key max-iteration if-reach-max factor threshold)

Illuminant D65.
This converter involves the Bradford transformation from illuminant D65 to illuminant C.

Package

dufy/munsell.

Source

invert.lisp.

Function: xyz-to-mhvc-illum-c (x y z &key max-iteration if-reach-max factor threshold)

Illuminant C.

Package

dufy/munsell.

Source

invert.lisp.

Function: xyz-to-munsell (x y z &key max-iteration if-reach-max factor threshold digits)

Illuminant D65.
This converter involves the Bradford transformation from illuminant D65 to illuminant C.

Package

dufy/munsell.

Source

invert.lisp.

Function: xyz-to-munsell-illum-c (x y z &key max-iteration if-reach-max factor threshold digits)

Illuminant C.

Package

dufy/munsell.

Source

invert.lisp.

Function: xyz-to-qrgb (x y z &key rgbspace clamp)
Package

dufy/core.

Source

rgb.lisp.

Function: xyz-to-rgb (x y z &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: xyz-to-rgbpack (x y z &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: xyz-to-spectrum (x y z &key illuminant)

Converts XYZ to spectrum, which is, of course, a spectrum among many and may contain a negative spectral density.

Package

dufy/core.

Source

xyz.lisp.

Function: xyz-to-xyy (x y z)

Converts XYZ to xyY. The nominal range of Y is [0, 1], though all real values are accepted.

Package

dufy/core.

Source

xyz.lisp.

Function: y-to-munsell-value (y)

Interpolates the inversion table of MUNSELL-VALUE-TO-Y linearly, whose band width is 1e-3. It is guaranteed that the round-trip error, (abs (- (y (munsell-value-to-y (y-to-munsell-value y))))), is smaller than 1e-5.

Package

dufy/munsell.

Source

fundamental.lisp.


6.1.6 Standalone methods

Method: (setf documentation) ((x colorspace) (doc-type (eql dufy/internal:colorspace)))
Source

colorspace.lisp.

Method: documentation ((x colorspace) (doc-type (eql dufy/internal:colorspace)))
Source

colorspace.lisp.

Method: print-object ((obs observer) stream)
Source

spectrum.lisp.


6.1.7 Conditions

Condition: invalid-mhvc-error
Package

dufy/munsell.

Source

fundamental.lisp.

Direct superclasses

simple-error.

Direct methods
Direct slots
Slot: value
Initform

(quote 0.0d0)

Initargs

:value

Readers

cond-value.

Writers

(setf cond-value).

Slot: chroma
Initform

(quote 0.0d0)

Initargs

:chroma

Readers

cond-chroma.

Writers

(setf cond-chroma).

Condition: large-approximation-error
Package

dufy/munsell.

Source

invert.lisp.

Direct superclasses

arithmetic-error.

Direct methods
Direct slots
Slot: message
Initform

(quote "couldn't achieve the required accuracy.")

Initargs

:message

Readers

cond-message.

Writers

(setf cond-message).

Condition: munsellspec-parse-error
Package

dufy/munsell.

Source

fundamental.lisp.

Direct superclasses

parse-error.

Direct methods
Direct slots
Slot: spec
Initform

(quote nil)

Initargs

:spec

Readers

cond-spec.

Writers

(setf cond-spec).

Condition: no-spd-error
Package

dufy/core.

Source

spectrum.lisp.

Direct superclasses

simple-error.

Direct methods
Direct slots
Slot: illuminant
Initform

(quote nil)

Initargs

:illuminant

Readers

cond-illuminant.

Writers

(setf cond-illuminant).


6.1.8 Structures

Structure: cat

Expresses a model of chromatic adaptation transformation. Currently only linear models are available.

Package

dufy/core.

Source

cat.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: matrix
Type

dufy/internal:matrix33

Initform

dufy/internal:+empty-matrix+

Readers

cat-matrix.

Writers

(setf cat-matrix).

Slot: inv-matrix
Type

dufy/internal:matrix33

Initform

dufy/internal:+empty-matrix+

Readers

cat-inv-matrix.

Writers

(setf cat-inv-matrix).

Structure: colorspace
Package

dufy/internal.

Source

colorspace.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

symbol

Readers

colorspace-name.

Writers

(setf colorspace-name).

Slot: args
Type

list

Readers

colorspace-args.

Writers

(setf colorspace-args).

Slot: arg-types
Type

list

Readers

colorspace-arg-types.

Writers

(setf colorspace-arg-types).

Slot: return-types
Type

list

Readers

colorspace-return-types.

Writers

(setf colorspace-return-types).

Slot: documentation
Package

common-lisp.

Type

(or null string)

Readers

colorspace-documentation.

Writers

(setf colorspace-documentation).

Slot: neighbors
Type

list

Readers

colorspace-neighbors.

Writers

(setf colorspace-neighbors).

Structure: functional

The functional here is e.g. color difference, luminance, or color temperature. If you define a functional for a color space with DEFINE-FUNCTIONAL, you can extend it to other color spaces with EXTEND-FUNCTIONAL.

Package

dufy/internal.

Source

colorspace.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: fname
Type

symbol

Readers

functional-fname.

Writers

(setf functional-fname).

Slot: term
Type

symbol

Readers

functional-term.

Writers

(setf functional-term).

Slot: colorspace
Type

symbol

Readers

functional-colorspace.

Writers

(setf functional-colorspace).

Slot: dimension
Type

(integer 1)

Initform

1

Readers

functional-dimension.

Writers

(setf functional-dimension).

Slot: key-args
Type

list

Readers

functional-key-args.

Writers

(setf functional-key-args).

Slot: allow-other-keys
Type

boolean

Readers

functional-allow-other-keys.

Writers

(setf functional-allow-other-keys).

Slot: aux-args
Type

list

Readers

functional-aux-args.

Writers

(setf functional-aux-args).

Structure: illuminant
Package

dufy/core.

Source

spectrum.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: x
Type

double-float

Initform

1.0d0

Readers

illuminant-x.

Writers

(setf illuminant-x).

Slot: z
Type

double-float

Initform

1.0d0

Readers

illuminant-z.

Writers

(setf illuminant-z).

Slot: spectrum
Type

dufy/core::spectrum-function

Initform

(function dufy/core::empty-spectrum)

Readers

illuminant-spectrum.

Writers

(setf illuminant-spectrum).

Slot: observer
Type

dufy/core:observer

Initform

dufy/core:+obs-cie1931+

Readers

illuminant-observer.

Writers

(setf illuminant-observer).

Slot: to-spectrum-matrix
Type

(simple-array double-float (3 3))

Initform

dufy/internal:+empty-matrix+

Readers

illuminant-to-spectrum-matrix.

Writers

(setf illuminant-to-spectrum-matrix).

Structure: observer

OBSERVER is a structure of color matching functions.

Package

dufy/core.

Source

spectrum.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: begin-wl
Type

(integer 0)

Initform

360

Readers

observer-begin-wl.

Writers

(setf observer-begin-wl).

Slot: end-wl
Type

(integer 0)

Initform

830

Readers

observer-end-wl.

Writers

(setf observer-end-wl).

Slot: cmf-table
Type

(simple-array double-float (* 3))

Readers

observer-cmf-table.

Writers

(setf observer-cmf-table).

Slot: cmf-x
Type

dufy/core::spectrum-function

Readers

observer-cmf-x.

Writers

(setf observer-cmf-x).

Slot: cmf-y
Type

dufy/core::spectrum-function

Readers

observer-cmf-y.

Writers

(setf observer-cmf-y).

Slot: cmf-z
Type

dufy/core::spectrum-function

Readers

observer-cmf-z.

Writers

(setf observer-cmf-z).

Slot: cmf
Type

(function * (values double-float double-float double-float &optional))

Readers

observer-cmf.

Writers

(setf observer-cmf).

Structure: primary-converter

In the beginning is the primary converter, which is conceptually a directed edge that connects two color spaces. All other converters are generated by linking them. Currently primary converter can take only &key and &aux parameters other than required parameters.

Package

dufy/internal.

Source

colorspace.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: from-colorspace
Type

symbol

Readers

primary-converter-from-colorspace.

Writers

(setf primary-converter-from-colorspace).

Slot: to-colorspace
Type

symbol

Readers

primary-converter-to-colorspace.

Writers

(setf primary-converter-to-colorspace).

Slot: name
Type

symbol

Readers

primary-converter-name.

Writers

(setf primary-converter-name).

Slot: key-args
Type

list

Readers

primary-converter-key-args.

Writers

(setf primary-converter-key-args).

Slot: allow-other-keys
Type

boolean

Readers

primary-converter-allow-other-keys.

Writers

(setf primary-converter-allow-other-keys).

Slot: aux-args
Type

list

Readers

primary-converter-aux-args.

Writers

(setf primary-converter-aux-args).

Structure: rgbspace

Is structure of RGB space including encoding characteristics. You shouldn’t write to any slots directly; instead MAKE-RGBSPACE and COPY-RGBSPACE are available.

Package

dufy/core.

Source

rgb.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: xr
Type

double-float

Initform

0.0d0

Readers

rgbspace-xr.

Writers

(setf rgbspace-xr).

Slot: yr
Type

double-float

Initform

0.0d0

Readers

rgbspace-yr.

Writers

(setf rgbspace-yr).

Slot: xg
Type

double-float

Initform

0.0d0

Readers

rgbspace-xg.

Writers

(setf rgbspace-xg).

Slot: yg
Type

double-float

Initform

0.0d0

Readers

rgbspace-yg.

Writers

(setf rgbspace-yg).

Slot: xb
Type

double-float

Initform

0.0d0

Readers

rgbspace-xb.

Writers

(setf rgbspace-xb).

Slot: yb
Type

double-float

Initform

0.0d0

Readers

rgbspace-yb.

Writers

(setf rgbspace-yb).

Slot: illuminant
Type

dufy/core:illuminant

Initform

dufy/core:+illum-d65+

Readers

rgbspace-illuminant.

Writers

(setf rgbspace-illuminant).

Slot: to-xyz-matrix
Type

dufy/internal:matrix33

Initform

dufy/internal:+identity-matrix+

Readers

rgbspace-to-xyz-matrix.

Writers

(setf rgbspace-to-xyz-matrix).

Slot: from-xyz-matrix
Type

dufy/internal:matrix33

Initform

dufy/internal:+identity-matrix+

Readers

rgbspace-from-xyz-matrix.

Writers

(setf rgbspace-from-xyz-matrix).

Slot: lmin
Type

double-float

Initform

0.0d0

Readers

rgbspace-lmin.

Writers

(setf rgbspace-lmin).

Slot: lmax
Type

double-float

Initform

1.0d0

Readers

rgbspace-lmax.

Writers

(setf rgbspace-lmax).

Slot: linearizer
Type

(function * (values double-float &optional))

Initform

(alexandria:rcurry (function float) 1.0d0)

Readers

rgbspace-linearizer.

Writers

(setf rgbspace-linearizer).

Slot: delinearizer
Type

(function * (values double-float &optional))

Initform

(alexandria:rcurry (function float) 1.0d0)

Readers

rgbspace-delinearizer.

Writers

(setf rgbspace-delinearizer).

Slot: min
Package

common-lisp.

Type

double-float

Initform

0.0d0

Readers

rgbspace-min.

Writers

(setf rgbspace-min).

Slot: max
Package

common-lisp.

Type

double-float

Initform

1.0d0

Readers

rgbspace-max.

Writers

(setf rgbspace-max).

Slot: length
Package

common-lisp.

Type

double-float

Initform

1.0d0

Readers

rgbspace-length.

Writers

(setf rgbspace-length).

Slot: /length
Type

double-float

Initform

1.0d0

Readers

rgbspace-/length.

Writers

(setf rgbspace-/length).

Slot: normal
Type

boolean

Initform

t

Readers

rgbspace-normal.

Writers

(setf rgbspace-normal).

Slot: bit-per-channel
Type

(integer 1 62)

Initform

8

Readers

rgbspace-bit-per-channel.

Writers

(setf rgbspace-bit-per-channel).

Slot: qmax
Type

(integer 1 4611686018427387903)

Initform

255

Readers

rgbspace-qmax.

Writers

(setf rgbspace-qmax).

Slot: qmax-float
Type

double-float

Initform

255.0d0

Readers

rgbspace-qmax-float.

Writers

(setf rgbspace-qmax-float).

Slot: length/qmax-float
Type

double-float

Initform

(float 1/255 1.0d0)

Readers

rgbspace-length/qmax-float.

Writers

(setf rgbspace-length/qmax-float).

Slot: qmax-float/length
Type

double-float

Initform

255.0d0

Readers

rgbspace-qmax-float/length.

Writers

(setf rgbspace-qmax-float/length).


6.1.9 Types

Type: matrix33 ()
Package

dufy/internal.

Source

matrix.lisp.

Type: non-negative-non-large-double-float ()

The double-float that the Munsell converters accepts. It is in some cases less than MOST-POSITIVE-DOUBLE-FLOAT because of efficiency: e.g. on SBCL (64-bit) it is desirable that a float F
fulfills (TYPEP (ROUND F) ’(SIGNED-BYTE 64))

Package

dufy/munsell.

Source

fundamental.lisp.

Type: tuple (&rest rest)

Analogy of the type specifier ‘cons’ and the function ‘list’: type (TUPLE A B C) is equivalent to the type (CONS A (CONS B (CONS C NULL))); the type TUPLE (or (TUPLE)) is equivalent to the type NULL.

Package

dufy/internal.

Source

utilities.lisp.


6.2 Internals


6.2.1 Constants

Constant: +cieluv-epsilon+
Package

dufy/hsluv.

Source

hsluv.lisp.

Constant: +cieluv-kappa+
Package

dufy/hsluv.

Source

hsluv.lisp.

Constant: +m-bounds+
Package

dufy/hsluv.

Source

hsluv.lisp.


6.2.2 Special variables

Special Variable: *bit-length-of-most-positive-fixnum*
Package

dufy/munsell.

Source

fundamental.lisp.

Special Variable: *colorspace-table*
Package

dufy/internal.

Source

colorspace.lisp.

Special Variable: *functional-table*
Package

dufy/internal.

Source

colorspace.lisp.

Special Variable: *primary-converter-table*
Package

dufy/internal.

Source

colorspace.lisp.

Special Variable: +cmf-table-cie1931+
Package

dufy/core.

Source

cmf-data.lisp.

Special Variable: +cmf-table-cie1964+
Package

dufy/core.

Source

cmf-data.lisp.

Special Variable: +illum-c-table+
Package

dufy/core.

Source

illuminants-data.lisp.

Special Variable: +inversed-mrd-table-hc+
Package

dufy/munsell.

Source

inversed-renotation-data.lisp.

Special Variable: +inversed-mrd-table-v+
Package

dufy/munsell.

Source

inversed-renotation-data.lisp.

Special Variable: +max-chroma-table+
Package

dufy/munsell.

Source

renotation-data.lisp.

Special Variable: +max-chroma-table-dark+
Package

dufy/munsell.

Source

renotation-data.lisp.

Special Variable: +mrd-table-ch+
Package

dufy/munsell.

Source

renotation-data.lisp.

Special Variable: +mrd-table-ch-dark+
Package

dufy/munsell.

Source

renotation-data.lisp.

Special Variable: +mrd-table-l+
Package

dufy/munsell.

Source

renotation-data.lisp.

Special Variable: +mrd-table-l-dark+
Package

dufy/munsell.

Source

renotation-data.lisp.

Special Variable: +s0-table+
Package

dufy/core.

Source

spectrum.lisp.

Special Variable: +s1-table+
Package

dufy/core.

Source

spectrum.lisp.

Special Variable: +s2-table+
Package

dufy/core.

Source

spectrum.lisp.

Special Variable: +y-to-munsell-value-table+
Package

dufy/munsell.

Source

y-to-value-data.lisp.


6.2.3 Macros

Macro: internal-real-time (&body body)

For development. Returns elapsed (internal real) time.

Package

dufy/internal.

Source

utilities.lisp.

Macro: let-converter (definitions &body body)

Is a local version of defconverter.

definitions ::= (definition*)
definition ::= (name from-colorspace to-colorspace &key exclude-args)

Example:
(let-converter ((rgbpack-to-lchab rgbpack lchab)
(lchab-to-rgbpack lchab rgbpack :exclude-args (clamp))) (format t "~X~%" (multiple-value-call #’lchab-to-rgbpack (rgbpack-to-lchab #xAABBCC))))
;; AABBCC
;; => NIL

Package

dufy/internal.

Source

colorspace.lisp.


6.2.4 Ordinary functions

Function: %make-cat (matrix)
Package

dufy/core.

Source

cat.lisp.

Function: %make-functional (&key fname term colorspace dimension key-args allow-other-keys aux-args)
Package

dufy/internal.

Source

colorspace.lisp.

Function: %make-illuminant (&key x z spectrum observer to-spectrum-matrix)
Package

dufy/core.

Source

spectrum.lisp.

Function: %make-observer (&key begin-wl end-wl cmf-table cmf-x cmf-y cmf-z cmf)
Package

dufy/core.

Source

spectrum.lisp.

Function: %make-primary-converter (&key from-colorspace to-colorspace name key-args allow-other-keys aux-args)
Package

dufy/internal.

Source

colorspace.lisp.

Function: %make-rgbspace (&key xr yr xg yg xb yb illuminant to-xyz-matrix from-xyz-matrix lmin lmax linearizer delinearizer min max length /length normal bit-per-channel qmax qmax-float length/qmax-float qmax-float/length)
Package

dufy/core.

Source

rgb.lisp.

Function: %spectrum-to-xyz (spectrum illuminant-spd observer &optional begin-wl end-wl band)

Is an internal function and will be called in SPECTRUM-TO-XYZ in another module.

SPECTRUM := spectral reflectance (or transmittance) ILLUMINANT-SPD :=
SPD of illuminant

Package

dufy/core.

Source

spectrum.lisp.

Function: add-functional (fname colorspace lambda-list &key term)

Registers a functional to *functional-table*

Package

dufy/internal.

Source

colorspace.lisp.

Function: add-primary-converter (from-colorspace to-colorspace lambda-list &key name)

Registers a primary converter to *PRIMARY-CONVERTER-TABLE*

Package

dufy/internal.

Source

colorspace.lisp.

Function: array-to-list (array)

array -> list coercion

Package

dufy/internal.

Source

utilities.lisp.

Function: c-to-d65 (x y z)
Package

dufy/munsell.

Source

convert.lisp.

Function: calc-cat-matrix (from-illuminant to-illuminant &optional cat)

Returns a 3*3 chromatic adaptation matrix between FROM-ILLUMINANT and TO-ILLUMINANT in XYZ space.

Package

dufy/core.

Source

cat.lisp.

Function: calc-cat-matrix-for-lrgb (from-rgbspace to-rgbspace &optional cat)

Linear transformation: LRGB -> XYZ -> XYZ -> LRGB

Package

dufy/core.

Source

cat.lisp.

Function: calc-isochroma-ovoid (value chroma/2)
Package

dufy/munsell.

Source

convert.lisp.

Function: calc-isochroma-ovoid-integer-case (value chroma/2)

Value is integer.

Package

dufy/munsell.

Source

convert.lisp.

Function: calc-to-spectrum-matrix (illuminant-spd observer &optional begin-wl end-wl band)

The returned matrix will be used in XYZ-to-spectrum conversion.

Package

dufy/core.

Source

spectrum.lisp.

Function: calc-uvprime (x y)

Calculates u’ and v’ from xy.

Package

dufy/core.

Source

lab-and-luv.lisp.

Function: calc-uvprime-from-xyz (x y z)

Calculates u’ and v’ from XYZ.

Package

dufy/core.

Source

lab-and-luv.lisp.

Function: cartesian-to-mhvc (x y value)
Package

dufy/munsell.

Source

invert.lisp.

Function: cat-p (object)
Package

dufy/core.

Source

cat.lisp.

Function: circular-delta (theta1 theta2)

Is called in INVERT-LCHAB-TO-MHVC.

Package

dufy/munsell.

Source

invert.lisp.

Function: circularize (lst)

Destructively makes a circular list.

Package

dufy/internal.

Source

colorspace.lisp.

Function: collect-aux-arg-names (chain)
Package

dufy/internal.

Source

colorspace.lisp.

Function: collect-aux-args (chain)
Package

dufy/internal.

Source

colorspace.lisp.

Function: collect-key-arg-key-names (chain)
Package

dufy/internal.

Source

colorspace.lisp.

Function: collect-key-arg-names (chain)
Package

dufy/internal.

Source

colorspace.lisp.

Function: collect-key-args (chain &key exclude-list)
Package

dufy/internal.

Source

colorspace.lisp.

Reader: colorspace-arg-types (instance)
Writer: (setf colorspace-arg-types) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

arg-types.

Reader: colorspace-args (instance)
Writer: (setf colorspace-args) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

args.

Reader: colorspace-documentation (instance)
Writer: (setf colorspace-documentation) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

documentation.

Reader: colorspace-name (instance)
Writer: (setf colorspace-name) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

name.

Reader: colorspace-neighbors (instance)
Writer: (setf colorspace-neighbors) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

neighbors.

Function: colorspace-p (object)
Package

dufy/internal.

Source

colorspace.lisp.

Reader: colorspace-return-types (instance)
Writer: (setf colorspace-return-types) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

return-types.

Function: colorspace= (space1 space2)
Package

dufy/internal.

Source

colorspace.lisp.

Function: contains-allow-other-keys-p (chain)
Package

dufy/internal.

Source

colorspace.lisp.

Function: copy-cat (instance)
Package

dufy/core.

Source

cat.lisp.

Function: copy-colorspace (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Function: copy-functional (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Function: copy-mb-line (instance)
Package

dufy/internal.

Source

mb-line.lisp.

Function: copy-observer (instance)
Package

dufy/core.

Source

spectrum.lisp.

Function: copy-primary-converter (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Function: copy-queue (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Function: d65-to-c (x y z)
Package

dufy/munsell.

Source

invert.lisp.

Function: delinearize-prophoto (x)
Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Function: delinearize-scrgb-nl (x)
Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Function: delinearize-srgb (x)

delinealizer of sRGB (actually the same as bg-sRGB)

Package

dufy/core.

Source

rgb.lisp.

Function: dequeue (queue)
Package

dufy/internal.

Source

colorspace.lisp.

Function: determinant (mat)
Package

dufy/internal.

Source

matrix.lisp.

Function: duplicate-aux-and-key-p (key-args aux-args)
Package

dufy/internal.

Source

colorspace.lisp.

Function: empty-spectrum ()

Used internally instead of NIL.

Package

dufy/core.

Source

spectrum.lisp.

Function: enqueue (obj queue)
Package

dufy/internal.

Source

colorspace.lisp.

Function: ensure-colorspace-name (thing)
Package

dufy/internal.

Source

colorspace.lisp.

Function: evaluate-error-of-y-to-munsell-value (&optional num)

For devel. Returns the maximal error and the corresponding Y.

Package

dufy/munsell.

Source

fundamental.lisp.

Function: expand-conversion-form (cs-chain &key exclude-args)
Package

dufy/internal.

Source

colorspace.lisp.

Function: find-colorspace (colorspace-designator &optional error)

colorspace-designator ::= symbol | colorspace

Package

dufy/internal.

Source

colorspace.lisp.

Function: find-converter-path (from-colorspace to-colorspace &key if-does-not-exist)

Finds the shortest path in the graph of color spaces by BFS.

Package

dufy/internal.

Source

colorspace.lisp.

Function: find-duplicates (lst &key key test)
Package

dufy/internal.

Source

colorspace.lisp.

Function: function-f (x)
Package

dufy/core.

Source

lab-and-luv.lisp.

Reader: functional-allow-other-keys (instance)
Writer: (setf functional-allow-other-keys) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

allow-other-keys.

Reader: functional-aux-args (instance)
Writer: (setf functional-aux-args) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

aux-args.

Reader: functional-colorspace (instance)
Writer: (setf functional-colorspace) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

colorspace.

Reader: functional-dimension (instance)
Writer: (setf functional-dimension) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

dimension.

Reader: functional-fname (instance)
Writer: (setf functional-fname) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

fname.

Reader: functional-key-args (instance)
Writer: (setf functional-key-args) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

key-args.

Function: functional-p (object)
Package

dufy/internal.

Source

colorspace.lisp.

Reader: functional-term (instance)
Writer: (setf functional-term) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

term.

Function: gen-args (chain &key exclude-args extra-key-args with-aux dimension extra-suffix)
Package

dufy/internal.

Source

colorspace.lisp.

Function: gen-aux-args (chain)
Package

dufy/internal.

Source

colorspace.lisp.

Function: gen-converter-name (from-colorspace to-colorspace)
Package

dufy/internal.

Source

colorspace.lisp.

Function: gen-key-args (chain &optional exclude-args)
Package

dufy/internal.

Source

colorspace.lisp.

Function: gen-local-key-args (term1 term2 &optional exclude-args)
Package

dufy/internal.

Source

colorspace.lisp.

Function: gen-passed-args (chain &key exclude-args suffix)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-allow-other-keys (from-colorspace to-colorspace)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-arg-types (name)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-args (name &key package suffix)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-aux-args (from-colorspace to-colorspace)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-aux-names (from-colorspace to-colorspace)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-cieluv-bounds (l)

Return a list of lines representing the boundaries of the polygon defining the in-gamut colors in CIELUV for a fixed L.

Package

dufy/hsluv.

Source

hsluv.lisp.

Function: get-functional (term)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-key-arg-key-names (from-colorspace to-colorspace)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-key-arg-names (from-colorspace to-colorspace)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-key-args (from-colorspace to-colorspace)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-neighbors (name)
Package

dufy/internal.

Source

colorspace.lisp.

Function: (setf get-neighbors) (name)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-primary-converter (from-colorspace to-colorspace)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-primary-converter-name (from-colorspace to-colorspace)
Package

dufy/internal.

Source

colorspace.lisp.

Function: get-return-types (name)
Package

dufy/internal.

Source

colorspace.lisp.

Function: illuminant-p (object)
Package

dufy/core.

Source

spectrum.lisp.

Reader: illuminant-to-spectrum-matrix (instance)
Writer: (setf illuminant-to-spectrum-matrix) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

to-spectrum-matrix.

Function: invert-mhvc-to-lchab (lstar cstarab hab init-hue40 init-chroma &key max-iteration if-reach-max factor threshold)

Illuminant C.

Package

dufy/munsell.

Source

invert.lisp.

Function: key-arg= (key1 key2)
Package

dufy/internal.

Source

colorspace.lisp.

Function: lab-to-xyy (lstar astar bstar &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: lambda-list= (lambda-list1 lambda-list2)
Package

dufy/internal.

Source

colorspace.lisp.

Function: lchab-to-mhvc-all-integer-case (lstar/10 cstarab/20 hab/9)

All integer case. Does no type checks: e.g. HAB/9 must be in {0, 1, ...., 39}.

Package

dufy/munsell.

Source

invert.lisp.

Function: lchab-to-mhvc-general-case (lstar/10 cstarab/20 hab/9)
Package

dufy/munsell.

Source

invert.lisp.

Function: lchab-to-mhvc-l-c-integer-case (lstar/10 cstarab/20 hab/9)
Package

dufy/munsell.

Source

invert.lisp.

Function: lchab-to-mhvc-l-integer-case (lstar/10 cstarab/20 hab/9)
Package

dufy/munsell.

Source

invert.lisp.

Function: lchab-to-xyy (lstar cstarab hab &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: linearize-prophoto (x)
Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Function: linearize-scrgb-nl (x)
Package

dufy/core.

Source

builtin-rgbspaces.lisp.

Function: linearize-srgb (x)

linearizer of sRGB (actually the same as bg-sRGB)

Package

dufy/core.

Source

rgb.lisp.

Function: make-colorspace (&key name args arg-types return-types documentation neighbors)
Package

dufy/internal.

Source

colorspace.lisp.

Function: make-functional (fname colorspace lambda-list &key term)

Constructor

Package

dufy/internal.

Source

colorspace.lisp.

Function: make-illum-d-spectrum-array (temperature &optional begin-wl end-wl)
Package

dufy/core.

Source

spectrum.lisp.

Function: make-primary-converter (from-colorspace to-colorspace lambda-list &key name)
Package

dufy/internal.

Source

colorspace.lisp.

Function: make-queue (&key list tail)
Package

dufy/internal.

Source

colorspace.lisp.

Function: max-chroma-for-lh (l h)

Given L and H values, return the maximum chroma, constrained to those values.

Package

dufy/hsluv.

Source

hsluv.lisp.

Function: max-chroma-lchab (hue40 value &key use-dark)

For devel. Returns the LCh(ab) value of the color on the max-chroma boundary in the MRD.

Package

dufy/munsell.

Source

convert.lisp.

Function: max-safe-chroma-for-l (l)

Given L, return the maximum chroma available over the full range of hues.

For a fixed L, the in-gamut colors are bounded by a convex polygon, whose boundary lines are given by GET-CIELUV-BOUNDS. The maximum safe chroma is the maximum chroma that would be valid for any hue.

Package

dufy/hsluv.

Source

hsluv.lisp.

Reader: mb-line-intercept (instance)
Writer: (setf mb-line-intercept) (instance)
Package

dufy/internal.

Source

mb-line.lisp.

Target Slot

intercept.

Function: mb-line-p (object)
Package

dufy/internal.

Source

mb-line.lisp.

Reader: mb-line-slope (instance)
Writer: (setf mb-line-slope) (instance)
Package

dufy/internal.

Source

mb-line.lisp.

Target Slot

slope.

Function: mhvc-invalid-p (hue40 value chroma)

Checks if Munsell HVC values are out of the valid range.

Package

dufy/munsell.

Source

fundamental.lisp.

Function: mhvc-to-cartesian (hue40 value chroma)
Package

dufy/munsell.

Source

invert.lisp.

Function: mhvc-to-lchab-all-integer-case (hue40 scaled-value half-chroma &optional dark)

All integer case. There are no type checks: e.g. HUE40 must be in {0, 1, ...., 39}.

Package

dufy/munsell.

Source

convert.lisp.

Function: mhvc-to-lchab-general-case (hue40 scaled-value half-chroma &optional dark)
Package

dufy/munsell.

Source

convert.lisp.

Function: mhvc-to-lchab-value-chroma-integer-case (hue40 scaled-value half-chroma &optional dark)
Package

dufy/munsell.

Source

convert.lisp.

Function: mhvc-to-lchab-value-integer-case (hue40 scaled-value half-chroma &optional dark)
Package

dufy/munsell.

Source

convert.lisp.

Function: mhvc-to-xyy (hue40 value chroma)

Illuminant D65.

Package

dufy/munsell.

Source

convert.lisp.

Function: munsell-to-xyy (munsellspec)

Illuminant D65.

Package

dufy/munsell.

Source

convert.lisp.

Reader: observer-cmf-table (instance)
Writer: (setf observer-cmf-table) (instance)
Package

dufy/core.

Source

spectrum.lisp.

Target Slot

cmf-table.

Function: observer-p (object)
Package

dufy/core.

Source

spectrum.lisp.

Function: predict-lchab-to-mhvc (lstar cstarab hab)

Illuminant C.

Package

dufy/munsell.

Source

invert.lisp.

Reader: primary-converter-allow-other-keys (instance)
Writer: (setf primary-converter-allow-other-keys) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

allow-other-keys.

Reader: primary-converter-aux-args (instance)
Writer: (setf primary-converter-aux-args) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

aux-args.

Reader: primary-converter-from-colorspace (instance)
Writer: (setf primary-converter-from-colorspace) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

from-colorspace.

Reader: primary-converter-key-args (instance)
Writer: (setf primary-converter-key-args) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

key-args.

Reader: primary-converter-name (instance)
Writer: (setf primary-converter-name) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

name.

Function: primary-converter-p (object)
Package

dufy/internal.

Source

colorspace.lisp.

Reader: primary-converter-to-colorspace (instance)
Writer: (setf primary-converter-to-colorspace) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

to-colorspace.

Function: print-hash-table (hash)
Package

dufy/internal.

Source

colorspace.lisp.

Function: qrgb-to-munsell-value (r g b &optional rgbspace)

For devel.

Package

dufy/munsell.

Source

fundamental.lisp.

Function: qrgba-to-rgba (qr qg qb qalpha &key rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Function: qrgba-to-rgbapack (qr qg qb qalpha &key rgbspace order)

Decodes a packed RGBA value, whose type depends on RGBSPACE but is typically unsigned 32-bit integer.

The order can be :ARGB or :RGBA. Note that it is different from the ’physical’ byte order in your machine, which depends on the endianess.

Package

dufy/core.

Source

rgb.lisp.

Reader: queue-list (instance)
Writer: (setf queue-list) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

list.

Function: queue-p (object)
Package

dufy/internal.

Source

colorspace.lisp.

Reader: queue-tail (instance)
Writer: (setf queue-tail) (instance)
Package

dufy/internal.

Source

colorspace.lisp.

Target Slot

tail.

Function: rgba-to-qrgba (r g b alpha &key rgbspace clamp)

Quantizes RGBA values from [RGBSPACE-MIN, RGBSPACE-MAX] ([0, 1], typically) to {0, 1, ..., RGBSPACE-QMAX} ({0, 1, ..., 255}, typically), though it accepts all the real values.

Package

dufy/core.

Source

rgb.lisp.

Function: rgba-to-rgbapack (r g b alpha &key rgbspace order)
Package

dufy/core.

Source

rgb.lisp.

Function: rgbapack-to-qrgba (int &key rgbspace order)

The order can be :ARGB or :RGBA. Note that it is different from the ’physical’ byte order in your machine, which depends on the endianess.

Package

dufy/core.

Source

rgb.lisp.

Function: rgbapack-to-rgba (int &key order rgbspace)
Package

dufy/core.

Source

rgb.lisp.

Reader: rgbspace-/length (instance)
Writer: (setf rgbspace-/length) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

/length.

Reader: rgbspace-length (instance)
Writer: (setf rgbspace-length) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

length.

Reader: rgbspace-length/qmax-float (instance)
Writer: (setf rgbspace-length/qmax-float) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

length/qmax-float.

Function: rgbspace-p (object)
Package

dufy/core.

Source

rgb.lisp.

Reader: rgbspace-qmax-float (instance)
Writer: (setf rgbspace-qmax-float) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

qmax-float.

Reader: rgbspace-qmax-float/length (instance)
Writer: (setf rgbspace-qmax-float/length) (instance)
Package

dufy/core.

Source

rgb.lisp.

Target Slot

qmax-float/length.

Function: xyy-to-lab (small-x small-y y &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: xyy-to-lchab (small-x small-y y &key illuminant)
Package

dufy/core.

Source

lab-and-luv.lisp.

Function: y-to-lstar (y)

Y (of XYZ) to L* (of L*a*b*)

Package

dufy/core.

Source

lab-and-luv.lisp.


6.2.5 Generic functions

Generic Reader: cond-chroma (condition)
Generic Writer: (setf cond-chroma) (condition)
Package

dufy/munsell.

Methods
Reader Method: cond-chroma ((condition invalid-mhvc-error))
Writer Method: (setf cond-chroma) ((condition invalid-mhvc-error))
Source

fundamental.lisp.

Target Slot

chroma.

Generic Reader: cond-illuminant (condition)
Generic Writer: (setf cond-illuminant) (condition)
Package

dufy/core.

Methods
Reader Method: cond-illuminant ((condition no-spd-error))
Writer Method: (setf cond-illuminant) ((condition no-spd-error))
Source

spectrum.lisp.

Target Slot

illuminant.

Generic Reader: cond-message (condition)
Generic Writer: (setf cond-message) (condition)
Package

dufy/munsell.

Methods
Reader Method: cond-message ((condition large-approximation-error))
Writer Method: (setf cond-message) ((condition large-approximation-error))
Source

invert.lisp.

Target Slot

message.

Generic Reader: cond-spec (condition)
Generic Writer: (setf cond-spec) (condition)
Package

dufy/munsell.

Methods
Reader Method: cond-spec ((condition munsellspec-parse-error))
Writer Method: (setf cond-spec) ((condition munsellspec-parse-error))
Source

fundamental.lisp.

Target Slot

spec.

Generic Reader: cond-value (condition)
Generic Writer: (setf cond-value) (condition)
Package

dufy/munsell.

Methods
Reader Method: cond-value ((condition invalid-mhvc-error))
Writer Method: (setf cond-value) ((condition invalid-mhvc-error))
Source

fundamental.lisp.

Target Slot

value.


6.2.6 Structures

Structure: mb-line

Slope-intercept representation of a line

Package

dufy/internal.

Source

mb-line.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: slope
Type

double-float

Initform

0.0d0

Readers

mb-line-slope.

Writers

(setf mb-line-slope).

Slot: intercept
Type

double-float

Initform

1.0d0

Readers

mb-line-intercept.

Writers

(setf mb-line-intercept).

Structure: queue
Package

dufy/internal.

Source

colorspace.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: list
Package

common-lisp.

Readers

queue-list.

Writers

(setf queue-list).

Slot: tail
Readers

queue-tail.

Writers

(setf queue-tail).


6.2.7 Types

Type: spectrum-function ()
Package

dufy/core.

Source

spectrum.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
A   B   C   D   E   F   G   H   I   K   L   M   N   O   P   Q   R   S   T   W   X   Y  
Index Entry  Section

%
%make-cat: Private ordinary functions
%make-functional: Private ordinary functions
%make-illuminant: Private ordinary functions
%make-observer: Private ordinary functions
%make-primary-converter: Private ordinary functions
%make-rgbspace: Private ordinary functions
%spectrum-to-xyz: Private ordinary functions

(
(setf cat-inv-matrix): Public ordinary functions
(setf cat-matrix): Public ordinary functions
(setf colorspace-arg-types): Private ordinary functions
(setf colorspace-args): Private ordinary functions
(setf colorspace-documentation): Private ordinary functions
(setf colorspace-name): Private ordinary functions
(setf colorspace-neighbors): Private ordinary functions
(setf colorspace-return-types): Private ordinary functions
(setf cond-chroma): Private generic functions
(setf cond-chroma): Private generic functions
(setf cond-illuminant): Private generic functions
(setf cond-illuminant): Private generic functions
(setf cond-message): Private generic functions
(setf cond-message): Private generic functions
(setf cond-spec): Private generic functions
(setf cond-spec): Private generic functions
(setf cond-value): Private generic functions
(setf cond-value): Private generic functions
(setf documentation): Public standalone methods
(setf functional-allow-other-keys): Private ordinary functions
(setf functional-aux-args): Private ordinary functions
(setf functional-colorspace): Private ordinary functions
(setf functional-dimension): Private ordinary functions
(setf functional-fname): Private ordinary functions
(setf functional-key-args): Private ordinary functions
(setf functional-term): Private ordinary functions
(setf get-neighbors): Private ordinary functions
(setf illuminant-observer): Public ordinary functions
(setf illuminant-spectrum): Public ordinary functions
(setf illuminant-to-spectrum-matrix): Private ordinary functions
(setf illuminant-x): Public ordinary functions
(setf illuminant-z): Public ordinary functions
(setf mb-line-intercept): Private ordinary functions
(setf mb-line-slope): Private ordinary functions
(setf observer-begin-wl): Public ordinary functions
(setf observer-cmf): Public ordinary functions
(setf observer-cmf-table): Private ordinary functions
(setf observer-cmf-x): Public ordinary functions
(setf observer-cmf-y): Public ordinary functions
(setf observer-cmf-z): Public ordinary functions
(setf observer-end-wl): Public ordinary functions
(setf primary-converter-allow-other-keys): Private ordinary functions
(setf primary-converter-aux-args): Private ordinary functions
(setf primary-converter-from-colorspace): Private ordinary functions
(setf primary-converter-key-args): Private ordinary functions
(setf primary-converter-name): Private ordinary functions
(setf primary-converter-to-colorspace): Private ordinary functions
(setf queue-list): Private ordinary functions
(setf queue-tail): Private ordinary functions
(setf rgbspace-/length): Private ordinary functions
(setf rgbspace-bit-per-channel): Public ordinary functions
(setf rgbspace-delinearizer): Public ordinary functions
(setf rgbspace-from-xyz-matrix): Public ordinary functions
(setf rgbspace-illuminant): Public ordinary functions
(setf rgbspace-length): Private ordinary functions
(setf rgbspace-length/qmax-float): Private ordinary functions
(setf rgbspace-linearizer): Public ordinary functions
(setf rgbspace-lmax): Public ordinary functions
(setf rgbspace-lmin): Public ordinary functions
(setf rgbspace-max): Public ordinary functions
(setf rgbspace-min): Public ordinary functions
(setf rgbspace-normal): Public ordinary functions
(setf rgbspace-qmax): Public ordinary functions
(setf rgbspace-qmax-float): Private ordinary functions
(setf rgbspace-qmax-float/length): Private ordinary functions
(setf rgbspace-to-xyz-matrix): Public ordinary functions
(setf rgbspace-xb): Public ordinary functions
(setf rgbspace-xg): Public ordinary functions
(setf rgbspace-xr): Public ordinary functions
(setf rgbspace-yb): Public ordinary functions
(setf rgbspace-yg): Public ordinary functions
(setf rgbspace-yr): Public ordinary functions

A
add-functional: Private ordinary functions
add-primary-converter: Private ordinary functions
approximate-spectrum: Public ordinary functions
array-to-list: Private ordinary functions

B
bb-spectrum: Public ordinary functions

C
c-to-d65: Private ordinary functions
calc-cat-matrix: Private ordinary functions
calc-cat-matrix-for-lrgb: Private ordinary functions
calc-isochroma-ovoid: Private ordinary functions
calc-isochroma-ovoid-integer-case: Private ordinary functions
calc-to-spectrum-matrix: Private ordinary functions
calc-uvprime: Private ordinary functions
calc-uvprime-from-xyz: Private ordinary functions
call-with-profiling: Public ordinary functions
cartesian-to-mhvc: Private ordinary functions
cat-inv-matrix: Public ordinary functions
cat-matrix: Public ordinary functions
cat-p: Private ordinary functions
circular-clamp: Public ordinary functions
circular-delta: Private ordinary functions
circular-lerp: Public ordinary functions
circular-lerp-loose: Public ordinary functions
circular-member: Public ordinary functions
circular-nearer: Public ordinary functions
circularize: Private ordinary functions
collect-aux-arg-names: Private ordinary functions
collect-aux-args: Private ordinary functions
collect-key-arg-key-names: Private ordinary functions
collect-key-arg-names: Private ordinary functions
collect-key-args: Private ordinary functions
colorspace-arg-types: Private ordinary functions
colorspace-args: Private ordinary functions
colorspace-documentation: Private ordinary functions
colorspace-name: Private ordinary functions
colorspace-neighbors: Private ordinary functions
colorspace-p: Private ordinary functions
colorspace-return-types: Private ordinary functions
colorspace=: Private ordinary functions
Compiler Macro, make-illuminant: Public compiler macros
cond-chroma: Private generic functions
cond-chroma: Private generic functions
cond-illuminant: Private generic functions
cond-illuminant: Private generic functions
cond-message: Private generic functions
cond-message: Private generic functions
cond-spec: Private generic functions
cond-spec: Private generic functions
cond-value: Private generic functions
cond-value: Private generic functions
contains-allow-other-keys-p: Private ordinary functions
copy-cat: Private ordinary functions
copy-colorspace: Private ordinary functions
copy-functional: Private ordinary functions
copy-mb-line: Private ordinary functions
copy-observer: Private ordinary functions
copy-primary-converter: Private ordinary functions
copy-queue: Private ordinary functions
copy-rgbspace: Public ordinary functions

D
d65-to-c: Private ordinary functions
defconverter: Public macros
defconverters: Public macros
define-cat-function: Public macros
define-colorspace: Public macros
define-functional: Public macros
define-primary-converter: Public macros
degree-to-radian: Public ordinary functions
delinearize: Public ordinary functions
delinearize-prophoto: Private ordinary functions
delinearize-scrgb-nl: Private ordinary functions
delinearize-srgb: Private ordinary functions
dequantize: Public ordinary functions
dequeue: Private ordinary functions
determinant: Private ordinary functions
documentation: Public standalone methods
dotimes-unroll: Public macros
duplicate-aux-and-key-p: Private ordinary functions

E
empty-spectrum: Private ordinary functions
enqueue: Private ordinary functions
ensure-colorspace-name: Private ordinary functions
evaluate-error-of-y-to-munsell-value: Private ordinary functions
expand-conversion-form: Private ordinary functions
extend-functional: Public macros

F
find-colorspace: Private ordinary functions
find-converter-path: Private ordinary functions
find-duplicates: Private ordinary functions
flat-spectrum: Public ordinary functions
Function, %make-cat: Private ordinary functions
Function, %make-functional: Private ordinary functions
Function, %make-illuminant: Private ordinary functions
Function, %make-observer: Private ordinary functions
Function, %make-primary-converter: Private ordinary functions
Function, %make-rgbspace: Private ordinary functions
Function, %spectrum-to-xyz: Private ordinary functions
Function, (setf cat-inv-matrix): Public ordinary functions
Function, (setf cat-matrix): Public ordinary functions
Function, (setf colorspace-arg-types): Private ordinary functions
Function, (setf colorspace-args): Private ordinary functions
Function, (setf colorspace-documentation): Private ordinary functions
Function, (setf colorspace-name): Private ordinary functions
Function, (setf colorspace-neighbors): Private ordinary functions
Function, (setf colorspace-return-types): Private ordinary functions
Function, (setf functional-allow-other-keys): Private ordinary functions
Function, (setf functional-aux-args): Private ordinary functions
Function, (setf functional-colorspace): Private ordinary functions
Function, (setf functional-dimension): Private ordinary functions
Function, (setf functional-fname): Private ordinary functions
Function, (setf functional-key-args): Private ordinary functions
Function, (setf functional-term): Private ordinary functions
Function, (setf get-neighbors): Private ordinary functions
Function, (setf illuminant-observer): Public ordinary functions
Function, (setf illuminant-spectrum): Public ordinary functions
Function, (setf illuminant-to-spectrum-matrix): Private ordinary functions
Function, (setf illuminant-x): Public ordinary functions
Function, (setf illuminant-z): Public ordinary functions
Function, (setf mb-line-intercept): Private ordinary functions
Function, (setf mb-line-slope): Private ordinary functions
Function, (setf observer-begin-wl): Public ordinary functions
Function, (setf observer-cmf): Public ordinary functions
Function, (setf observer-cmf-table): Private ordinary functions
Function, (setf observer-cmf-x): Public ordinary functions
Function, (setf observer-cmf-y): Public ordinary functions
Function, (setf observer-cmf-z): Public ordinary functions
Function, (setf observer-end-wl): Public ordinary functions
Function, (setf primary-converter-allow-other-keys): Private ordinary functions
Function, (setf primary-converter-aux-args): Private ordinary functions
Function, (setf primary-converter-from-colorspace): Private ordinary functions
Function, (setf primary-converter-key-args): Private ordinary functions
Function, (setf primary-converter-name): Private ordinary functions
Function, (setf primary-converter-to-colorspace): Private ordinary functions
Function, (setf queue-list): Private ordinary functions
Function, (setf queue-tail): Private ordinary functions
Function, (setf rgbspace-/length): Private ordinary functions
Function, (setf rgbspace-bit-per-channel): Public ordinary functions
Function, (setf rgbspace-delinearizer): Public ordinary functions
Function, (setf rgbspace-from-xyz-matrix): Public ordinary functions
Function, (setf rgbspace-illuminant): Public ordinary functions
Function, (setf rgbspace-length): Private ordinary functions
Function, (setf rgbspace-length/qmax-float): Private ordinary functions
Function, (setf rgbspace-linearizer): Public ordinary functions
Function, (setf rgbspace-lmax): Public ordinary functions
Function, (setf rgbspace-lmin): Public ordinary functions
Function, (setf rgbspace-max): Public ordinary functions
Function, (setf rgbspace-min): Public ordinary functions
Function, (setf rgbspace-normal): Public ordinary functions
Function, (setf rgbspace-qmax): Public ordinary functions
Function, (setf rgbspace-qmax-float): Private ordinary functions
Function, (setf rgbspace-qmax-float/length): Private ordinary functions
Function, (setf rgbspace-to-xyz-matrix): Public ordinary functions
Function, (setf rgbspace-xb): Public ordinary functions
Function, (setf rgbspace-xg): Public ordinary functions
Function, (setf rgbspace-xr): Public ordinary functions
Function, (setf rgbspace-yb): Public ordinary functions
Function, (setf rgbspace-yg): Public ordinary functions
Function, (setf rgbspace-yr): Public ordinary functions
Function, add-functional: Private ordinary functions
Function, add-primary-converter: Private ordinary functions
Function, approximate-spectrum: Public ordinary functions
Function, array-to-list: Private ordinary functions
Function, bb-spectrum: Public ordinary functions
Function, c-to-d65: Private ordinary functions
Function, calc-cat-matrix: Private ordinary functions
Function, calc-cat-matrix-for-lrgb: Private ordinary functions
Function, calc-isochroma-ovoid: Private ordinary functions
Function, calc-isochroma-ovoid-integer-case: Private ordinary functions
Function, calc-to-spectrum-matrix: Private ordinary functions
Function, calc-uvprime: Private ordinary functions
Function, calc-uvprime-from-xyz: Private ordinary functions
Function, call-with-profiling: Public ordinary functions
Function, cartesian-to-mhvc: Private ordinary functions
Function, cat-inv-matrix: Public ordinary functions
Function, cat-matrix: Public ordinary functions
Function, cat-p: Private ordinary functions
Function, circular-clamp: Public ordinary functions
Function, circular-delta: Private ordinary functions
Function, circular-lerp: Public ordinary functions
Function, circular-lerp-loose: Public ordinary functions
Function, circular-member: Public ordinary functions
Function, circular-nearer: Public ordinary functions
Function, circularize: Private ordinary functions
Function, collect-aux-arg-names: Private ordinary functions
Function, collect-aux-args: Private ordinary functions
Function, collect-key-arg-key-names: Private ordinary functions
Function, collect-key-arg-names: Private ordinary functions
Function, collect-key-args: Private ordinary functions
Function, colorspace-arg-types: Private ordinary functions
Function, colorspace-args: Private ordinary functions
Function, colorspace-documentation: Private ordinary functions
Function, colorspace-name: Private ordinary functions
Function, colorspace-neighbors: Private ordinary functions
Function, colorspace-p: Private ordinary functions
Function, colorspace-return-types: Private ordinary functions
Function, colorspace=: Private ordinary functions
Function, contains-allow-other-keys-p: Private ordinary functions
Function, copy-cat: Private ordinary functions
Function, copy-colorspace: Private ordinary functions
Function, copy-functional: Private ordinary functions
Function, copy-mb-line: Private ordinary functions
Function, copy-observer: Private ordinary functions
Function, copy-primary-converter: Private ordinary functions
Function, copy-queue: Private ordinary functions
Function, copy-rgbspace: Public ordinary functions
Function, d65-to-c: Private ordinary functions
Function, degree-to-radian: Public ordinary functions
Function, delinearize: Public ordinary functions
Function, delinearize-prophoto: Private ordinary functions
Function, delinearize-scrgb-nl: Private ordinary functions
Function, delinearize-srgb: Private ordinary functions
Function, dequantize: Public ordinary functions
Function, dequeue: Private ordinary functions
Function, determinant: Private ordinary functions
Function, duplicate-aux-and-key-p: Private ordinary functions
Function, empty-spectrum: Private ordinary functions
Function, enqueue: Private ordinary functions
Function, ensure-colorspace-name: Private ordinary functions
Function, evaluate-error-of-y-to-munsell-value: Private ordinary functions
Function, expand-conversion-form: Private ordinary functions
Function, find-colorspace: Private ordinary functions
Function, find-converter-path: Private ordinary functions
Function, find-duplicates: Private ordinary functions
Function, flat-spectrum: Public ordinary functions
Function, function-f: Private ordinary functions
Function, functional-allow-other-keys: Private ordinary functions
Function, functional-aux-args: Private ordinary functions
Function, functional-colorspace: Private ordinary functions
Function, functional-dimension: Private ordinary functions
Function, functional-fname: Private ordinary functions
Function, functional-key-args: Private ordinary functions
Function, functional-p: Private ordinary functions
Function, functional-term: Private ordinary functions
Function, gen-args: Private ordinary functions
Function, gen-aux-args: Private ordinary functions
Function, gen-cat-function: Public ordinary functions
Function, gen-converter-name: Private ordinary functions
Function, gen-delinearizer: Public ordinary functions
Function, gen-illum-d-spectrum: Public ordinary functions
Function, gen-key-args: Private ordinary functions
Function, gen-linearizer: Public ordinary functions
Function, gen-local-key-args: Private ordinary functions
Function, gen-passed-args: Private ordinary functions
Function, gen-rgbspace-changer: Public ordinary functions
Function, gen-spectrum: Public ordinary functions
Function, get-allow-other-keys: Private ordinary functions
Function, get-arg-types: Private ordinary functions
Function, get-args: Private ordinary functions
Function, get-aux-args: Private ordinary functions
Function, get-aux-names: Private ordinary functions
Function, get-cieluv-bounds: Private ordinary functions
Function, get-functional: Private ordinary functions
Function, get-key-arg-key-names: Private ordinary functions
Function, get-key-arg-names: Private ordinary functions
Function, get-key-args: Private ordinary functions
Function, get-neighbors: Private ordinary functions
Function, get-primary-converter: Private ordinary functions
Function, get-primary-converter-name: Private ordinary functions
Function, get-return-types: Private ordinary functions
Function, hpluv-to-lchuv: Public ordinary functions
Function, hpluv-to-lrgb: Public ordinary functions
Function, hpluv-to-qrgb: Public ordinary functions
Function, hpluv-to-rgb: Public ordinary functions
Function, hpluv-to-rgbpack: Public ordinary functions
Function, hpluv-to-xyz: Public ordinary functions
Function, hsl-to-lrgb: Public ordinary functions
Function, hsl-to-qrgb: Public ordinary functions
Function, hsl-to-rgb: Public ordinary functions
Function, hsl-to-rgbpack: Public ordinary functions
Function, hsl-to-xyz: Public ordinary functions
Function, hsluv-to-lchuv: Public ordinary functions
Function, hsluv-to-lrgb: Public ordinary functions
Function, hsluv-to-qrgb: Public ordinary functions
Function, hsluv-to-rgb: Public ordinary functions
Function, hsluv-to-rgbpack: Public ordinary functions
Function, hsluv-to-xyz: Public ordinary functions
Function, hsv-to-lrgb: Public ordinary functions
Function, hsv-to-qrgb: Public ordinary functions
Function, hsv-to-rgb: Public ordinary functions
Function, hsv-to-rgbpack: Public ordinary functions
Function, hsv-to-xyz: Public ordinary functions
Function, illuminant-no-spd-p: Public ordinary functions
Function, illuminant-observer: Public ordinary functions
Function, illuminant-p: Private ordinary functions
Function, illuminant-spectrum: Public ordinary functions
Function, illuminant-to-spectrum-matrix: Private ordinary functions
Function, illuminant-x: Public ordinary functions
Function, illuminant-xy: Public ordinary functions
Function, illuminant-z: Public ordinary functions
Function, invert-matrix: Public ordinary functions
Function, invert-mhvc-to-lchab: Private ordinary functions
Function, key-arg=: Private ordinary functions
Function, lab-deltae00: Public ordinary functions
Function, lab-deltae94: Public ordinary functions
Function, lab-deltaeab: Public ordinary functions
Function, lab-deltaecmc: Public ordinary functions
Function, lab-to-lchab: Public ordinary functions
Function, lab-to-xyy: Private ordinary functions
Function, lab-to-xyz: Public ordinary functions
Function, lambda-list=: Private ordinary functions
Function, lchab-to-lab: Public ordinary functions
Function, lchab-to-mhvc-all-integer-case: Private ordinary functions
Function, lchab-to-mhvc-general-case: Private ordinary functions
Function, lchab-to-mhvc-illum-c: Public ordinary functions
Function, lchab-to-mhvc-l-c-integer-case: Private ordinary functions
Function, lchab-to-mhvc-l-integer-case: Private ordinary functions
Function, lchab-to-munsell-illum-c: Public ordinary functions
Function, lchab-to-xyy: Private ordinary functions
Function, lchab-to-xyz: Public ordinary functions
Function, lchuv-to-hpluv: Public ordinary functions
Function, lchuv-to-hsluv: Public ordinary functions
Function, lchuv-to-luv: Public ordinary functions
Function, lchuv-to-xyz: Public ordinary functions
Function, linearize: Public ordinary functions
Function, linearize-prophoto: Private ordinary functions
Function, linearize-scrgb-nl: Private ordinary functions
Function, linearize-srgb: Private ordinary functions
Function, lms-to-xyz: Public ordinary functions
Function, lrgb-out-of-gamut-p: Public ordinary functions
Function, lrgb-to-hpluv: Public ordinary functions
Function, lrgb-to-hsl: Public ordinary functions
Function, lrgb-to-hsluv: Public ordinary functions
Function, lrgb-to-hsv: Public ordinary functions
Function, lrgb-to-qrgb: Public ordinary functions
Function, lrgb-to-rgb: Public ordinary functions
Function, lrgb-to-rgbpack: Public ordinary functions
Function, lrgb-to-xyz: Public ordinary functions
Function, lstar-to-munsell-value: Public ordinary functions
Function, lstar-to-y: Public ordinary functions
Function, luv-to-lchuv: Public ordinary functions
Function, luv-to-xyz: Public ordinary functions
Function, make-cat: Public ordinary functions
Function, make-colorspace: Private ordinary functions
Function, make-functional: Private ordinary functions
Function, make-illum-d-spectrum-array: Private ordinary functions
Function, make-illuminant: Public ordinary functions
Function, make-mb-line: Public ordinary functions
Function, make-observer: Public ordinary functions
Function, make-primary-converter: Private ordinary functions
Function, make-queue: Private ordinary functions
Function, make-rgbspace: Public ordinary functions
Function, max-chroma-for-lh: Private ordinary functions
Function, max-chroma-in-mrd: Public ordinary functions
Function, max-chroma-lchab: Private ordinary functions
Function, max-safe-chroma-for-l: Private ordinary functions
Function, mb-line-distance-from-origin: Public ordinary functions
Function, mb-line-intercept: Private ordinary functions
Function, mb-line-p: Private ordinary functions
Function, mb-line-ray-intersect-distance: Public ordinary functions
Function, mb-line-slope: Private ordinary functions
Function, mhvc-invalid-p: Private ordinary functions
Function, mhvc-out-of-mrd-p: Public ordinary functions
Function, mhvc-to-cartesian: Private ordinary functions
Function, mhvc-to-lchab-all-integer-case: Private ordinary functions
Function, mhvc-to-lchab-general-case: Private ordinary functions
Function, mhvc-to-lchab-illum-c: Public ordinary functions
Function, mhvc-to-lchab-value-chroma-integer-case: Private ordinary functions
Function, mhvc-to-lchab-value-integer-case: Private ordinary functions
Function, mhvc-to-munsell: Public ordinary functions
Function, mhvc-to-xyy: Private ordinary functions
Function, mhvc-to-xyz: Public ordinary functions
Function, mhvc-to-xyz-illum-c: Public ordinary functions
Function, multiply-mat-mat: Public ordinary functions
Function, multiply-mat-vec: Public ordinary functions
Function, multiply-matrices: Public ordinary functions
Function, munsell-out-of-mrd-p: Public ordinary functions
Function, munsell-to-lchab-illum-c: Public ordinary functions
Function, munsell-to-mhvc: Public ordinary functions
Function, munsell-to-xyy: Private ordinary functions
Function, munsell-to-xyz: Public ordinary functions
Function, munsell-to-xyz-illum-c: Public ordinary functions
Function, munsell-value-to-lstar: Public ordinary functions
Function, munsell-value-to-y: Public ordinary functions
Function, nearly-equal: Public ordinary functions
Function, nearly<=: Public ordinary functions
Function, nearly=: Public ordinary functions
Function, observer-begin-wl: Public ordinary functions
Function, observer-cmf: Public ordinary functions
Function, observer-cmf-table: Private ordinary functions
Function, observer-cmf-x: Public ordinary functions
Function, observer-cmf-y: Public ordinary functions
Function, observer-cmf-z: Public ordinary functions
Function, observer-end-wl: Public ordinary functions
Function, observer-p: Private ordinary functions
Function, optimal-spectrum-peak: Public ordinary functions
Function, optimal-spectrum-trough: Public ordinary functions
Function, predict-lchab-to-mhvc: Private ordinary functions
Function, primary-converter-allow-other-keys: Private ordinary functions
Function, primary-converter-aux-args: Private ordinary functions
Function, primary-converter-from-colorspace: Private ordinary functions
Function, primary-converter-key-args: Private ordinary functions
Function, primary-converter-name: Private ordinary functions
Function, primary-converter-p: Private ordinary functions
Function, primary-converter-to-colorspace: Private ordinary functions
Function, print-hash-table: Private ordinary functions
Function, print-make-array: Public ordinary functions
Function, qrgb-deltae00: Public ordinary functions
Function, qrgb-deltae94: Public ordinary functions
Function, qrgb-deltaeab: Public ordinary functions
Function, qrgb-deltaecmc: Public ordinary functions
Function, qrgb-out-of-gamut-p: Public ordinary functions
Function, qrgb-to-hpluv: Public ordinary functions
Function, qrgb-to-hsl: Public ordinary functions
Function, qrgb-to-hsluv: Public ordinary functions
Function, qrgb-to-hsv: Public ordinary functions
Function, qrgb-to-lrgb: Public ordinary functions
Function, qrgb-to-munsell-value: Private ordinary functions
Function, qrgb-to-rgb: Public ordinary functions
Function, qrgb-to-rgbpack: Public ordinary functions
Function, qrgb-to-xyz: Public ordinary functions
Function, qrgba-to-rgba: Private ordinary functions
Function, qrgba-to-rgbapack: Private ordinary functions
Function, quantize: Public ordinary functions
Function, queue-list: Private ordinary functions
Function, queue-p: Private ordinary functions
Function, queue-tail: Private ordinary functions
Function, radian-to-degree: Public ordinary functions
Function, rgb-out-of-gamut-p: Public ordinary functions
Function, rgb-to-hpluv: Public ordinary functions
Function, rgb-to-hsl: Public ordinary functions
Function, rgb-to-hsluv: Public ordinary functions
Function, rgb-to-hsv: Public ordinary functions
Function, rgb-to-lrgb: Public ordinary functions
Function, rgb-to-qrgb: Public ordinary functions
Function, rgb-to-rgbpack: Public ordinary functions
Function, rgb-to-xyz: Public ordinary functions
Function, rgba-to-qrgba: Private ordinary functions
Function, rgba-to-rgbapack: Private ordinary functions
Function, rgbapack-to-qrgba: Private ordinary functions
Function, rgbapack-to-rgba: Private ordinary functions
Function, rgbpack-to-hpluv: Public ordinary functions
Function, rgbpack-to-hsl: Public ordinary functions
Function, rgbpack-to-hsluv: Public ordinary functions
Function, rgbpack-to-hsv: Public ordinary functions
Function, rgbpack-to-lrgb: Public ordinary functions
Function, rgbpack-to-qrgb: Public ordinary functions
Function, rgbpack-to-rgb: Public ordinary functions
Function, rgbpack-to-xyz: Public ordinary functions
Function, rgbspace-/length: Private ordinary functions
Function, rgbspace-bit-per-channel: Public ordinary functions
Function, rgbspace-delinearizer: Public ordinary functions
Function, rgbspace-from-xyz-matrix: Public ordinary functions
Function, rgbspace-illuminant: Public ordinary functions
Function, rgbspace-length: Private ordinary functions
Function, rgbspace-length/qmax-float: Private ordinary functions
Function, rgbspace-linearizer: Public ordinary functions
Function, rgbspace-lmax: Public ordinary functions
Function, rgbspace-lmin: Public ordinary functions
Function, rgbspace-max: Public ordinary functions
Function, rgbspace-min: Public ordinary functions
Function, rgbspace-normal: Public ordinary functions
Function, rgbspace-p: Private ordinary functions
Function, rgbspace-qmax: Public ordinary functions
Function, rgbspace-qmax-float: Private ordinary functions
Function, rgbspace-qmax-float/length: Private ordinary functions
Function, rgbspace-to-xyz-matrix: Public ordinary functions
Function, rgbspace-xb: Public ordinary functions
Function, rgbspace-xg: Public ordinary functions
Function, rgbspace-xr: Public ordinary functions
Function, rgbspace-yb: Public ordinary functions
Function, rgbspace-yg: Public ordinary functions
Function, rgbspace-yr: Public ordinary functions
Function, spectrum-to-xyz: Public ordinary functions
Function, square: Public ordinary functions
Function, xyy-to-lab: Private ordinary functions
Function, xyy-to-lchab: Private ordinary functions
Function, xyy-to-xyz: Public ordinary functions
Function, xyz-deltae00: Public ordinary functions
Function, xyz-deltae94: Public ordinary functions
Function, xyz-deltaeab: Public ordinary functions
Function, xyz-deltaecmc: Public ordinary functions
Function, xyz-to-hpluv: Public ordinary functions
Function, xyz-to-hsl: Public ordinary functions
Function, xyz-to-hsluv: Public ordinary functions
Function, xyz-to-hsv: Public ordinary functions
Function, xyz-to-lab: Public ordinary functions
Function, xyz-to-lchab: Public ordinary functions
Function, xyz-to-lchuv: Public ordinary functions
Function, xyz-to-lms: Public ordinary functions
Function, xyz-to-lrgb: Public ordinary functions
Function, xyz-to-luv: Public ordinary functions
Function, xyz-to-mhvc: Public ordinary functions
Function, xyz-to-mhvc-illum-c: Public ordinary functions
Function, xyz-to-munsell: Public ordinary functions
Function, xyz-to-munsell-illum-c: Public ordinary functions
Function, xyz-to-qrgb: Public ordinary functions
Function, xyz-to-rgb: Public ordinary functions
Function, xyz-to-rgbpack: Public ordinary functions
Function, xyz-to-spectrum: Public ordinary functions
Function, xyz-to-xyy: Public ordinary functions
Function, y-to-lstar: Private ordinary functions
Function, y-to-munsell-value: Public ordinary functions
function-f: Private ordinary functions
functional-allow-other-keys: Private ordinary functions
functional-aux-args: Private ordinary functions
functional-colorspace: Private ordinary functions
functional-dimension: Private ordinary functions
functional-fname: Private ordinary functions
functional-key-args: Private ordinary functions
functional-p: Private ordinary functions
functional-term: Private ordinary functions

G
gen-args: Private ordinary functions
gen-aux-args: Private ordinary functions
gen-cat-function: Public ordinary functions
gen-converter-name: Private ordinary functions
gen-delinearizer: Public ordinary functions
gen-illum-d-spectrum: Public ordinary functions
gen-key-args: Private ordinary functions
gen-linearizer: Public ordinary functions
gen-local-key-args: Private ordinary functions
gen-passed-args: Private ordinary functions
gen-rgbspace-changer: Public ordinary functions
gen-spectrum: Public ordinary functions
Generic Function, (setf cond-chroma): Private generic functions
Generic Function, (setf cond-illuminant): Private generic functions
Generic Function, (setf cond-message): Private generic functions
Generic Function, (setf cond-spec): Private generic functions
Generic Function, (setf cond-value): Private generic functions
Generic Function, cond-chroma: Private generic functions
Generic Function, cond-illuminant: Private generic functions
Generic Function, cond-message: Private generic functions
Generic Function, cond-spec: Private generic functions
Generic Function, cond-value: Private generic functions
get-allow-other-keys: Private ordinary functions
get-arg-types: Private ordinary functions
get-args: Private ordinary functions
get-aux-args: Private ordinary functions
get-aux-names: Private ordinary functions
get-cieluv-bounds: Private ordinary functions
get-functional: Private ordinary functions
get-key-arg-key-names: Private ordinary functions
get-key-arg-names: Private ordinary functions
get-key-args: Private ordinary functions
get-neighbors: Private ordinary functions
get-primary-converter: Private ordinary functions
get-primary-converter-name: Private ordinary functions
get-return-types: Private ordinary functions

H
hpluv-to-lchuv: Public ordinary functions
hpluv-to-lrgb: Public ordinary functions
hpluv-to-qrgb: Public ordinary functions
hpluv-to-rgb: Public ordinary functions
hpluv-to-rgbpack: Public ordinary functions
hpluv-to-xyz: Public ordinary functions
hsl-to-lrgb: Public ordinary functions
hsl-to-qrgb: Public ordinary functions
hsl-to-rgb: Public ordinary functions
hsl-to-rgbpack: Public ordinary functions
hsl-to-xyz: Public ordinary functions
hsluv-to-lchuv: Public ordinary functions
hsluv-to-lrgb: Public ordinary functions
hsluv-to-qrgb: Public ordinary functions
hsluv-to-rgb: Public ordinary functions
hsluv-to-rgbpack: Public ordinary functions
hsluv-to-xyz: Public ordinary functions
hsv-to-lrgb: Public ordinary functions
hsv-to-qrgb: Public ordinary functions
hsv-to-rgb: Public ordinary functions
hsv-to-rgbpack: Public ordinary functions
hsv-to-xyz: Public ordinary functions

I
illuminant-no-spd-p: Public ordinary functions
illuminant-observer: Public ordinary functions
illuminant-p: Private ordinary functions
illuminant-spectrum: Public ordinary functions
illuminant-to-spectrum-matrix: Private ordinary functions
illuminant-x: Public ordinary functions
illuminant-xy: Public ordinary functions
illuminant-z: Public ordinary functions
internal-real-time: Private macros
internal-real-time-after-gc: Public macros
invert-matrix: Public ordinary functions
invert-mhvc-to-lchab: Private ordinary functions

K
key-arg=: Private ordinary functions

L
lab-deltae00: Public ordinary functions
lab-deltae94: Public ordinary functions
lab-deltaeab: Public ordinary functions
lab-deltaecmc: Public ordinary functions
lab-to-lchab: Public ordinary functions
lab-to-xyy: Private ordinary functions
lab-to-xyz: Public ordinary functions
lambda-list=: Private ordinary functions
lchab-to-lab: Public ordinary functions
lchab-to-mhvc-all-integer-case: Private ordinary functions
lchab-to-mhvc-general-case: Private ordinary functions
lchab-to-mhvc-illum-c: Public ordinary functions
lchab-to-mhvc-l-c-integer-case: Private ordinary functions
lchab-to-mhvc-l-integer-case: Private ordinary functions
lchab-to-munsell-illum-c: Public ordinary functions
lchab-to-xyy: Private ordinary functions
lchab-to-xyz: Public ordinary functions
lchuv-to-hpluv: Public ordinary functions
lchuv-to-hsluv: Public ordinary functions
lchuv-to-luv: Public ordinary functions
lchuv-to-xyz: Public ordinary functions
let-converter: Private macros
linearize: Public ordinary functions
linearize-prophoto: Private ordinary functions
linearize-scrgb-nl: Private ordinary functions
linearize-srgb: Private ordinary functions
lms-to-xyz: Public ordinary functions
lrgb-out-of-gamut-p: Public ordinary functions
lrgb-to-hpluv: Public ordinary functions
lrgb-to-hsl: Public ordinary functions
lrgb-to-hsluv: Public ordinary functions
lrgb-to-hsv: Public ordinary functions
lrgb-to-qrgb: Public ordinary functions
lrgb-to-rgb: Public ordinary functions
lrgb-to-rgbpack: Public ordinary functions
lrgb-to-xyz: Public ordinary functions
lstar-to-munsell-value: Public ordinary functions
lstar-to-y: Public ordinary functions
luv-to-lchuv: Public ordinary functions
luv-to-xyz: Public ordinary functions

M
Macro, defconverter: Public macros
Macro, defconverters: Public macros
Macro, define-cat-function: Public macros
Macro, define-colorspace: Public macros
Macro, define-functional: Public macros
Macro, define-primary-converter: Public macros
Macro, dotimes-unroll: Public macros
Macro, extend-functional: Public macros
Macro, internal-real-time: Private macros
Macro, internal-real-time-after-gc: Public macros
Macro, let-converter: Private macros
Macro, nearly-equal-values: Public macros
Macro, nlet: Public macros
Macro, pow: Public macros
Macro, time-after-gc: Public macros
Macro, time-median: Public macros
Macro, with-ensuring-type: Public macros
Macro, with-profiling: Public macros
make-cat: Public ordinary functions
make-colorspace: Private ordinary functions
make-functional: Private ordinary functions
make-illum-d-spectrum-array: Private ordinary functions
make-illuminant: Public compiler macros
make-illuminant: Public ordinary functions
make-mb-line: Public ordinary functions
make-observer: Public ordinary functions
make-primary-converter: Private ordinary functions
make-queue: Private ordinary functions
make-rgbspace: Public ordinary functions
max-chroma-for-lh: Private ordinary functions
max-chroma-in-mrd: Public ordinary functions
max-chroma-lchab: Private ordinary functions
max-safe-chroma-for-l: Private ordinary functions
mb-line-distance-from-origin: Public ordinary functions
mb-line-intercept: Private ordinary functions
mb-line-p: Private ordinary functions
mb-line-ray-intersect-distance: Public ordinary functions
mb-line-slope: Private ordinary functions
Method, (setf cond-chroma): Private generic functions
Method, (setf cond-illuminant): Private generic functions
Method, (setf cond-message): Private generic functions
Method, (setf cond-spec): Private generic functions
Method, (setf cond-value): Private generic functions
Method, (setf documentation): Public standalone methods
Method, cond-chroma: Private generic functions
Method, cond-illuminant: Private generic functions
Method, cond-message: Private generic functions
Method, cond-spec: Private generic functions
Method, cond-value: Private generic functions
Method, documentation: Public standalone methods
Method, print-object: Public standalone methods
mhvc-invalid-p: Private ordinary functions
mhvc-out-of-mrd-p: Public ordinary functions
mhvc-to-cartesian: Private ordinary functions
mhvc-to-lchab-all-integer-case: Private ordinary functions
mhvc-to-lchab-general-case: Private ordinary functions
mhvc-to-lchab-illum-c: Public ordinary functions
mhvc-to-lchab-value-chroma-integer-case: Private ordinary functions
mhvc-to-lchab-value-integer-case: Private ordinary functions
mhvc-to-munsell: Public ordinary functions
mhvc-to-xyy: Private ordinary functions
mhvc-to-xyz: Public ordinary functions
mhvc-to-xyz-illum-c: Public ordinary functions
multiply-mat-mat: Public ordinary functions
multiply-mat-vec: Public ordinary functions
multiply-matrices: Public ordinary functions
munsell-out-of-mrd-p: Public ordinary functions
munsell-to-lchab-illum-c: Public ordinary functions
munsell-to-mhvc: Public ordinary functions
munsell-to-xyy: Private ordinary functions
munsell-to-xyz: Public ordinary functions
munsell-to-xyz-illum-c: Public ordinary functions
munsell-value-to-lstar: Public ordinary functions
munsell-value-to-y: Public ordinary functions

N
nearly-equal: Public ordinary functions
nearly-equal-values: Public macros
nearly<=: Public ordinary functions
nearly=: Public ordinary functions
nlet: Public macros

O
observer-begin-wl: Public ordinary functions
observer-cmf: Public ordinary functions
observer-cmf-table: Private ordinary functions
observer-cmf-x: Public ordinary functions
observer-cmf-y: Public ordinary functions
observer-cmf-z: Public ordinary functions
observer-end-wl: Public ordinary functions
observer-p: Private ordinary functions
optimal-spectrum-peak: Public ordinary functions
optimal-spectrum-trough: Public ordinary functions

P
pow: Public macros
predict-lchab-to-mhvc: Private ordinary functions
primary-converter-allow-other-keys: Private ordinary functions
primary-converter-aux-args: Private ordinary functions
primary-converter-from-colorspace: Private ordinary functions
primary-converter-key-args: Private ordinary functions
primary-converter-name: Private ordinary functions
primary-converter-p: Private ordinary functions
primary-converter-to-colorspace: Private ordinary functions
print-hash-table: Private ordinary functions
print-make-array: Public ordinary functions
print-object: Public standalone methods

Q
qrgb-deltae00: Public ordinary functions
qrgb-deltae94: Public ordinary functions
qrgb-deltaeab: Public ordinary functions
qrgb-deltaecmc: Public ordinary functions
qrgb-out-of-gamut-p: Public ordinary functions
qrgb-to-hpluv: Public ordinary functions
qrgb-to-hsl: Public ordinary functions
qrgb-to-hsluv: Public ordinary functions
qrgb-to-hsv: Public ordinary functions
qrgb-to-lrgb: Public ordinary functions
qrgb-to-munsell-value: Private ordinary functions
qrgb-to-rgb: Public ordinary functions
qrgb-to-rgbpack: Public ordinary functions
qrgb-to-xyz: Public ordinary functions
qrgba-to-rgba: Private ordinary functions
qrgba-to-rgbapack: Private ordinary functions
quantize: Public ordinary functions
queue-list: Private ordinary functions
queue-p: Private ordinary functions
queue-tail: Private ordinary functions

R
radian-to-degree: Public ordinary functions
rgb-out-of-gamut-p: Public ordinary functions
rgb-to-hpluv: Public ordinary functions
rgb-to-hsl: Public ordinary functions
rgb-to-hsluv: Public ordinary functions
rgb-to-hsv: Public ordinary functions
rgb-to-lrgb: Public ordinary functions
rgb-to-qrgb: Public ordinary functions
rgb-to-rgbpack: Public ordinary functions
rgb-to-xyz: Public ordinary functions
rgba-to-qrgba: Private ordinary functions
rgba-to-rgbapack: Private ordinary functions
rgbapack-to-qrgba: Private ordinary functions
rgbapack-to-rgba: Private ordinary functions
rgbpack-to-hpluv: Public ordinary functions
rgbpack-to-hsl: Public ordinary functions
rgbpack-to-hsluv: Public ordinary functions
rgbpack-to-hsv: Public ordinary functions
rgbpack-to-lrgb: Public ordinary functions
rgbpack-to-qrgb: Public ordinary functions
rgbpack-to-rgb: Public ordinary functions
rgbpack-to-xyz: Public ordinary functions
rgbspace-/length: Private ordinary functions
rgbspace-bit-per-channel: Public ordinary functions
rgbspace-delinearizer: Public ordinary functions
rgbspace-from-xyz-matrix: Public ordinary functions
rgbspace-illuminant: Public ordinary functions
rgbspace-length: Private ordinary functions
rgbspace-length/qmax-float: Private ordinary functions
rgbspace-linearizer: Public ordinary functions
rgbspace-lmax: Public ordinary functions
rgbspace-lmin: Public ordinary functions
rgbspace-max: Public ordinary functions
rgbspace-min: Public ordinary functions
rgbspace-normal: Public ordinary functions
rgbspace-p: Private ordinary functions
rgbspace-qmax: Public ordinary functions
rgbspace-qmax-float: Private ordinary functions
rgbspace-qmax-float/length: Private ordinary functions
rgbspace-to-xyz-matrix: Public ordinary functions
rgbspace-xb: Public ordinary functions
rgbspace-xg: Public ordinary functions
rgbspace-xr: Public ordinary functions
rgbspace-yb: Public ordinary functions
rgbspace-yg: Public ordinary functions
rgbspace-yr: Public ordinary functions

S
spectrum-to-xyz: Public ordinary functions
square: Public ordinary functions

T
time-after-gc: Public macros
time-median: Public macros

W
with-ensuring-type: Public macros
with-profiling: Public macros

X
xyy-to-lab: Private ordinary functions
xyy-to-lchab: Private ordinary functions
xyy-to-xyz: Public ordinary functions
xyz-deltae00: Public ordinary functions
xyz-deltae94: Public ordinary functions
xyz-deltaeab: Public ordinary functions
xyz-deltaecmc: Public ordinary functions
xyz-to-hpluv: Public ordinary functions
xyz-to-hsl: Public ordinary functions
xyz-to-hsluv: Public ordinary functions
xyz-to-hsv: Public ordinary functions
xyz-to-lab: Public ordinary functions
xyz-to-lchab: Public ordinary functions
xyz-to-lchuv: Public ordinary functions
xyz-to-lms: Public ordinary functions
xyz-to-lrgb: Public ordinary functions
xyz-to-luv: Public ordinary functions
xyz-to-mhvc: Public ordinary functions
xyz-to-mhvc-illum-c: Public ordinary functions
xyz-to-munsell: Public ordinary functions
xyz-to-munsell-illum-c: Public ordinary functions
xyz-to-qrgb: Public ordinary functions
xyz-to-rgb: Public ordinary functions
xyz-to-rgbpack: Public ordinary functions
xyz-to-spectrum: Public ordinary functions
xyz-to-xyy: Public ordinary functions

Y
y-to-lstar: Private ordinary functions
y-to-munsell-value: Public ordinary functions


A.3 Variables

Jump to:   *   +   /  
A   B   C   D   E   F   I   K   L   M   N   O   Q   R   S   T   V   X   Y   Z  
Index Entry  Section

*
*bit-length-of-most-positive-fixnum*: Private special variables
*colorspace-table*: Private special variables
*dat-dir-path*: Public special variables
*functional-table*: Private special variables
*most-positive-non-large-double-float*: Public special variables
*primary-converter-table*: Private special variables

+
+360/two-pi+: Public constants
+adobe+: Public special variables
+adobe-16+: Public special variables
+bg-srgb-10+: Public special variables
+bg-srgb-12+: Public special variables
+bg-srgb-16+: Public special variables
+bradford+: Public special variables
+cat02+: Public special variables
+cat97s-revised+: Public special variables
+cie-rgb+: Public special variables
+cieluv-epsilon+: Private constants
+cieluv-kappa+: Private constants
+cmccat2000+: Public special variables
+cmccat97+: Public special variables
+cmf-table-cie1931+: Private special variables
+cmf-table-cie1964+: Private special variables
+empty-matrix+: Public special variables
+identity-matrix+: Public special variables
+illum-a+: Public special variables
+illum-c+: Public special variables
+illum-c-table+: Private special variables
+illum-d50+: Public special variables
+illum-d65+: Public special variables
+illum-e+: Public special variables
+inversed-mrd-table-hc+: Private special variables
+inversed-mrd-table-v+: Private special variables
+m-bounds+: Private constants
+max-chroma-table+: Private special variables
+max-chroma-table-dark+: Private special variables
+mrd-table-ch+: Private special variables
+mrd-table-ch-dark+: Private special variables
+mrd-table-l+: Private special variables
+mrd-table-l-dark+: Private special variables
+ntsc1953+: Public special variables
+obs-cie1931+: Public special variables
+obs-cie1964+: Public special variables
+pal/secam+: Public special variables
+prophoto+: Public special variables
+prophoto-12+: Public special variables
+prophoto-16+: Public special variables
+s0-table+: Private special variables
+s1-table+: Private special variables
+s2-table+: Private special variables
+scrgb-16+: Public special variables
+scrgb-nl+: Public special variables
+srgb+: Public special variables
+two-pi/360+: Public constants
+von-kries+: Public special variables
+wide-gamut+: Public special variables
+xyz-scaling+: Public special variables
+y-to-munsell-value-table+: Private special variables

/
/length: Public structures

A
allow-other-keys: Public structures
allow-other-keys: Public structures
arg-types: Public structures
args: Public structures
aux-args: Public structures
aux-args: Public structures

B
begin-wl: Public structures
bit-per-channel: Public structures

C
chroma: Public conditions
cmf: Public structures
cmf-table: Public structures
cmf-x: Public structures
cmf-y: Public structures
cmf-z: Public structures
colorspace: Public structures
Constant, +360/two-pi+: Public constants
Constant, +cieluv-epsilon+: Private constants
Constant, +cieluv-kappa+: Private constants
Constant, +m-bounds+: Private constants
Constant, +two-pi/360+: Public constants
Constant, two-pi: Public constants

D
delinearizer: Public structures
dimension: Public structures
documentation: Public structures

E
end-wl: Public structures

F
fname: Public structures
from-colorspace: Public structures
from-xyz-matrix: Public structures

I
illuminant: Public conditions
illuminant: Public structures
intercept: Private structures
inv-matrix: Public structures

K
key-args: Public structures
key-args: Public structures

L
length: Public structures
length/qmax-float: Public structures
linearizer: Public structures
list: Private structures
lmax: Public structures
lmin: Public structures

M
matrix: Public structures
max: Public structures
message: Public conditions
min: Public structures

N
name: Public structures
name: Public structures
neighbors: Public structures
normal: Public structures

O
observer: Public structures

Q
qmax: Public structures
qmax-float: Public structures
qmax-float/length: Public structures

R
return-types: Public structures

S
slope: Private structures
Slot, /length: Public structures
Slot, allow-other-keys: Public structures
Slot, allow-other-keys: Public structures
Slot, arg-types: Public structures
Slot, args: Public structures
Slot, aux-args: Public structures
Slot, aux-args: Public structures
Slot, begin-wl: Public structures
Slot, bit-per-channel: Public structures
Slot, chroma: Public conditions
Slot, cmf: Public structures
Slot, cmf-table: Public structures
Slot, cmf-x: Public structures
Slot, cmf-y: Public structures
Slot, cmf-z: Public structures
Slot, colorspace: Public structures
Slot, delinearizer: Public structures
Slot, dimension: Public structures
Slot, documentation: Public structures
Slot, end-wl: Public structures
Slot, fname: Public structures
Slot, from-colorspace: Public structures
Slot, from-xyz-matrix: Public structures
Slot, illuminant: Public conditions
Slot, illuminant: Public structures
Slot, intercept: Private structures
Slot, inv-matrix: Public structures
Slot, key-args: Public structures
Slot, key-args: Public structures
Slot, length: Public structures
Slot, length/qmax-float: Public structures
Slot, linearizer: Public structures
Slot, list: Private structures
Slot, lmax: Public structures
Slot, lmin: Public structures
Slot, matrix: Public structures
Slot, max: Public structures
Slot, message: Public conditions
Slot, min: Public structures
Slot, name: Public structures
Slot, name: Public structures
Slot, neighbors: Public structures
Slot, normal: Public structures
Slot, observer: Public structures
Slot, qmax: Public structures
Slot, qmax-float: Public structures
Slot, qmax-float/length: Public structures
Slot, return-types: Public structures
Slot, slope: Private structures
Slot, spec: Public conditions
Slot, spectrum: Public structures
Slot, tail: Private structures
Slot, term: Public structures
Slot, to-colorspace: Public structures
Slot, to-spectrum-matrix: Public structures
Slot, to-xyz-matrix: Public structures
Slot, value: Public conditions
Slot, x: Public structures
Slot, xb: Public structures
Slot, xg: Public structures
Slot, xr: Public structures
Slot, yb: Public structures
Slot, yg: Public structures
Slot, yr: Public structures
Slot, z: Public structures
spec: Public conditions
Special Variable, *bit-length-of-most-positive-fixnum*: Private special variables
Special Variable, *colorspace-table*: Private special variables
Special Variable, *dat-dir-path*: Public special variables
Special Variable, *functional-table*: Private special variables
Special Variable, *most-positive-non-large-double-float*: Public special variables
Special Variable, *primary-converter-table*: Private special variables
Special Variable, +adobe+: Public special variables
Special Variable, +adobe-16+: Public special variables
Special Variable, +bg-srgb-10+: Public special variables
Special Variable, +bg-srgb-12+: Public special variables
Special Variable, +bg-srgb-16+: Public special variables
Special Variable, +bradford+: Public special variables
Special Variable, +cat02+: Public special variables
Special Variable, +cat97s-revised+: Public special variables
Special Variable, +cie-rgb+: Public special variables
Special Variable, +cmccat2000+: Public special variables
Special Variable, +cmccat97+: Public special variables
Special Variable, +cmf-table-cie1931+: Private special variables
Special Variable, +cmf-table-cie1964+: Private special variables
Special Variable, +empty-matrix+: Public special variables
Special Variable, +identity-matrix+: Public special variables
Special Variable, +illum-a+: Public special variables
Special Variable, +illum-c+: Public special variables
Special Variable, +illum-c-table+: Private special variables
Special Variable, +illum-d50+: Public special variables
Special Variable, +illum-d65+: Public special variables
Special Variable, +illum-e+: Public special variables
Special Variable, +inversed-mrd-table-hc+: Private special variables
Special Variable, +inversed-mrd-table-v+: Private special variables
Special Variable, +max-chroma-table+: Private special variables
Special Variable, +max-chroma-table-dark+: Private special variables
Special Variable, +mrd-table-ch+: Private special variables
Special Variable, +mrd-table-ch-dark+: Private special variables
Special Variable, +mrd-table-l+: Private special variables
Special Variable, +mrd-table-l-dark+: Private special variables
Special Variable, +ntsc1953+: Public special variables
Special Variable, +obs-cie1931+: Public special variables
Special Variable, +obs-cie1964+: Public special variables
Special Variable, +pal/secam+: Public special variables
Special Variable, +prophoto+: Public special variables
Special Variable, +prophoto-12+: Public special variables
Special Variable, +prophoto-16+: Public special variables
Special Variable, +s0-table+: Private special variables
Special Variable, +s1-table+: Private special variables
Special Variable, +s2-table+: Private special variables
Special Variable, +scrgb-16+: Public special variables
Special Variable, +scrgb-nl+: Public special variables
Special Variable, +srgb+: Public special variables
Special Variable, +von-kries+: Public special variables
Special Variable, +wide-gamut+: Public special variables
Special Variable, +xyz-scaling+: Public special variables
Special Variable, +y-to-munsell-value-table+: Private special variables
spectrum: Public structures

T
tail: Private structures
term: Public structures
to-colorspace: Public structures
to-spectrum-matrix: Public structures
to-xyz-matrix: Public structures
two-pi: Public constants

V
value: Public conditions

X
x: Public structures
xb: Public structures
xg: Public structures
xr: Public structures

Y
yb: Public structures
yg: Public structures
yr: Public structures

Z
z: Public structures


A.4 Data types

Jump to:   A   B   C   D   F   H   I   L   M   N   O   P   Q   R   S   T   U   X   Y  
Index Entry  Section

A
arithmetic.lisp: The dufy/internal/internal/arithmetic․lisp file

B
builtin-rgbspaces.lisp: The dufy/core/core/builtin-rgbspaces․lisp file

C
cat: Public structures
cat.lisp: The dufy/core/core/cat․lisp file
ciede2000-test-data.csv: The dufy/dat/ciede2000-test-data․csv file
cmf-data.lisp: The dufy/core/core/cmf-data․lisp file
colorspace: Public structures
colorspace.lisp: The dufy/internal/internal/colorspace․lisp file
Condition, invalid-mhvc-error: Public conditions
Condition, large-approximation-error: Public conditions
Condition, munsellspec-parse-error: Public conditions
Condition, no-spd-error: Public conditions
convert.lisp: The dufy/munsell/munsell/convert․lisp file
core: The dufy/core/core module

D
dat: The dufy/dat module
deltae.lisp: The dufy/core/core/deltae․lisp file
dufy: The dufy system
dufy: The dufy package
dufy.asd: The dufy/dufy․asd file
dufy/core: The dufy/core system
dufy/core: The dufy/core package
dufy/hsluv: The dufy/hsluv system
dufy/hsluv: The dufy/hsluv package
dufy/internal: The dufy/internal system
dufy/internal: The dufy/internal package
dufy/munsell: The dufy/munsell system
dufy/munsell: The dufy/munsell package

F
File, arithmetic.lisp: The dufy/internal/internal/arithmetic․lisp file
File, builtin-rgbspaces.lisp: The dufy/core/core/builtin-rgbspaces․lisp file
File, cat.lisp: The dufy/core/core/cat․lisp file
File, ciede2000-test-data.csv: The dufy/dat/ciede2000-test-data․csv file
File, cmf-data.lisp: The dufy/core/core/cmf-data․lisp file
File, colorspace.lisp: The dufy/internal/internal/colorspace․lisp file
File, convert.lisp: The dufy/munsell/munsell/convert․lisp file
File, deltae.lisp: The dufy/core/core/deltae․lisp file
File, dufy.asd: The dufy/dufy․asd file
File, fl3.x.tsv: The dufy/dat/fl3․x․tsv file
File, fundamental.lisp: The dufy/munsell/munsell/fundamental․lisp file
File, hsluv.lisp: The dufy/hsluv/hsluv/hsluv․lisp file
File, illuminants-data.lisp: The dufy/core/core/illuminants-data․lisp file
File, inversed-renotation-data.lisp: The dufy/munsell/munsell/inversed-renotation-data․lisp file
File, invert.lisp: The dufy/munsell/munsell/invert․lisp file
File, lab-and-luv.lisp: The dufy/core/core/lab-and-luv․lisp file
File, matrix.lisp: The dufy/internal/internal/matrix․lisp file
File, mb-line.lisp: The dufy/internal/internal/mb-line․lisp file
File, package.lisp: The dufy/src/package․lisp file
File, package.lisp: The dufy/core/core/package․lisp file
File, package.lisp: The dufy/internal/internal/package․lisp file
File, package.lisp: The dufy/munsell/munsell/package․lisp file
File, package.lisp: The dufy/hsluv/hsluv/package․lisp file
File, renotation-data.lisp: The dufy/munsell/munsell/renotation-data․lisp file
File, rgb.lisp: The dufy/core/core/rgb․lisp file
File, spectrum.lisp: The dufy/core/core/spectrum․lisp file
File, utilities.lisp: The dufy/internal/internal/utilities․lisp file
File, xyz.lisp: The dufy/core/core/xyz․lisp file
File, y-to-value-data.lisp: The dufy/munsell/munsell/y-to-value-data․lisp file
fl3.x.tsv: The dufy/dat/fl3․x․tsv file
functional: Public structures
fundamental.lisp: The dufy/munsell/munsell/fundamental․lisp file

H
hsluv: The dufy/hsluv/hsluv module
hsluv.lisp: The dufy/hsluv/hsluv/hsluv․lisp file

I
illuminant: Public structures
illuminants-data.lisp: The dufy/core/core/illuminants-data․lisp file
internal: The dufy/internal/internal module
invalid-mhvc-error: Public conditions
inversed-renotation-data.lisp: The dufy/munsell/munsell/inversed-renotation-data․lisp file
invert.lisp: The dufy/munsell/munsell/invert․lisp file

L
lab-and-luv.lisp: The dufy/core/core/lab-and-luv․lisp file
large-approximation-error: Public conditions

M
matrix.lisp: The dufy/internal/internal/matrix․lisp file
matrix33: Public types
mb-line: Private structures
mb-line.lisp: The dufy/internal/internal/mb-line․lisp file
Module, core: The dufy/core/core module
Module, dat: The dufy/dat module
Module, hsluv: The dufy/hsluv/hsluv module
Module, internal: The dufy/internal/internal module
Module, munsell: The dufy/munsell/munsell module
Module, src: The dufy/src module
munsell: The dufy/munsell/munsell module
munsellspec-parse-error: Public conditions

N
no-spd-error: Public conditions
non-negative-non-large-double-float: Public types

O
observer: Public structures

P
Package, dufy: The dufy package
Package, dufy/core: The dufy/core package
Package, dufy/hsluv: The dufy/hsluv package
Package, dufy/internal: The dufy/internal package
Package, dufy/munsell: The dufy/munsell package
package.lisp: The dufy/src/package․lisp file
package.lisp: The dufy/core/core/package․lisp file
package.lisp: The dufy/internal/internal/package․lisp file
package.lisp: The dufy/munsell/munsell/package․lisp file
package.lisp: The dufy/hsluv/hsluv/package․lisp file
primary-converter: Public structures

Q
queue: Private structures

R
renotation-data.lisp: The dufy/munsell/munsell/renotation-data․lisp file
rgb.lisp: The dufy/core/core/rgb․lisp file
rgbspace: Public structures

S
spectrum-function: Private types
spectrum.lisp: The dufy/core/core/spectrum․lisp file
src: The dufy/src module
Structure, cat: Public structures
Structure, colorspace: Public structures
Structure, functional: Public structures
Structure, illuminant: Public structures
Structure, mb-line: Private structures
Structure, observer: Public structures
Structure, primary-converter: Public structures
Structure, queue: Private structures
Structure, rgbspace: Public structures
System, dufy: The dufy system
System, dufy/core: The dufy/core system
System, dufy/hsluv: The dufy/hsluv system
System, dufy/internal: The dufy/internal system
System, dufy/munsell: The dufy/munsell system

T
tuple: Public types
Type, matrix33: Public types
Type, non-negative-non-large-double-float: Public types
Type, spectrum-function: Private types
Type, tuple: Public types

U
utilities.lisp: The dufy/internal/internal/utilities․lisp file

X
xyz.lisp: The dufy/core/core/xyz․lisp file

Y
y-to-value-data.lisp: The dufy/munsell/munsell/y-to-value-data․lisp file