aboutsummaryrefslogtreecommitdiffstats
path: root/LIBCOLOUR_CIELUV.7
blob: 607415ec4c4900047ad6fdb5bc49ef9b8101c8cc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
.TH LIBCOLOUR_CIELUV 7 libcolour
.SH NAME
LIBCOLOUR_CIELUV - CIE 1976 (L*, u*, v*)
.SH DESCRIPTION
CIE 1976 (L*, u*, v*) (also known simply as CIE L*u*v*)
colours are presented with either of
.nf

	typedef struct libcolour_cieluv_f libcolour_cieluv_f_t;
	typedef struct libcolour_cieluv_lf libcolour_cieluv_lf_t;
	typedef struct libcolour_cieluv_llf libcolour_cieluv_llf_t;

.fi
These
.BR struct s
use
.BR float ,
.BR double ,
and
.BR long\ double ,
respecitively, for the values stored in them,
and are otherwise identical.
.B struct libcolour_cieluv_f
is defined as
.nf

	struct libcolour_cieluv_f {
		enum libcolour_model \fImodel\fP;
		float \fIL\fP;
		float \fIu\fP;
		float \fIv\fP;
		struct libcolour_ciexyz \fIwhite\fP;
	};

.fi
.I .model
shall be set to
.BR LIBCOLOUR_CIELUV .
In
.BR union\ libcolour_colour_f ,
.BR union\ libcolour_colour_lf ,
and
.BR union\ libcolour_colour_llf ,
.I .cieluv
is used for CIE L*u*v* colours.
.P
.IR .L ,
.IR .u ,
and
.I .v
hold the L*, u*, and v* values, respectively, and
.I .white
holds the white point.
.P
L* is 0 in black and 100 in white.
.P
The call
.BI libcolour_proper(& c )
on a
.B struct libcolour_cieluv_t
.I c
sets
.I c.white.model
to
.BR LIBCOLOUR_CIEXYZ .
Zero is always returned in this case.
.P
CIE L*u*v* is not additive, since conversion from
CIE 1931 XYZ is non-linear.
.P
CIE 1976 (L*, u*, v*) approximates
uniform human colour perception.
.SH SEE ALSO
.BR libcolour (7)
.SH AUTHORS
Mattias Andrée
.RI < maandree@kth.se >