0030969: Coding Rules - refactor Quantity_Color.cxx color table definition
authorkgv <kgv@opencascade.com>
Mon, 16 Sep 2019 20:06:38 +0000 (23:06 +0300)
committerapn <apn@opencascade.com>
Tue, 22 Oct 2019 12:15:51 +0000 (15:15 +0300)
commitaaf8d6a98d5aa23513bbb7f0e8528764e1e0ebb4
tree60cee69d7e164de71fe26ae92bee1288295eb1b1
parentb008226203ed49193c60aed10c2846944d77bf9c
0030969: Coding Rules - refactor Quantity_Color.cxx color table definition

The table of named colors has been compressed and moved out
from Quantity_Color.cxx into Quantity_ColorTable.pxx.

Quantity_NameOfColor - grayscale enumeration values have been re-ordered to fix discontinuity.
Duplicating colors has been merged within enumeration:
  CHARTREUSE=CHARTREUSE1, GOLD=GOLD1, GREEN=GREEN1, ORANGE=ORANGE1,
  ORANGERED=ORANGERED1, RED=RED1, TOMATO=TOMATO1, YELLOW=YELLOW1.
Added aliases to several other common colors:
  BLUE=BLUE1, CYAN=CYAN1, LIGHTCYAN=LIGHTCYAN1, MAGENTA=MAGENTA1.

Quantity_Color class definition has been cleaned to follow OCCT coding style.
Quantity_Color now stores NCollection_Vec3<float> as class field instead of separate components.
Removed unused class Quantity_ColorDefinitionError.

New methods Quantity_Color::Convert_LinearRGB_To_sRGB() and Quantity_Color::Convert_sRGB_To_LinearRGB()
converting RGB components from linear to non-linear sRGB colorspace and vice versa.
Image_PixMap::PixelColor() and Image_PixMap::SetPixelColor() methods have been extended
with an optional argument for performing linearization/delinearization of 8-bit sRGB pixel formats.

