On Wed, 17 Feb 2010, Graeme Geldenhuys wrote:

Luiz Americo Pereira Camara wrote:

The point is that the TFPColor constants are inconsistently defined.

I see your point and agree. Some colors have both high and low byte set,
some other colors do not.


@Mattias
What is the 48bit value for Maroon (#800000)?  R = $8000 or R = $8080 and

Within 256-bit precision, you cannot say which one is correct.

You MUST provide a 48 bit definition of Maroon, only then you can decide
which one is correct.

This is what Mattias is trying to say. Normal 256-bit colors correspond
to a single type. 48-bit colors correspond to double type.

You cannot say anything sensible about double values if your initial
definition is based on a single value.

assuming all the other values are $0000


As defined by fpImage unit.

 colMaroon     : TFPColor = (Red: $8000; Green: $0000; Blue: $0000; Alpha:
alphaOpaque);


This is *incorrect*. It should be:

 colMaroon     : TFPColor = (Red: $8080; Green: $0000; Blue: $0000; Alpha:
alphaOpaque);

This is not so.

Both definitions are - within the 256-bit color plane - 100% equivalent.
Even the following would be maroon in the 256-bit color plane.

  colMaroon     : TFPColor = (Red: $80FF; Green: $0000; Blue: $0000; Alpha: 
alphaOpaque);

Compare:
1.2 and 1.0 are, when considered with 0 decimal precision, the same value.

Michael.
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to