From 22f703cab05b7cd368f4de9e03991b7664dc5022 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Mon, 1 Sep 2014 13:56:46 +0200 Subject: Initial import of argyll version 1.5.1-8 --- gamut/GenRMGam.c | 786 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 786 insertions(+) create mode 100644 gamut/GenRMGam.c (limited to 'gamut/GenRMGam.c') diff --git a/gamut/GenRMGam.c b/gamut/GenRMGam.c new file mode 100644 index 0000000..5a62eee --- /dev/null +++ b/gamut/GenRMGam.c @@ -0,0 +1,786 @@ + +/* Convert the proposed ISO 12640-3 Reference Medium Gamut to Argyll Lab Gamut */ +/* Copyright 2005 by Graeme W. Gill */ +/* All rights reserved. */ + +#include +#include +#include +#include +#include +#include +#include "aconfig.h" +#include "numlib.h" +#include "icc.h" +#include "gamut.h" +#if defined(__IBMC__) && defined(_M_IX86) +#include +#endif + +/* Gamut surface points in LCh space */ +/* + black and white points */ +#define NPOINTS (684+2+3) + +double points[NPOINTS][3] = { + { 100, 0, 0 }, /* White */ + { 3.1373, 0, 0 }, /* Black */ + { 98.75, 30.75, 90 }, /* Three extra values along yellow ridge */ + { 97.5, 61.5, 90 }, + { 96.25, 92.25, 90 }, + { 5, 10, 0 }, + { 10, 25, 0 }, + { 15, 38, 0 }, + { 20, 50, 0 }, + { 25, 62, 0 }, + { 30, 73, 0 }, + { 35, 80, 0 }, + { 40, 86, 0 }, + { 45, 89, 0 }, + { 50, 86, 0 }, + { 55, 85, 0 }, + { 60, 81, 0 }, + { 65, 73, 0 }, + { 70, 65, 0 }, + { 75, 55, 0 }, + { 80, 45, 0 }, + { 85, 34, 0 }, + { 90, 23, 0 }, + { 95, 12, 0 }, + { 5, 10, 10 }, + { 10, 24, 10 }, + { 15, 37, 10 }, + { 20, 50, 10 }, + { 25, 61, 10 }, + { 30, 71, 10 }, + { 35, 80, 10 }, + { 40, 88, 10 }, + { 45, 90, 10 }, + { 50, 89, 10 }, + { 55, 85, 10 }, + { 60, 81, 10 }, + { 65, 73, 10 }, + { 70, 65, 10 }, + { 75, 55, 10 }, + { 80, 45, 10 }, + { 85, 34, 10 }, + { 90, 22, 10 }, + { 95, 11, 10 }, + { 5, 10, 20 }, + { 10, 22, 20 }, + { 15, 36, 20 }, + { 20, 50, 20 }, + { 25, 62, 20 }, + { 30, 73, 20 }, + { 35, 80, 20 }, + { 40, 90, 20 }, + { 45, 93, 20 }, + { 50, 91, 20 }, + { 55, 86, 20 }, + { 60, 83, 20 }, + { 65, 73, 20 }, + { 70, 70, 20 }, + { 75, 55, 20 }, + { 80, 50, 20 }, + { 85, 35, 20 }, + { 90, 25, 20 }, + { 95, 11, 20 }, + { 5, 9, 30 }, + { 10, 22, 30 }, + { 15, 34, 30 }, + { 20, 48, 30 }, + { 25, 61, 30 }, + { 30, 74, 30 }, + { 35, 86, 30 }, + { 40, 98, 30 }, + { 45, 99, 30 }, + { 50, 101, 30 }, + { 55, 95, 30 }, + { 60, 90, 30 }, + { 65, 81, 30 }, + { 70, 73, 30 }, + { 75, 65, 30 }, + { 80, 52, 30 }, + { 85, 35, 30 }, + { 90, 30, 30 }, + { 95, 12, 30 }, + { 5, 8, 40 }, + { 10, 20, 40 }, + { 15, 33, 40 }, + { 20, 46, 40 }, + { 25, 60, 40 }, + { 30, 73, 40 }, + { 35, 83, 40 }, + { 40, 93, 40 }, + { 45, 96, 40 }, + { 50, 101, 40 }, + { 55, 99, 40 }, + { 60, 97, 40 }, + { 65, 90, 40 }, + { 70, 83, 40 }, + { 75, 71, 40 }, + { 80, 60, 40 }, + { 85, 44, 40 }, + { 90, 30, 40 }, + { 95, 15, 40 }, + { 5, 8, 50 }, + { 10, 20, 50 }, + { 15, 30, 50 }, + { 20, 42, 50 }, + { 25, 54, 50 }, + { 30, 66, 50 }, + { 35, 77, 50 }, + { 40, 88, 50 }, + { 45, 95, 50 }, + { 50, 99, 50 }, + { 55, 101, 50 }, + { 60, 100, 50 }, + { 65, 97, 50 }, + { 70, 92, 50 }, + { 75, 83, 50 }, + { 80, 72, 50 }, + { 85, 55, 50 }, + { 90, 37, 50 }, + { 95, 19, 50 }, + { 5, 7, 60 }, + { 10, 17, 60 }, + { 15, 26, 60 }, + { 20, 36, 60 }, + { 25, 46, 60 }, + { 30, 55, 60 }, + { 35, 64, 60 }, + { 40, 75, 60 }, + { 45, 80, 60 }, + { 50, 90, 60 }, + { 55, 95, 60 }, + { 60, 100, 60 }, + { 65, 101, 60 }, + { 70, 102, 60 }, + { 75, 98, 60 }, + { 80, 90, 60 }, + { 85, 72, 60 }, + { 90, 50, 60 }, + { 95, 25, 60 }, + { 5, 6, 70 }, + { 10, 15, 70 }, + { 15, 25, 70 }, + { 20, 32, 70 }, + { 25, 42, 70 }, + { 30, 50, 70 }, + { 35, 58, 70 }, + { 40, 68, 70 }, + { 45, 75, 70 }, + { 50, 82, 70 }, + { 55, 90, 70 }, + { 60, 95, 70 }, + { 65, 100, 70 }, + { 70, 104, 70 }, + { 75, 107, 70 }, + { 80, 109, 70 }, + { 85, 100, 70 }, + { 90, 74, 70 }, + { 95, 34, 70 }, + { 5, 5, 80 }, + { 10, 13, 80 }, + { 15, 23, 80 }, + { 20, 30, 80 }, + { 25, 37, 80 }, + { 30, 47, 80 }, + { 35, 55, 80 }, + { 40, 62, 80 }, + { 45, 70, 80 }, + { 50, 77, 80 }, + { 55, 85, 80 }, + { 60, 90, 80 }, + { 65, 95, 80 }, + { 70, 103, 80 }, + { 75, 106, 80 }, + { 80, 110, 80 }, + { 85, 113, 80 }, + { 90, 110, 80 }, + { 95, 70, 80 }, + { 5, 5, 90 }, + { 10, 13, 90 }, + { 15, 21, 90 }, + { 20, 30, 90 }, + { 25, 36, 90 }, + { 30, 45, 90 }, + { 35, 55, 90 }, + { 40, 60, 90 }, + { 45, 64, 90 }, + { 50, 73, 90 }, + { 55, 80, 90 }, + { 60, 88, 90 }, + { 65, 95, 90 }, + { 70, 100, 90 }, + { 75, 106, 90 }, + { 80, 111, 90 }, + { 85, 117, 90 }, + { 90, 120, 90 }, + { 95, 123, 90 }, + { 5, 5, 100 }, + { 10, 14, 100 }, + { 15, 21, 100 }, + { 20, 30, 100 }, + { 25, 35, 100 }, + { 30, 45, 100 }, + { 35, 53, 100 }, + { 40, 60, 100 }, + { 45, 65, 100 }, + { 50, 73, 100 }, + { 55, 80, 100 }, + { 60, 87, 100 }, + { 65, 94, 100 }, + { 70, 100, 100 }, + { 75, 106, 100 }, + { 80, 109, 100 }, + { 85, 113, 100 }, + { 90, 108, 100 }, + { 95, 90, 100 }, + { 5, 6, 110 }, + { 10, 14, 110 }, + { 15, 22, 110 }, + { 20, 30, 110 }, + { 25, 37, 110 }, + { 30, 46, 110 }, + { 35, 52, 110 }, + { 40, 61, 110 }, + { 45, 67, 110 }, + { 50, 75, 110 }, + { 55, 82, 110 }, + { 60, 89, 110 }, + { 65, 96, 110 }, + { 70, 100, 110 }, + { 75, 103, 110 }, + { 80, 106, 110 }, + { 85, 107, 110 }, + { 90, 102, 110 }, + { 95, 75, 110 }, + { 5, 6, 120 }, + { 10, 15, 120 }, + { 15, 22, 120 }, + { 20, 31, 120 }, + { 25, 40, 120 }, + { 30, 49, 120 }, + { 35, 57, 120 }, + { 40, 65, 120 }, + { 45, 73, 120 }, + { 50, 80, 120 }, + { 55, 87, 120 }, + { 60, 93, 120 }, + { 65, 98, 120 }, + { 70, 100, 120 }, + { 75, 101, 120 }, + { 80, 96, 120 }, + { 85, 88, 120 }, + { 90, 73, 120 }, + { 95, 50, 120 }, + { 5, 6, 130 }, + { 10, 15, 130 }, + { 15, 24, 130 }, + { 20, 34, 130 }, + { 25, 44, 130 }, + { 30, 53, 130 }, + { 35, 63, 130 }, + { 40, 72, 130 }, + { 45, 80, 130 }, + { 50, 87, 130 }, + { 55, 93, 130 }, + { 60, 97, 130 }, + { 65, 101, 130 }, + { 70, 99, 130 }, + { 75, 94, 130 }, + { 80, 84, 130 }, + { 85, 72, 130 }, + { 90, 55, 130 }, + { 95, 30, 130 }, + { 5, 7, 140 }, + { 10, 18, 140 }, + { 15, 27, 140 }, + { 20, 37, 140 }, + { 25, 47, 140 }, + { 30, 57, 140 }, + { 35, 67, 140 }, + { 40, 77, 140 }, + { 45, 85, 140 }, + { 50, 95, 140 }, + { 55, 98, 140 }, + { 60, 101, 140 }, + { 65, 97, 140 }, + { 70, 93, 140 }, + { 75, 85, 140 }, + { 80, 75, 140 }, + { 85, 61, 140 }, + { 90, 42, 140 }, + { 95, 21, 140 }, + { 5, 7, 150 }, + { 10, 18, 150 }, + { 15, 29, 150 }, + { 20, 40, 150 }, + { 25, 51, 150 }, + { 30, 61, 150 }, + { 35, 71, 150 }, + { 40, 81, 150 }, + { 45, 92, 150 }, + { 50, 97, 150 }, + { 55, 99, 150 }, + { 60, 96, 150 }, + { 65, 91, 150 }, + { 70, 85, 150 }, + { 75, 76, 150 }, + { 80, 66, 150 }, + { 85, 52, 150 }, + { 90, 37, 150 }, + { 95, 19, 150 }, + { 5, 7, 160 }, + { 10, 20, 160 }, + { 15, 30, 160 }, + { 20, 42, 160 }, + { 25, 53, 160 }, + { 30, 66, 160 }, + { 35, 79, 160 }, + { 40, 92, 160 }, + { 45, 96, 160 }, + { 50, 99, 160 }, + { 55, 97, 160 }, + { 60, 90, 160 }, + { 65, 87, 160 }, + { 70, 79, 160 }, + { 75, 69, 160 }, + { 80, 59, 160 }, + { 85, 46, 160 }, + { 90, 32, 160 }, + { 95, 19, 160 }, + { 5, 8, 170 }, + { 10, 20, 170 }, + { 15, 30, 170 }, + { 20, 41, 170 }, + { 25, 52, 170 }, + { 30, 63, 170 }, + { 35, 73, 170 }, + { 40, 83, 170 }, + { 45, 91, 170 }, + { 50, 96, 170 }, + { 55, 93, 170 }, + { 60, 89, 170 }, + { 65, 82, 170 }, + { 70, 75, 170 }, + { 75, 65, 170 }, + { 80, 55, 170 }, + { 85, 42, 170 }, + { 90, 29, 170 }, + { 95, 15, 170 }, + { 5, 8, 180 }, + { 10, 20, 180 }, + { 15, 29, 180 }, + { 20, 40, 180 }, + { 25, 51, 180 }, + { 30, 62, 180 }, + { 35, 72, 180 }, + { 40, 81, 180 }, + { 45, 86, 180 }, + { 50, 92, 180 }, + { 55, 90, 180 }, + { 60, 86, 180 }, + { 65, 79, 180 }, + { 70, 71, 180 }, + { 75, 61, 180 }, + { 80, 51, 180 }, + { 85, 38, 180 }, + { 90, 25, 180 }, + { 95, 13, 180 }, + { 5, 8, 190 }, + { 10, 20, 190 }, + { 15, 29, 190 }, + { 20, 40, 190 }, + { 25, 49, 190 }, + { 30, 60, 190 }, + { 35, 68, 190 }, + { 40, 76, 190 }, + { 45, 81, 190 }, + { 50, 87, 190 }, + { 55, 85, 190 }, + { 60, 82, 190 }, + { 65, 75, 190 }, + { 70, 69, 190 }, + { 75, 60, 190 }, + { 80, 50, 190 }, + { 85, 38, 190 }, + { 90, 26, 190 }, + { 95, 13, 190 }, + { 5, 8, 200 }, + { 10, 20, 200 }, + { 15, 28, 200 }, + { 20, 38, 200 }, + { 25, 47, 200 }, + { 30, 56, 200 }, + { 35, 63, 200 }, + { 40, 70, 200 }, + { 45, 75, 200 }, + { 50, 80, 200 }, + { 55, 78, 200 }, + { 60, 78, 200 }, + { 65, 72, 200 }, + { 70, 66, 200 }, + { 75, 58, 200 }, + { 80, 49, 200 }, + { 85, 38, 200 }, + { 90, 27, 200 }, + { 95, 14, 200 }, + { 5, 8, 210 }, + { 10, 20, 210 }, + { 15, 28, 210 }, + { 20, 37, 210 }, + { 25, 45, 210 }, + { 30, 53, 210 }, + { 35, 60, 210 }, + { 40, 66, 210 }, + { 45, 72, 210 }, + { 50, 79, 210 }, + { 55, 80, 210 }, + { 60, 76, 210 }, + { 65, 69, 210 }, + { 70, 64, 210 }, + { 75, 57, 210 }, + { 80, 49, 210 }, + { 85, 38, 210 }, + { 90, 27, 210 }, + { 95, 14, 210 }, + { 5, 8, 220 }, + { 10, 20, 220 }, + { 15, 27, 220 }, + { 20, 37, 220 }, + { 25, 44, 220 }, + { 30, 51, 220 }, + { 35, 57, 220 }, + { 40, 64, 220 }, + { 45, 70, 220 }, + { 50, 76, 220 }, + { 55, 73, 220 }, + { 60, 71, 220 }, + { 65, 68, 220 }, + { 70, 63, 220 }, + { 75, 56, 220 }, + { 80, 48, 220 }, + { 85, 38, 220 }, + { 90, 27, 220 }, + { 95, 14, 220 }, + { 5, 8, 230 }, + { 10, 20, 230 }, + { 15, 28, 230 }, + { 20, 38, 230 }, + { 25, 45, 230 }, + { 30, 52, 230 }, + { 35, 57, 230 }, + { 40, 65, 230 }, + { 45, 69, 230 }, + { 50, 75, 230 }, + { 55, 72, 230 }, + { 60, 71, 230 }, + { 65, 66, 230 }, + { 70, 61, 230 }, + { 75, 54, 230 }, + { 80, 46, 230 }, + { 85, 36, 230 }, + { 90, 26, 230 }, + { 95, 13, 230 }, + { 5, 9, 240 }, + { 10, 20, 240 }, + { 15, 29, 240 }, + { 20, 40, 240 }, + { 25, 48, 240 }, + { 30, 55, 240 }, + { 35, 61, 240 }, + { 40, 66, 240 }, + { 45, 71, 240 }, + { 50, 74, 240 }, + { 55, 70, 240 }, + { 60, 66, 240 }, + { 65, 61, 240 }, + { 70, 56, 240 }, + { 75, 49, 240 }, + { 80, 41, 240 }, + { 85, 32, 240 }, + { 90, 23, 240 }, + { 95, 12, 240 }, + { 5, 11, 250 }, + { 10, 22, 250 }, + { 15, 32, 250 }, + { 20, 42, 250 }, + { 25, 50, 250 }, + { 30, 59, 250 }, + { 35, 65, 250 }, + { 40, 70, 250 }, + { 45, 73, 250 }, + { 50, 70, 250 }, + { 55, 68, 250 }, + { 60, 62, 250 }, + { 65, 58, 250 }, + { 70, 52, 250 }, + { 75, 45, 250 }, + { 80, 38, 250 }, + { 85, 29, 250 }, + { 90, 21, 250 }, + { 95, 11, 250 }, + { 5, 14, 260 }, + { 10, 27, 260 }, + { 15, 38, 260 }, + { 20, 48, 260 }, + { 25, 56, 260 }, + { 30, 63, 260 }, + { 35, 67, 260 }, + { 40, 72, 260 }, + { 45, 73, 260 }, + { 50, 69, 260 }, + { 55, 65, 260 }, + { 60, 60, 260 }, + { 65, 56, 260 }, + { 70, 50, 260 }, + { 75, 43, 260 }, + { 80, 35, 260 }, + { 85, 27, 260 }, + { 90, 20, 260 }, + { 95, 10, 260 }, + { 5, 16, 270 }, + { 10, 32, 270 }, + { 15, 44, 270 }, + { 20, 55, 270 }, + { 25, 62, 270 }, + { 30, 70, 270 }, + { 35, 75, 270 }, + { 40, 74, 270 }, + { 45, 72, 270 }, + { 50, 68, 270 }, + { 55, 66, 270 }, + { 60, 59, 270 }, + { 65, 54, 270 }, + { 70, 48, 270 }, + { 75, 41, 270 }, + { 80, 33, 270 }, + { 85, 26, 270 }, + { 90, 18, 270 }, + { 95, 9, 270 }, + { 5, 21, 280 }, + { 10, 42, 280 }, + { 15, 55, 280 }, + { 20, 68, 280 }, + { 25, 73, 280 }, + { 30, 81, 280 }, + { 35, 80, 280 }, + { 40, 78, 280 }, + { 45, 76, 280 }, + { 50, 70, 280 }, + { 55, 67, 280 }, + { 60, 60, 280 }, + { 65, 55, 280 }, + { 70, 49, 280 }, + { 75, 41, 280 }, + { 80, 33, 280 }, + { 85, 26, 280 }, + { 90, 18, 280 }, + { 95, 9, 280 }, + { 5, 26, 290 }, + { 10, 52, 290 }, + { 15, 66, 290 }, + { 20, 83, 290 }, + { 25, 84, 290 }, + { 30, 89, 290 }, + { 35, 87, 290 }, + { 40, 84, 290 }, + { 45, 80, 290 }, + { 50, 75, 290 }, + { 55, 69, 290 }, + { 60, 63, 290 }, + { 65, 57, 290 }, + { 70, 50, 290 }, + { 75, 42, 290 }, + { 80, 34, 290 }, + { 85, 26, 290 }, + { 90, 18, 290 }, + { 95, 9, 290 }, + { 5, 25, 300 }, + { 10, 65, 300 }, + { 15, 79, 300 }, + { 20, 95, 300 }, + { 25, 93, 300 }, + { 30, 92, 300 }, + { 35, 90, 300 }, + { 40, 87, 300 }, + { 45, 85, 300 }, + { 50, 77, 300 }, + { 55, 73, 300 }, + { 60, 66, 300 }, + { 65, 59, 300 }, + { 70, 52, 300 }, + { 75, 44, 300 }, + { 80, 36, 300 }, + { 85, 28, 300 }, + { 90, 19, 300 }, + { 95, 10, 300 }, + { 5, 20, 310 }, + { 10, 50, 310 }, + { 15, 67, 310 }, + { 20, 91, 310 }, + { 25, 97, 310 }, + { 30, 100, 310 }, + { 35, 98, 310 }, + { 40, 95, 310 }, + { 45, 90, 310 }, + { 50, 84, 310 }, + { 55, 77, 310 }, + { 60, 70, 310 }, + { 65, 63, 310 }, + { 70, 55, 310 }, + { 75, 47, 310 }, + { 80, 39, 310 }, + { 85, 30, 310 }, + { 90, 20, 310 }, + { 95, 10, 310 }, + { 5, 18, 320 }, + { 10, 41, 320 }, + { 15, 60, 320 }, + { 20, 79, 320 }, + { 25, 90, 320 }, + { 30, 102, 320 }, + { 35, 101, 320 }, + { 40, 98, 320 }, + { 45, 94, 320 }, + { 50, 89, 320 }, + { 55, 83, 320 }, + { 60, 76, 320 }, + { 65, 68, 320 }, + { 70, 60, 320 }, + { 75, 51, 320 }, + { 80, 42, 320 }, + { 85, 32, 320 }, + { 90, 21, 320 }, + { 95, 11, 320 }, + { 5, 16, 330 }, + { 10, 35, 330 }, + { 15, 53, 330 }, + { 20, 71, 330 }, + { 25, 82, 330 }, + { 30, 91, 330 }, + { 35, 99, 330 }, + { 40, 104, 330 }, + { 45, 102, 330 }, + { 50, 98, 330 }, + { 55, 90, 330 }, + { 60, 84, 330 }, + { 65, 76, 330 }, + { 70, 67, 330 }, + { 75, 57, 330 }, + { 80, 47, 330 }, + { 85, 36, 330 }, + { 90, 24, 330 }, + { 95, 12, 330 }, + { 5, 14, 340 }, + { 10, 31, 340 }, + { 15, 45, 340 }, + { 20, 61, 340 }, + { 25, 71, 340 }, + { 30, 82, 340 }, + { 35, 91, 340 }, + { 40, 101, 340 }, + { 45, 103, 340 }, + { 50, 99, 340 }, + { 55, 95, 340 }, + { 60, 89, 340 }, + { 65, 80, 340 }, + { 70, 71, 340 }, + { 75, 61, 340 }, + { 80, 50, 340 }, + { 85, 38, 340 }, + { 90, 26, 340 }, + { 95, 13, 340 }, + { 5, 12, 350 }, + { 10, 28, 350 }, + { 15, 41, 350 }, + { 20, 54, 350 }, + { 25, 65, 350 }, + { 30, 76, 350 }, + { 35, 83, 350 }, + { 40, 93, 350 }, + { 45, 95, 350 }, + { 50, 92, 350 }, + { 55, 90, 350 }, + { 60, 85, 350 }, + { 65, 77, 350 }, + { 70, 68, 350 }, + { 75, 58, 350 }, + { 80, 48, 350 }, + { 85, 36, 350 }, + { 90, 24, 350 }, + { 95, 12, 350 } +}; + +/* selected "cusp" points */ +double cpoints[6][3] = { + { 50, 101, 36 }, + { 95, 123, 90 }, + { 60, 101, 140 }, + { 55, 80, 210 }, + { 20, 95, 300 }, + { 40, 104, 330 }, +}; + +/* Our idealised cusp point angles for Lab in degrees: */ +/* 36.0, Red */ +/* 101.0, Yellow */ +/* 149.0, Green */ +/* 225.0, Cyan */ +/* 300.0, Blue */ +/* 337.0 Magenta */ + +#define GAMRES 1.0 /* Default surface resolution */ + +int +main(int argc, char *argv[]) { + int i; + char out_name[MAXNAMEL+1]; /* VRML output file */ + + double gamres = GAMRES; /* Surface resolution */ + gamut *gam; + + +#if defined(__IBMC__) && defined(_M_IX86) + _control87(EM_UNDERFLOW, EM_UNDERFLOW); +#endif + + if (argc < 2) { + strcpy(out_name, "RefMediumGamut.gam"); + } else { + strncpy(out_name,argv[1],MAXNAMEL); out_name[MAXNAMEL] = '\000'; + } + + /* Creat a gamut surface */ + gam = new_gamut(gamres, 0, 0); + + /* For all the supplied surface points, */ + /* add them to the gamut */ + for (i = 0; i < NPOINTS; i++) { + double lab[3]; + + icmLCh2Lab(lab, points[i]); +//printf("~1 LCh %f %f %f -> Lab %f %f %f\n", points[i][0], points[i][1], points[i][2], lab[0], lab[1], lab[2]); + gam->expand(gam, lab); + } + + /* Add selected cusp points to set cusp values */ + gam->setcusps(gam, 0, NULL); + for (i = 0; i < 6; i++) { + double lab[3]; + + icmLCh2Lab(lab, cpoints[i]); +//printf("~1 LCh %f %f %f -> Lab %f %f %f\n", points[i][0], points[i][1], points[i][2], lab[0], lab[1], lab[2]); + gam->setcusps(gam, 1, lab); + } + gam->setcusps(gam, 2, NULL); + + if (gam->write_gam(gam, out_name)) + error ("write gamut failed on '%s'",out_name); + + gam->del(gam); + + return 0; +} + -- cgit v1.2.3