Draw Harness command AISColor has been corrected to take color name instead of enumeration index.
444 files changed:
samples/tcl/ANC101.tcl
samples/tcl/MBBGehauseRohteil.tcl
samples/tcl/Penrose.tcl
samples/tcl/cpu.tcl
samples/tcl/dimensions.tcl
samples/tcl/logo2019.tcl
samples/tcl/markers.tcl
samples/tcl/materials.tcl
samples/tcl/pencil.tcl
samples/tcl/xde.tcl
src/DPrsStd/DPrsStd_AISPresentationCommands.cxx
src/Image/Image_PixMap.cxx
src/Image/Image_PixMap.hxx
src/QABugs/QABugs_11.cxx
src/Quantity/FILES
src/Quantity/Quantity_Color.cxx
src/Quantity/Quantity_Color.hxx
src/Quantity/Quantity_ColorDefinitionError.hxx [deleted file]
src/Quantity/Quantity_ColorRGBA.hxx
src/Quantity/Quantity_ColorTable.pxx [new file with mode: 0644]
src/Quantity/Quantity_NameOfColor.hxx
src/Quantity/Quantity_TypeOfColor.hxx
tests/3rdparty/fonts/A2
tests/3rdparty/fonts/A3
tests/3rdparty/fonts/A4
tests/3rdparty/fonts/A5
tests/3rdparty/fonts/A6
tests/3rdparty/fonts/A7
tests/3rdparty/fonts/A8
tests/3rdparty/fonts/B1
tests/3rdparty/fonts/B2
tests/3rdparty/fonts/B4
tests/3rdparty/fonts/B5
tests/3rdparty/fonts/B7
tests/bugs/caf/bug1029
tests/bugs/caf/bug1030 [deleted file]
tests/bugs/caf/bug26290_newattribute_1
tests/bugs/caf/bug26290_newattribute_2
tests/bugs/iges/bug25518
tests/bugs/modalg_5/bug24244
tests/bugs/step/bug30856
tests/bugs/vis/bug21747_1
tests/bugs/vis/bug21747_10
tests/bugs/vis/bug21747_11
tests/bugs/vis/bug21747_12
tests/bugs/vis/bug21747_13
tests/bugs/vis/bug21747_14
tests/bugs/vis/bug21747_15
tests/bugs/vis/bug21747_16
tests/bugs/vis/bug21747_17
tests/bugs/vis/bug21747_2
tests/bugs/vis/bug21747_3
tests/bugs/vis/bug21747_4
tests/bugs/vis/bug21747_5
tests/bugs/vis/bug21747_6
tests/bugs/vis/bug21747_7
tests/bugs/vis/bug21747_8
tests/bugs/vis/bug21747_9
tests/bugs/vis/bug22149
tests/bugs/vis/bug22796_1
tests/bugs/vis/bug22796_2
tests/bugs/vis/bug22879
tests/bugs/vis/bug22906
tests/bugs/vis/bug23363
tests/bugs/vis/bug23652
tests/bugs/vis/bug24391
tests/bugs/vis/bug24555
tests/bugs/vis/bug24564
tests/bugs/vis/bug24714
tests/bugs/vis/bug24717
tests/bugs/vis/bug24837_2
tests/bugs/vis/bug24867
tests/bugs/vis/bug24901
tests/bugs/vis/bug25121
tests/bugs/vis/bug25136
tests/bugs/vis/bug25369
tests/bugs/vis/bug25475
tests/bugs/vis/bug25732_1
tests/bugs/vis/bug25732_2
tests/bugs/vis/bug25775
tests/bugs/vis/bug26404
tests/bugs/vis/bug26599
tests/bugs/vis/bug26680
tests/bugs/vis/bug26719_1
tests/bugs/vis/bug26870
tests/bugs/vis/bug26959
tests/bugs/vis/bug27530
tests/bugs/vis/bug27573
tests/bugs/vis/bug27624
tests/bugs/vis/bug27739
tests/bugs/vis/bug27751_capping
tests/bugs/vis/bug27796
tests/bugs/vis/bug27836
tests/bugs/vis/bug27958
tests/bugs/vis/bug28004
tests/bugs/vis/bug28036_1
tests/bugs/vis/bug28036_2
tests/bugs/vis/bug28061
tests/bugs/vis/bug28099_text_core
tests/bugs/vis/bug28127
tests/bugs/vis/bug28361
tests/bugs/vis/bug30076
tests/bugs/vis/bug30630_1
tests/bugs/vis/bug30630_2
tests/bugs/vis/bug30630_3
tests/bugs/vis/bug5990
tests/bugs/vis/bug6897_1
tests/bugs/vis/bug74
tests/bugs/vis/bug85_1
tests/bugs/vis/bug85_2
tests/bugs/xde/bug26216
tests/bugs/xde/bug28641
tests/bugs/xde/bug29436_1
tests/caf/bugs/D2
tests/caf/parse.rules
tests/caf/presentation/B2
tests/caf/presentation/B3
tests/caf/presentation/B4
tests/caf/presentation/C1
tests/caf/presentation/F2
tests/caf/presentation/F3
tests/caf/presentation/F4
tests/caf/presentation/G1
tests/caf/presentation/H1
tests/caf/presentation/H2
tests/caf/presentation/I1
tests/caf/presentation/I2
tests/caf/presentation/J1
tests/caf/presentation/J2
tests/caf/presentation/K1
tests/caf/presentation/K2
tests/de/iges_1/C7
tests/de/iges_1/E1
tests/de/iges_1/G2
tests/de/iges_1/H1
tests/de/iges_1/H5
tests/de/iges_1/H6
tests/de/iges_1/H7
tests/de/iges_1/H8
tests/de/iges_1/H9
tests/de/iges_1/I1
tests/de/iges_1/I2
tests/de/iges_1/I4
tests/de/iges_1/I6
tests/de/iges_1/I8
tests/de/iges_1/J5
tests/de/iges_1/J6
tests/de/iges_1/J7
tests/de/iges_1/J8
tests/de/iges_1/K1
tests/de/iges_1/K3
tests/de/iges_1/K4
tests/de/iges_1/K8
tests/de/iges_1/K9
tests/de/iges_1/L2
tests/de/iges_1/L8
tests/de/iges_1/L9
tests/de/iges_1/M1
tests/de/iges_1/M6
tests/de/iges_1/N1
tests/de/iges_1/N2
tests/de/iges_1/O1
tests/de/iges_1/O4
tests/de/iges_1/O6
tests/de/iges_1/O7
tests/de/iges_1/O8
tests/de/iges_1/O9
tests/de/iges_1/P1
tests/de/iges_1/P2
tests/de/iges_1/P5
tests/de/iges_1/P6
tests/de/iges_1/Q7
tests/de/iges_1/R3
tests/de/iges_1/R4
tests/de/iges_1/R5
tests/de/iges_1/R6
tests/de/iges_1/R7
tests/de/iges_1/R8
tests/de/iges_2/A3
tests/de/iges_2/A5
tests/de/iges_2/A6
tests/de/iges_2/A7
tests/de/iges_2/A8
tests/de/iges_2/A9
tests/de/iges_2/B1
tests/de/iges_2/B2
tests/de/iges_2/B8
tests/de/iges_2/B9
tests/de/iges_2/C1
tests/de/iges_2/C3
tests/de/iges_2/C4
tests/de/iges_2/C5
tests/de/iges_2/C6
tests/de/iges_2/C7
tests/de/iges_2/D1
tests/de/iges_2/D3
tests/de/iges_2/D4
tests/de/iges_2/D7
tests/de/iges_2/D8
tests/de/iges_2/D9
tests/de/iges_2/E3
tests/de/iges_2/E4
tests/de/iges_2/E6
tests/de/iges_2/E7
tests/de/iges_2/E8
tests/de/iges_2/F1
tests/de/iges_2/F2
tests/de/iges_2/F3
tests/de/iges_2/F4
tests/de/iges_2/F5
tests/de/iges_2/F6
tests/de/iges_2/F8
tests/de/iges_2/G2
tests/de/iges_2/G3
tests/de/iges_2/G4
tests/de/iges_2/G5
tests/de/iges_2/G7
tests/de/iges_2/G8
tests/de/iges_2/G9
tests/de/iges_2/H2
tests/de/iges_2/H3
tests/de/iges_2/H4
tests/de/iges_2/H5
tests/de/iges_2/H7
tests/de/iges_2/H8
tests/de/iges_2/H9
tests/de/iges_2/I1
tests/de/iges_2/I2
tests/de/iges_2/I4
tests/de/iges_2/I5
tests/de/iges_2/I6
tests/de/iges_2/I7
tests/de/iges_2/I8
tests/de/iges_2/I9
tests/de/iges_2/J1
tests/de/iges_3/A1
tests/de/iges_3/A2
tests/de/iges_3/A4
tests/de/iges_3/A7
tests/de/iges_3/A8
tests/de/step_1/A5
tests/de/step_1/A6
tests/de/step_1/A7
tests/de/step_1/A8
tests/de/step_1/B4
tests/de/step_1/B6
tests/de/step_1/B7
tests/de/step_1/B8
tests/de/step_1/C1
tests/de/step_1/F5
tests/de/step_1/F7
tests/de/step_1/G5
tests/de/step_1/G6
tests/de/step_1/G7
tests/de/step_1/M3
tests/de/step_1/M4
tests/de/step_1/M5
tests/de/step_1/M6
tests/de/step_1/N4
tests/de/step_1/N5
tests/de/step_1/N6
tests/de/step_1/N7
tests/de/step_1/N8
tests/de/step_1/N9
tests/de/step_1/Q4
tests/de/step_1/Q5
tests/de/step_1/R8
tests/de/step_1/S2
tests/de/step_1/S9
tests/de/step_1/T7
tests/de/step_1/T8
tests/de/step_1/T9
tests/de/step_1/U1
tests/de/step_1/U4
tests/de/step_1/U6
tests/de/step_1/U8
tests/de/step_1/U9
tests/de/step_1/V1
tests/de/step_1/V2
tests/de/step_1/V3
tests/de/step_1/V4
tests/de/step_1/V5
tests/de/step_1/V8
tests/de/step_1/W4
tests/de/step_1/W6
tests/de/step_1/X3
tests/de/step_1/X8
tests/de/step_1/X9
tests/de/step_1/Y2
tests/de/step_1/Z2
tests/de/step_1/Z3
tests/de/step_1/ZB7
tests/de/step_1/ZD8
tests/de/step_1/ZD9
tests/de/step_1/ZE3
tests/de/step_1/ZE5
tests/de/step_1/ZE6
tests/de/step_1/ZE8
tests/de/step_1/ZE9
tests/de/step_1/ZF3
tests/de/step_1/ZF4
tests/de/step_1/ZF5
tests/de/step_1/ZF8
tests/de/step_1/ZF9
tests/de/step_1/ZG3
tests/de/step_1/ZG7
tests/de/step_1/ZG8
tests/de/step_1/ZH2
tests/de/step_1/ZH5
tests/de/step_1/ZH6
tests/de/step_1/ZH8
tests/de/step_1/ZH9
tests/de/step_1/ZI1
tests/de/step_1/ZI4
tests/de/step_1/ZI5
tests/de/step_1/ZM6
tests/de/step_1/ZM7
tests/de/step_1/ZM8
tests/de/step_1/ZM9
tests/de/step_1/ZN2
tests/de/step_1/ZO1
tests/de/step_1/ZO6
tests/de/step_1/ZP5
tests/de/step_1/ZQ2
tests/de/step_1/ZQ4
tests/de/step_1/ZQ5
tests/de/step_1/ZQ6
tests/de/step_1/ZQ9
tests/de/step_1/ZR1
tests/de/step_1/ZR2
tests/de/step_1/ZR4
tests/de/step_1/ZR7
tests/de/step_1/ZR8
tests/de/step_1/ZR9
tests/de/step_1/ZT2
tests/de/step_1/ZT3
tests/de/step_1/ZT6
tests/de/step_1/ZT7
tests/de/step_1/ZT8
tests/de/step_1/ZT9
tests/de/step_1/ZU5
tests/de/step_1/ZU6
tests/de/step_1/ZU8
tests/de/step_1/ZU9
tests/de/step_1/ZV2
tests/de/step_1/ZV3
tests/de/step_1/ZV4
tests/de/step_1/ZV5
tests/de/step_1/ZV7
tests/de/step_1/ZV8
tests/de/step_1/ZV9
tests/de/step_1/ZW1
tests/de/step_1/ZW6
tests/de/step_1/ZY4
tests/de/step_2/A3
tests/de/step_2/A4
tests/de/step_2/A7
tests/de/step_2/C5
tests/de/step_2/C8
tests/de/step_2/D5
tests/de/step_2/E1
tests/de/step_2/E2
tests/de/step_2/E3
tests/de/step_2/E4
tests/de/step_2/F1
tests/de/step_2/F2
tests/de/step_2/F3
tests/de/step_2/H1
tests/de/step_2/H4
tests/de/step_2/H8
tests/de/step_2/J3
tests/de/step_2/J4
tests/de/step_2/J6
tests/de/step_2/J7
tests/de/step_2/K1
tests/de/step_2/K4
tests/de/step_2/K5
tests/de/step_2/K8
tests/de/step_2/L5
tests/de/step_2/L6
tests/de/step_2/M4
tests/de/step_2/S1
tests/de/step_2/S4
tests/de/step_2/T8
tests/de/step_2/U6
tests/de/step_2/U7
tests/de/step_2/X3
tests/de/step_2/X5
tests/de/step_3/B1
tests/de/step_3/B4
tests/de/step_3/C9
tests/de/step_3/E1
tests/de/step_3/E3
tests/de/step_3/E7
tests/de/step_3/E8
tests/de/step_3/F4
tests/de/step_4/A4
tests/de/step_4/A5
tests/de/step_4/C7
tests/de/step_4/D8
tests/de/step_4/E2
tests/de/step_4/E5
tests/de/step_4/F3
tests/de/step_4/G3
tests/de/step_4/G4
tests/de/step_4/H2
tests/de/step_4/H3
tests/de/step_4/H4
tests/de/step_4/H5
tests/de/step_4/H8
tests/de/step_5/A2
tests/de/step_5/A3
tests/de/step_5/A5
tests/de/step_5/B1
tests/de/step_5/B2
tests/de/step_5/B3
tests/de/step_5/B5
tests/de/step_5/B7
tests/demo/draw/bug23745
tests/tools/dfbrowser/A4
tests/v3d/edge/A10
tests/v3d/face/F3
tests/v3d/glsl/clipping1
tests/v3d/glsl/culldist
tests/v3d/glsl/cullsize
tests/v3d/glsl/interior1
tests/v3d/glsl/interior2
tests/v3d/glsl/msaa
tests/v3d/glsl/outline1
tests/v3d/glsl/phong_pos2
tests/v3d/glsl/phong_pos3
tests/v3d/glsl/phong_pos4
tests/v3d/glsl/tiles
tests/v3d/materials/bug24855
tests/v3d/raytrace/bug24130
tests/v3d/raytrace/bug24819
tests/v3d/raytrace/bug25201
tests/v3d/raytrace/bug26617
tests/v3d/raytrace/refraction
tests/v3d/raytrace/textures
tests/v3d/transparency/blend
tests/v3d/viewcube/default
tests/v3d/viewcube/style
tests/xcaf/end